Definición
Un teorema en sistemas distribuidos que establece que, en presencia de particiones de red, un almacén de datos distribuido puede proporcionar a lo sumo dos de estas tres garantías simultáneamente: consistencia (todos los nodos ven los mismos datos al mismo tiempo), disponibilidad (toda petición recibe una respuesta) y tolerancia a particiones (el sistema sigue funcionando pese a pérdida de mensajes o divisiones de red).
Principio
Principio
Bajo redes asincrónicas donde pueden producirse particiones, los diseñadores deben renunciar a una de las dos propiedades coherencia/disponibilidad cuando exista una partición; no es posible garantizar las tres propiedades en todos los escenarios de fallo.
Demostración
Demostración
Si una división de red separa un clúster en dos mitades, un almacén clave‑valor replicado que permanece disponible en ambos lados puede devolver valores divergentes (priorizando disponibilidad y tolerancia a particiones), mientras que un almacén que aplica coherencia estricta puede rechazar peticiones en un lado hasta que la partición se solvente (priorizando coherencia y tolerancia a particiones).
Aplicación incorrecta
Aplicación incorrecta
Interpretar CAP como que ningún sistema puede ofrecer coherencia y disponibilidad en ningún caso; o confundir las categorías CAP con latencia, durabilidad o modelos de consistencia matizados como consistencia eventual o causal.
Consecuencia
Consecuencia
Guía las decisiones de arquitectura para sistemas distribuidos: ante riesgo de partición, elegir CP (consistencia+tolerancia a particiones) para priorizar corrección, o AP (disponibilidad+tolerancia a particiones) para priorizar servir peticiones, mientras que CA sólo es posible cuando no pueden ocurrir particiones o se ignoran.
Inversión
Inversión
En una red perfectamente fiable sin particiones, un sistema puede ser consistente y disponible (CA), pero las redes reales son falibles, así que la tolerancia a particiones debe considerarse en diseños prácticos.
Límite
Límite
La afirmación formal se aplica al modelo que permite particiones de red y a nociones binarias de consistencia y disponibilidad; no cuantifica grados de consistencia ni prescribe mecanismos específicos—los sistemas reales usan consistencia relajada, disponibilidad parcial, reintentos y otras técnicas fuera de la clasificación binaria CAP.
Tensión semántica
Tensión semántica
Existe tensión entre la tricotomía CAP y taxonomías de consistencia más ricas modernas (p. ej. eventual, causal, fuerte) y entre eventos teóricos de partición en el peor caso y el comportamiento operacional típico; los diseñadores deben traducir las decisiones CAP a requisitos de aplicación y compromisos observables.
Síntesis
Síntesis
El teorema CAP formaliza un compromiso fundamental en el diseño de sistemas distribuidos: cuando las particiones son posibles, no se pueden garantizar simultáneamente consistencia, disponibilidad y tolerancia a particiones, por lo que los arquitectos deben escoger qué garantías priorizar o adoptar modelos intermedios/relajados que equilibren estas propiedades en la práctica.