Cassandra · Lección 08
¿Cómo procesa Cassandra una escritura?
Se anexa al commit log (durabilidad, secuencial) y se aplica a la memtable en memoria; cuando esta se llena se vuelca como SSTable inmutable y la compactación fusiona SSTables; no hay actualización en sitio, así que las escrituras son rápidas y, ante versiones distintas de una celda, gana la de mayor timestamp, por lo que los relojes deben estar sincronizados
Las SSTables se modifican directamente con cada actualización, y la memtable solo se usa para acelerar las lecturas recientes
Cada escritura localiza la fila en disco y la modifica en su sitio, por eso las escrituras de Cassandra son más lentas que las lecturas
En caso de conflicto entre dos versiones, Cassandra gana siempre la que llegó primero al nodo, sin tener en cuenta ningún timestamp
Cassandra · Lección 08
Completa el código
Los datos se vuelcan de la memtable a una
Revisa: SSTable inmutable.
Cassandra · Lección 08
¿Por qué la sincronización de relojes (NTP) importa en Cassandra?
Pista: la versión con mayor timestamp gana, así que un reloj desfasado hace que una escritura antigua pise a una más reciente; los timestamps los asigna el coordinador o el cliente y un desfase puede provocar pérdida aparente de escrituras.
✓
¡Lección completada!
La ruta de escritura — commit log, memtable y SSTables
0
XP ganado
3
Vidas restantes