2012-02-13 8 views
6

La configuración predeterminada de Cassandra para GCGraceSeconds es de 10 días.¿Cuáles son las implicaciones de usar un valor bajo de GCGraceSeconds en Cassandra?

Me pregunto por qué este valor predeterminado es tan grande y cuáles serán las implicaciones si este será un número menor, como 60 segundos.

La razón para preguntar es que quiero lograr una "limpieza" más rápida de filas fantasmas que aparecen después de su eliminación. A menudo leo estas filas con algunos escaneos y necesito poner algo de lógica en el cliente para validar que el contenido aún no se ha eliminado.

¿Cómo puede un valor menor de GCGraceSeconds afectar el sistema y cómo se compara con tener este tipo de filas fantasma durante algunos días?

Respuesta

9

GCGraceSeconds pone un límite superior en la cantidad de tiempo que el clúster tuvo para propagar lápidas. Un segundos de gracia de GC bajos significa que si un host no puede contactarse durante ese período y no recibe la lápida sepulcral, un valor eliminado podría "volver de la muerte".

Se recomienda ejecutar la reparación al menos cada GCGraceSeconds, por lo que puede garantizar que la piedra sepulcral se haya replicado. Con un valor muy pequeño para esto, no podrá ejecutar la reparación con la suficiente frecuencia.

+0

Gracias por la buena explicación y asesoramiento :-) – favo

+0

, entonces ¿qué se recomienda GCGracseSeconds para cualquier clúster? Lo leí en algún lado, no se recomienda guardarlo menos de 5 días. –

Cuestiones relacionadas