I Redis refererer partisjonering til å dele opp data i flere forekomster. Dette betyr at hver Redis holder en del av hele datasettet ditt. Det er en praktisk funksjon, spesielt når du arbeider med store datasett.
La oss se på forskjellige typer partisjonering i Redis og kostnadene og fordelene ved hver.
Typer redis partisjonering
Det er to partisjoneringsmekanismer i Redis:
Rangpartisjonering
Den beste måten å forklare partisjonering er å bruke en analogi. Anta at du har fire Redis -forekomster: R0, R1, R2 og R3. Anta også at du må lagre nøkler i brukerformatet: [ID].
Du kan bruke Range Partitioning for å dele opp data i de tilgjengelige Redis -forekomstene.
I rekkevidde partisjonering kartlegger du en del av dataene dine i en bestemt forekomst. For eksempel kan du ta nøklene fra brukeren: [id - id] og kartlegge den til forekomst R0. Forekomst R1 kan holde undergruppen av nøkler fra bruker [id - id] og så videre.
Dette er den enkleste og mest anvendelige formen for partisjonering i Redis. Imidlertid gir det en begrensning.
Rangepartisjonering krever en tabell som kartlegger et spesifikt område til den tilsvarende klyngen.
Kartleggingstabellen krever å bli administrert og brukt for hver partisjonert datatype.
Hash -partisjonering
Det andre alternativet til rekkevidde partisjonering er hash -partisjonering. Redis bruker en hashingfunksjon for å konvertere en nøkkel til et tall i denne partisjoneringsmetoden.
Hvis vi for eksempel har et nøkkel "faktum", kan vi konvertere det til et tall ved hjelp av en hashfunksjon som CRC-16.
Dette skal returnere nummeret som 8167.
Redis bruker deretter en moduloperasjon på nummeret og returnerer resultatet fra 0 til 3.
For eksempel:
8167 % 2Ovennevnte operasjon skal returnere 1. Redis bruker deretter denne verdien for å bestemme hvilken klynge nøkkelen skal lagres i. I vårt eksempel lagres nøkkel "faktum" i forekomsten R1.
MERK: Dette er ikke hvordan hasingoperasjon utføres i Redis. Ovennevnte er bare en analogi.
Fordeler med partisjonering.
Ulemper ved partisjonering
Konklusjon
I denne guiden oppdaget du den forskjellige mekanismen for Redis -partisjonering. Sjekk dokumentasjonen for å lære mer.