Ir al contenido
  1. Posts/

Marmot – SQLite Distribuido con Interfaz MySQL

··251 palabras·2 mins·

🐿️ Marmot v2 — SQLite distribuido con interfaz MySQL

¿Qué pasa si podés usar SQLite en un clúster distribuido, sin un nodo primario, y conectarte con cualquier cliente MySQL? Eso es exactamente lo que propone Marmot v2.

🏗️ ¿Qué es Marmot? Un sistema de replicación de SQLite leaderless, basado en protocolo gossip. Sin elección de líder, sin punto único de fallo.

Características clave:

  • 🔄 Sin líder: cualquier nodo acepta escrituras
  • 🐬 Compatible con MySQL: conectate con DBeaver, MySQL Workbench o el cliente mysql
  • 🔒 Transacciones distribuidas: estilo Percolator con detección de conflictos
  • 📡 Replicación CDC: captura cambios a nivel de fila (no SQL replay)
  • 📤 CDC Publisher: exporta eventos en formato Debezium a Kafka o NATS

🆚 vs. rqlite / dqlite / LiteFS:

  • ❌ Ellos requieren un nodo primario para escrituras
  • ✅ Marmot permite escribir en cualquier nodo
  • ❌ Usan Raft (elección de líder)
  • ✅ Marmot usa gossip protocol (sin líder)

💡 Explicación en pocas palabras

Imaginá Google Sheets: podés editar desde cualquier pestaña al mismo tiempo sin que haya un “dueño” de la hoja. Marmot hace algo similar para SQLite — cualquier servidor del clúster puede recibir escrituras, y los cambios se propagan automáticamente al resto. Lo diferente es que usa el protocolo MySQL, así que podés conectarte con las herramientas que ya conocés.

Más información en el link 👇

También publicado en LinkedIn.
Juan Pedro Bretti Mandarano
Autor
Juan Pedro Bretti Mandarano