In Search of an Understandable Consensus Algorithm — Ongaro & Ousterhout (2014)
En busca de un algoritmo de consenso comprensible — Ongaro & Ousterhout (2014)
Consenso para humanos
Paxos fue durante décadas el algoritmo canónico de consenso distribuido, pero tenía un problema fundamental: casi nadie lo entendía bien. La descripción original de Lamport era notoriamente difícil de seguir, y las implementaciones prácticas se desviaban tanto del paper que se convertían en "Paxos" solo de nombre. Diego Ongaro y John Ousterhout decidieron que la comprensibilidad debía ser un objetivo de diseño de primera clase y crearon Raft.
Raft descompone el problema de consenso en tres subproblemas relativamente independientes:
- Elección de líder: un nodo es elegido como líder y se encarga de gestionar el log replicado
- Replicación de log: el líder acepta entradas de los clientes y las replica a los demás nodos
- Seguridad: garantías de que si un nodo aplicó una entrada en un índice dado, ningún otro nodo aplicará una entrada diferente en ese mismo índice
Esta descomposición hace que cada parte sea comprensible de forma aislada. El paper incluyó un estudio con estudiantes de Stanford que demostró que Raft era significativamente más fácil de entender que Paxos. Hoy, Raft es el motor de consenso detrás de etcd, CockroachDB, Consul y docenas de sistemas de producción críticos. La lección más valiosa del paper no es técnica sino metodológica: en ingeniería de sistemas, la claridad no es un lujo — es un requisito.
Paper original: https://raft.github.io/raft.pdf
Newsletter
Subscribite al Newsletter
Un email semanal con un resumen de los últimos artículos.
También en Magacín
El sistema de archivos de Google — Ghemawat, Gobioff & Leung (2003)
Traducción al español de 'The Google File System' (Ghemawat, Gobioff & Leung, 2003). El sistema de archivos distribuido que hizo posible indexar internet. Diseñado para fallar: asume que los discos se rompen y sigue funcionando igual.
MapReduce: Procesamiento de datos simplificado en grandes clústeres — Dean & Ghemawat (2004)
Traducción al español de 'MapReduce: Simplified Data Processing on Large Clusters' (Dean & Ghemawat, 2004). El paper de Google que definió cómo procesar datos a escala. Veinte años después, su modelo mental sigue siendo la base de todo sistema distribuido.
Una arquitectura de sistemas ciberfísicos para sistemas de fabricación basados en Industria 4.0 — Lee, Bagheri y Kao (2015)
Traducción al español del paper seminal sobre sistemas ciberfísicos e Industria 4.0 (Lee, Bagheri & Kao, 2015). Define la arquitectura de 5 niveles (5C) para implementar CPS en manufactura inteligente. El texto fundacional de Industry 4.0 en español.