HeadlinesBriefing HeadlinesBriefing.com

Evolución de transacciones ACID en Cassandra 6

Hacker News •
×

Apache Cassandra ha evolucionado de una base de datos NoSQL con consistencia eventual a un sistema totalmente compatible con ACID en su próxima versión 6.0. Este recorrido incluye los lotes atómicos introducidos en 2013, las operaciones de comparación e intercambio (compare-and-swap) de Paxos para una sola partición más tarde ese mismo año, y ahora transacciones estrictamente serializables entre particiones con Accord en la versión aún no publicada de Cassandra 6.

Este artículo explora cada opción transaccional utilizando un clúster de tres nodos con una carga de trabajo contable. La configuración implica instalar Java 21, compilar Cassandra desde la rama cassandra-6.0 y configurar tres nodos con direcciones IP únicas y puertos JMX.

La prueba contable utiliza dos cuentas con saldos iniciales de 1,000 cada una, con escritores concurrentes que generan transferencias entre cuentas. La carga de trabajo prueba cuatro métodos transaccionales: ninguno (predeterminado), actualizaciones BATCH, Transacciones Ligeras (LWT) y actualizaciones de Accord (ACID). Se prueban variantes de lectura-modificación-escritura y escritura a ciegas, junto con escenarios de transferencia entre particiones y dentro de la misma partición.

Un tercer hilo lee continuamente y valida que la suma de los saldos se mantiene en 2,000 durante todas las operaciones concurrentes. La prueba también verifica que los saldos finales de las cuentas coincidan con los valores deterministas esperados para cargas de trabajo de lectura-modificación-escritura.

Entidades clave: Empresas: Apache, Cassandra | Personas: Phil Eaton

Fuente: Hacker News · Resumido por HeadlinesBriefing