2011-01-23 9 views
7

¿Dónde están los límites de la compactación de SSTables (mayor y menor) y cuándo se vuelve ineficaz?¿Cuantos datos por nodo se agrupan en Cassandra?

Si tengo un gran par de compactación de 500G SSTables y mi SSTable final será de más de 1TB, ¿será efectivo para un nodo "reescribir" este gran conjunto de datos?

Esto puede tomar más o menos un día para el disco duro y necesita espacio de doble tamaño, entonces ¿hay mejores prácticas para esto?

Respuesta

9

1 TB es un límite razonable de la cantidad de datos de un único nodo puede manejar, pero en realidad, un nodo no está en absoluto limitada por el tamaño de los datos, sólo la tasa de las operaciones.

Un nodo puede tener solo 80 GB de datos, pero si lo libras absolutamente con lecturas aleatorias y no tiene mucha RAM, puede que ni siquiera sea capaz de manejar ese número de solicitudes en un precio razonable. De manera similar, un nodo puede tener 10 TB de datos, pero si raramente lees de él, o si tienes una pequeña porción de tus datos que está caliente (para que pueda ser almacenada efectivamente en caché), funcionará bien.

compactación sin duda es una cuestión a tener en cuenta cuando se tiene una gran cantidad de datos en un nodo, pero hay algunas cosas a tener en cuenta:

En primer lugar, el "mayor" compactadoras generalmente, aquellos en los que el resultado es un único SSTable enorme, que ocurre con poca frecuencia, incluso más a medida que aumenta la cantidad de datos en su nodo. (El número de compactaciones menores que deben ocurrir antes de que ocurra una compactación de alto nivel aumenta exponencialmente según la cantidad de compactaciones de nivel superior que ya haya realizado).

En segundo lugar, su nodo podrá seguir atendiendo las solicitudes, lee solo será más lento.

En tercer lugar, si su factor de replicación es superior a 1 y no está leyendo en el nivel de consistencia ALL, otras réplicas podrán responder rápidamente a las solicitudes de lectura, por lo que no debería ver una gran diferencia en la latencia de un cliente perspectiva.

Por último, hay plans to improve the compaction strategy que pueden ayudar con algunos conjuntos de datos más grandes.

+2

Yo agregaría que si tiene TB de datos, probablemente no esté haciendo muchas sobreescrituras, en cuyo caso varias inestabilidades ni siquiera disminuirán la lectura debido a los filtros de floración. – jbellis

Cuestiones relacionadas