Estamos preparando el PDF de «Teorema CAP y consistencia». Se descargará automáticamente en cuanto esté listo.
← Lumbre

Bases de Datos NoSQL · 6.º Teorema CAP y consistencia

Portada de Teorema CAP y consistencia

Teorema CAP y consistencia

✦ Cuando la red que une los nodos falla a trozos, una base distribuida no puede ser a la vez totalmente consistente, siempre disponible e inmune a particiones: el teorema CAP obliga a ceder en algo, y el trabajo del diseñador es decidir qué cede con criterio · Bases de Datos…

Roadwise Consulting

Firmado y verificado · Biblioteca UNIV

Objetivo: Razonar el reparto entre consistencia, disponibilidad y tolerancia a particiones para elegir el modo de una base de datos distribuida según el caso de uso.

9 min Bases de Datos NoSQL · Bases de Datos 18–30 años
Más
Teorema CAP y consistencia

Herramientas de la lección

◉ Entrar a La Matrix Sorpréndeme

Sobre este contenido

Ir a

Volver a Bases de Datos NoSQL · 6.º semestre Cursos Explorar Mi cuenta Salir del modo estudio

Teorema CAP y consistencia

Teorema CAP: explicación con ejemplos
Vídeo en español que explica el reparto entre consistencia, disponibilidad y partición con analogías.

Las tres letras

Consistencia significa que toda lectura ve lo último escrito, como si hubiera una única copia de la verdad. Disponibilidad promete que toda petición recibe respuesta, sin colgarse. Tolerancia a particiones admite que el enlace entre nodos falle y aun así el sistema siga operando.

Por qué el reparto

Una partición separa los nodos en islas que dejan de hablarse. Si insistes en consistencia, las islas no pueden confirmar escrituras y deben rechazar peticiones: pierdes disponibilidad. Si insistes en responder siempre, cada isla sigue aceptando cambios por su cuenta y divergen: pierdes consistencia.

CP frente a AP

Los sistemas CP priorizan la coherencia y se muestran reacios bajo partición; encajan en contabilidad o reservas donde un dato contradictorio es inaceptable. Los AP siguen sirviendo y reconcilian después; valen para comentarios o carritos donde perder una actualización molesta menos que un error en pantalla.

Un triángulo de tres nodos de colores unidos por aristas firmes; una grieta lo parte por la mitad y la arista que la cruza se dibuja punteada y desvaída.
Bajo una partición de red —la grieta— el triángulo no puede mantener sus tres promesas a la vez: una arista tiene que aflojarse y el diseñador decide cuál.

Consistencia eventual

Entre los extremos hay gradaciones. La consistencia eventual admite lecturas algo desfasadas que convergen cuando el sistema se estabiliza, y se refuerza con garantías intermedias según se necesite.

Qué elegir

  • Analiza el coste de un dato erróneo frente al coste de no responder.
  • Mide la probabilidad real de partición en tu topología de red.
  • Recuerda que sin particiones puedes tener consistencia y disponibilidad a la vez.

El matiz del consenso

CAP habla del comportamiento bajo partición, no del rendimiento en el día a día: en condiciones normales la mayoría de sistemas ofrecen ambas cosas. La decisión real es qué promesa sostienes cuando la red falla, porque en ese instante no hay tercera vía.

Latencia y coherencia

Incluso sin partición, replicar lejos añade retardo: confirmar en todos los nodos cuesta tiempo. Muchas decisiones de consistencia son en el fondo decisiones de latencia aceptable para el usuario.

Errores frecuentes

  • Creer que CAP prohíbe consistencia y disponibilidad para siempre, y no solo durante la partición.
  • Etiquetar un sistema como CP o AP como si fuera una identidad fija en vez de una decisión de configuración.
  • Ignorar que la mayoría de los sistemas reales permiten graduar la garantía petición a petición.

Ejemplo resuelto: elegir modo para un carrito de compras

Un comercio electrónico reparte su catálogo y carritos en varios nodos y debe fijar su promesa. El razonamiento:

  1. Identificar la operación: añadir y leer artículos del carrito, con datos que admiten desfases breves.
  2. Valorar el riesgo: un carrito algo desactualizado molesta poco; una página que no responde, mucho.
  3. Sostener la promesa: disponibilidad por encima de consistencia fuerte durante una partición.
  4. Configurar el almacén como AP, con reconciliación posterior de los duplicados.
  5. Vigilar la excepción: el momento del pago sí exige comprobación consistente de stock.

¿Para qué sirve en la realidad?

Todo servicio con nodos en varias regiones —redes sociales, carritos, sesiones, cuotas de marcador— vive el dilema de CAP a diario: decidir por operación qué cede cuando la red parte evita sorpresas peores, del saldo duplicado al botón que no responde.

Durante una partición de red, un sistema que decide seguir aceptando lecturas y escrituras en cada isla aunque puedan divergir está priorizando:

CAP afirma que en ausencia de particiones es imposible tener a la vez consistencia y disponibilidad.

CAP

C significa que...
toda lectura ve lo último escrito
A promete que...
toda petición recibe respuesta
P admite que...
el enlace entre nodos puede fallar
Un sistema CP bajo partición tiende a...
rechazar peticiones
Perder consistencia y converger después se llama...
consistencia eventual

Toca una tarjeta para ver la respuesta.

Ordena los pasos del razonamiento al elegir el modo de una base distribuida:

Arrastra cada ficha a su categoría (o tócala y luego toca la categoría). También puedes usar el teclado.

Une cada letra del trilema con su promesa.

      No se puede todo, siempre

      • Teorema CAP
        • Consistencia
          • una sola verdad
            • rechazar si dudas
            • Disponibilidad
              • responder siempre
                • aceptar desfase
                • Partición
                  • la que dispara el dilema
                    • rara pero inevitable
                    • Decisión
                      • CP contabilidad
                        • AP carritos y likes

                      Un cajero reparte saldo entre dos oficinas que dejan de comunicarse y ambas permiten retirar. ¿CP o AP? ¿Qué decides y qué le explicas al cliente que se queda sin respuesta?

                      Tu texto se guarda sólo en este dispositivo.

                      Las respuestas y tu progreso se guardan sólo en este dispositivo. Contenido firmado por su autoría mediante Lumbre.
                      Más sobre esta lección
                      Explora temas relacionados

                      Conceptos

                      Comentarios

                      Inicia sesión para comentar.

                      Todavía no hay comentarios. Sé la primera persona en opinar.