2011-01-23 8 views
7

Où sont les limites du compactage SSTables (majeur et mineur) et quand il devient inefficace?Combien de données par nœud dans le cluster Cassandra?

Si j'ai un couple de compactage majeur de 500G SSTables et mon SSTable final sera plus de 1TB - sera-t-il efficace pour un nœud de "réécrire" ce grand ensemble de données?

Cela peut prendre environ un jour pour le disque dur et nécessite un espace de taille double, donc existe-t-il des bonnes pratiques pour cela?

Répondre

9

1 TB est une limite raisonnable à la quantité de données d'un seul nœud peut gérer, mais en réalité, un nœud est pas du tout limité par la taille des données, seul le taux des opérations.

Un nœud peut avoir seulement 80 Go de données sur, mais si vous la livre absolument avec lit au hasard et il n'a pas beaucoup de RAM, il pourrait même ne pas être en mesure de gérer ce nombre de demandes à taux raisonnable. De même, un nœud peut avoir 10 To de données, mais si vous en lisez rarement, ou si vous avez une petite partie de vos données qui est chaude (afin qu'elle puisse être efficacement mise en cache), tout ira bien.

compaction est certainement un problème à être au courant quand vous avez une grande quantité de données sur un nœud, mais il y a quelques choses à garder à l'esprit:

d'abord, les « plus grands » tassements, ceux où le résultat est un seul énorme SSTable, arrive rarement, d'autant plus que la quantité de données sur votre noeud augmente. (Le nombre de compactions mineures qui doivent se produire avant qu'un compactage de niveau supérieur se produise augmente exponentiellement du nombre de compactions de niveau supérieur que vous avez déjà effectuées.)

Deuxièmement, votre noeud pourra toujours traiter les requêtes, les lectures sera juste plus lent. Troisièmement, si votre facteur de réplication est supérieur à 1 et que vous ne lisez pas au niveau de cohérence ALL, les autres réplicas pourront répondre rapidement aux demandes de lecture, vous ne devriez donc pas voir une grande différence de latence de la part d'un client la perspective.

Enfin, il existe plans to improve the compaction strategy qui peut aider avec certains ensembles de données plus volumineux.

+2

J'ajouterai que si vous avez TB de données vous ne faites probablement pas beaucoup d'écrasements, auquel cas plusieurs sstables ne vont même pas ralentir les lectures à cause des filtres bloom. – jbellis

Questions connexes