stringtranslate.com

Coherencia (sistemas de bases de datos)

En los sistemas de bases de datos , la consistencia (o corrección ) se refiere al requisito de que cualquier transacción de base de datos dada debe cambiar los datos afectados solo de las formas permitidas. Todos los datos escritos en la base de datos deben ser válidos de acuerdo con todas las reglas definidas, incluidas las restricciones , las cascadas , los disparadores y cualquier combinación de las mismas. Esto no garantiza la corrección de la transacción en todas las formas que el programador de la aplicación podría haber deseado (eso es responsabilidad del código a nivel de aplicación), sino simplemente que cualquier error de programación no puede resultar en la violación de ninguna restricción de base de datos definida. [1]

En un sistema distribuido, haciendo referencia al teorema CAP , la consistencia también puede entenderse como que después de una escritura, actualización o eliminación exitosa de un registro, cualquier solicitud de lectura recibe inmediatamente el último valor del registro.

Como garantía de ACID

La coherencia es una de las cuatro garantías que definen las transacciones ACID ; sin embargo, existe una ambigüedad significativa sobre la naturaleza de esta garantía. Se define de diversas maneras:

Como estas diversas definiciones no son mutuamente excluyentes, es posible diseñar un sistema que garantice la "consistencia" en todos los sentidos de la palabra, como lo hacen posiblemente la mayoría de los sistemas de gestión de bases de datos relacionales de uso común en la actualidad.

Como compensación de la PAC

El teorema CAP se basa en tres disyuntivas, una de las cuales es la "consistencia atómica" (abreviada como "consistencia" por el acrónimo), sobre la cual los autores señalan: "Discutir la consistencia atómica es algo diferente a hablar sobre una base de datos ACID, ya que la consistencia de la base de datos se refiere a las transacciones, mientras que la consistencia atómica se refiere solo a una propiedad de una secuencia de operación de solicitud/respuesta única. Y tiene un significado diferente al de Atómico en ACID, ya que subsume las nociones de base de datos tanto de Atómico como de Consistente". [7] En el teorema CAP, solo puede tener dos de las siguientes tres propiedades: consistencia, disponibilidad o tolerancia a la partición. Por lo tanto, es posible que deba haber un equilibrio entre la consistencia en algunos sistemas de bases de datos.

Véase también

Referencias

  1. ^ CJ Date, "SQL y teoría relacional: cómo escribir código SQL preciso, segunda edición", O'reilly Media, Inc. , 2012, pág. 180.
  2. ^ Haerder, T; Reuter, A. (diciembre de 1983). "Principios de recuperación de bases de datos orientadas a transacciones" (PDF) . Computing Surveys . 15 (4): 287–317. doi :10.1145/289.291. S2CID  207235758. Archivado desde el original (PDF) el 7 de septiembre de 2017.
  3. ^ Mike Chapple. "El modelo ACID". Acerca de . Archivado desde el original el 2016-12-29 . Consultado el 2014-07-23 .
  4. ^ "Propiedades del ÁCIDO".
  5. ^ Cory Janssen. "¿Qué es ACID en las bases de datos? - Definición de Techopedia". Techopedia.com .
  6. ^ "ISO/IEC 10026-1:1998 - Tecnología de la información - Interconexión de sistemas abiertos - Procesamiento de transacciones distribuidas - Parte 1: Modelo OSI TP".
  7. ^ ab "Conjetura de Brewer y viabilidad de servicios web consistentes, disponibles y tolerantes a particiones" (PDF) . Archivado desde el original (PDF) el 29 de junio de 2019.
  8. ^ Ports, DRK; Clements, AT; Zhang, I.; Madden, S.; Liskov, B. "Consistencia transaccional y gestión automática en un caché de datos de aplicación" (PDF) . Con Csail .