In Redis, il partizionamento si riferisce alla divisione dei dati in più istanze. Ciò significa che ogni Redis detiene una sezione dell'intero set di dati. È una funzionalità utile, soprattutto quando si tratta di set di dati di grandi dimensioni.
Vediamo vari tipi di partizionamento in Redis e i costi e i benefici di ciascuno.
Tipi di partizionamento Redis
Ci sono due meccanismi di partizionamento in Redis:
Rang Partitioning
Il modo migliore per spiegare il partizionamento è usare un'analogia. Supponiamo che tu abbia quattro istanze Redis: R0, R1, R2 e R3. Inoltre, supponiamo che tu debba archiviare le chiavi nel formato dell'utente: [ID].
È possibile utilizzare il partizionamento della gamma per dividere i dati nelle istanze Redis disponibili.
Nel partizionamento dell'intervallo, mappini una sezione dei tuoi dati in un'istanza specifica. Ad esempio, è possibile prendere le chiavi dall'utente: [ID - ID] e mapparlo all'istanza R0. L'istanza R1 può contenere il sottoinsieme delle chiavi dall'utente [ID - ID] e così via.
Questa è la forma più semplice e applicabile di partizionamento in Redis. Tuttavia, fornisce una limitazione.
Il partizionamento dell'intervallo richiede una tabella che mappa un intervallo specifico per il suo cluster corrispondente.
La tabella di mappatura richiede di essere gestita e applicata per ogni tipo di dati partizionato.
Hash Partitioning
La seconda alternativa al partizionamento della gamma è il partizionamento di hash. Redis utilizza una funzione di hashing per convertire una chiave in un numero in questo metodo di partizionamento.
Ad esempio, se abbiamo un "fatto" chiave, possiamo convertirlo in un numero usando una funzione di hashing come CRC-16.
Questo dovrebbe restituire il numero come 8167.
Redis applica quindi un'operazione di modulo al numero e restituisce il risultato da 0 a 3.
Per esempio:
8167 % 2L'operazione di cui sopra dovrebbe restituire 1. Redis quindi utilizza questo valore per determinare in quale cluster la chiave dovrebbe essere memorizzata. Nel nostro esempio, il "fatto" chiave è archiviato nell'istanza R1.
NOTA: Non è così che l'operazione di hashing viene eseguita in Redis. Quanto sopra è solo un'analogia.
Vantaggi del partizionamento.
Svantaggi del partizionamento
Conclusione
In questa guida, hai scoperto i vari meccanismo per il partizionamento di Redis. Controlla la documentazione per saperne di più.