Los servicios en la nube, como iCloud, se apoyan en complejos sistemas de bases de datos que trabajan en segundo plano para almacenar de forma fiable fotos, notas y archivos. Para gestionar cantidades masivas de datos, estos sistemas los dividen en múltiples particiones almacenadas en diferentes servidores. Para garantizar que los datos sobrevivan incluso a fallos catastróficos, los sistemas mantienen múltiples réplicas de cada partición en distintas ubicaciones geográficas y las mantienen sincronizadas de manera transparente.
Apache Cassandra es un sistema de bases de datos de código abierto líder que permite desarrollar servicios en la nube a una escala tan extrema. Sin embargo, hasta ahora, su escalabilidad tenía un precio:Cassandra no podía ejecutar transacciones fuertemente consistentes sobre datos repartidos en múltiples particiones. Esto obligaba a los desarrolladores de aplicaciones a implementar la funcionalidad requerida mediante enfoques ad hoc y propensos a errores. Para hacer frente a este desafío nació Accord: un protocolo distribuido avanzado diseñado y verificado en colaboración por investigadores del Instituto IMDEA Software, Apple y Télécom SudParis. Accord se integrará oficialmente en el próximo lanzamiento de Apache Cassandra 6.0.
Históricamente, los sistemas de bases de datos distribuidas mantenían sincronizadas las diferentes réplicas de datos canalizando todas las transacciones a través de una réplica “líder” destacada. Esto creaba un cuello de botella que aumentaba la latencia del cliente y limitaba la escalabilidad. Accord adopta un enfoque fundamentalmente diferente, convirtiéndose en el primer protocolo distribuido sin líder para sistemas de producción que operan a escala global. Lo que hace que Accord sea particularmente atractivo es que a menudo puede completar transacciones complejas entre múltiples particiones en un solo viaje de red de ida y vuelta (round trip) entre diferentes ubicaciones geográficas.
Las semillas de este avance se encuentran en investigaciones previas realizadas por el grupo del profesor Alexey Gotsman en IMDEA Software. Sobre estas bases teóricas, un equipo internacional —liderado en la parte técnica por Benedict Elliott Smith (Apple) junto con colegas ingenieros, y con la participación de Alexey Gotsman, Fedor Ryabinin (IMDEA Software) y Pierre Sutra (Télécom SudParis)— dio vida al algoritmo.
Sin embargo, diseñar un algoritmo para millones de usuarios es solo la mitad de la batalla: se debe demostrar matemáticamente que es correcto, ya que incluso un fallo menor podría corromper datos a escala global. Aquí es donde los investigadores de IMDEA realizaron varias contribuciones cruciales. En primer lugar, el investigador postdoctoral Fedor Ryabinin escribió una demostración manual de corrección,probando rigurosamente que Accord es seguro. Para garantizar que la demostración no contuviera errores,el equipo utilizó IA para formalizarla automáticamente en el asistente de demostraciones Lean. El investigador en prácticas Alexandre Siret también construyó un modelo formal de Accord en el lenguaje TLA+ y simuló su comportamiento ante escenarios adversarios.
El proyecto se acaba de presentar en la conferencia Community over Code 2026 en Glasgow, la conferencia insignia de la Apache Software Foundation. Durante el evento, el equipo de IMDEA Software ofreció dos ponencias:
Fedor Ryabinin presentó la arquitectura teórica de Accord y explicó cómo supera las limitaciones de los protocolos tradicionales. Alexandre Siret demostró cómo el modelado en TLA+ permitió verificar el protocolo, aumentando así la confianza en su corrección.
La llegada de Accord a Apache Cassandra 6.0 marca un hito al ser el primer despliegue con éxito de un protocolo de transacciones sin líder a escala de producción. En el futuro, el protocolo servirá como base para bases de datos distribuidas más escalables y resilientes.