2011-01-23 23 views
7

Dove sono i limiti della compattazione SST (maggiore e minore) e quando diventa inefficace?Quanti dati per nodo nel cluster Cassandra?

Se ho una coppia di compattazione maggiore di 500G SSTables e il mio ultimo SSTable sarà superiore a 1 TB - sarà efficace per un nodo "riscrivere" questo grande set di dati?

Questo può richiedere circa un giorno per l'HDD e richiede uno spazio di dimensioni doppie, quindi ci sono le migliori pratiche per questo?

risposta

9

1 TB è un limite ragionevole quantità di dati di un singolo nodo può gestire, ma in realtà, un nodo non è affatto limitata dalla dimensione dei dati, solo la tasso di operazioni.

Un nodo potrebbe avere solo 80 GB di dati su di esso, ma se si blocca assolutamente con letture casuali e non ha molta RAM, potrebbe non essere nemmeno in grado di gestire quel numero di richieste in un tasso ragionevole. Allo stesso modo, un nodo potrebbe avere 10 TB di dati, ma se ne leggi di rado o se hai una piccola porzione di dati che è calda (in modo che possa essere effettivamente memorizzata nella cache), andrà benissimo.

compattazione è certamente una questione di essere a conoscenza di quando si dispone di una grande quantità di dati su un nodo, ma ci sono alcune cose da tenere a mente:

primo luogo, la "più grande" di compattazione, quelli in cui il risultato è un unico enorme SSTable, si verifica raramente, ancor più quando aumenta la quantità di dati sul tuo nodo. (Il numero di compattazioni minori che devono verificarsi prima che si verifichi una compattazione di livello superiore aumenta esponenzialmente dal numero di compazioni di livello superiore già eseguite.)

In secondo luogo, il nodo sarà ancora in grado di gestire richieste, letture sarà solo più lento.

In terzo luogo, se il fattore di replica è superiore a 1 e non si sta leggendo a livello di coerenza ALL, altre repliche saranno in grado di rispondere rapidamente alle richieste di lettura, quindi non si dovrebbe vedere una grande differenza di latenza da un client prospettiva.

Infine, ci sono plans to improve the compaction strategy che possono aiutare con alcuni set di dati più grandi.

+2

Aggiungo che se si dispone di TB di dati probabilmente non si stanno eseguendo molte sovrascritture, nel qual caso più sstables non rallenteranno nemmeno le letture a causa dei filtri di modifica. – jbellis

Problemi correlati