¿Qué es ACID en Bases de datos?
Aprender este concepto es muy importante para todo desarrollador, sobretodo si eres backend 🐿️

En este artículo estimado dev, vamos a entender qué significa ACID, seguro lo habrás escuchado, no es muy difícil de entender así que para allá vamos.

ACID es un acrónimo, es decir cada letra representa una palabra, de la misma forma que hace el acrónimo SOLID.

En este caso ACID representa:

  • Atomicity
  • Consistency
  • Isolation
  • Durability

Definición

Es una referencia a las 4 principales propiedades o características que tiene una transacción en bases de datos. Comúnmente también se le define como una característica de la misma base de datos dada su estrecha relación entre transacciones y bases de datos.

En este artículo hablo sobre transacciones exclusivamente, échale un vistazo 😉.

ACID Compliance

En español sería algo así como "Cumplimiento ACID" es una característica de un gestor de bases de datos que indica si cumple o no con estas propiedades en sus transacciones de datos.

ACID no está limitada a bases de datos relacionales, si bien la mayoría de los gestores de bases de datos relacionales cumplen con ACID, no son todos. En el caso de las bases de datos NoSQL algunas sí cumplen con ACID como MongoDB, sin embargo no es lo usual.

En esta página MongoDB te explica sobre este concepto también 👌

Quieres aprender sobre bases de datos relacionales? Entonces este artículo te va a encantar. Y si lo tuyo es aprender SQL este artículo práctico sí que te va a ayudar!

Entendiendo las propiedades una a una

Lo que resta es entonces definir de una forma concisa y sencilla a cada una de las 4 propiedades ACID:

  • Atomicidad (Atomicity): O se completa toda la transacción o no se hace nada. Si algo falla en el proceso se revierte todo hasta llegar exactamente al estado inicial.
  • Consistencia (Consistency): Sólo se llevaran a cabo operaciones que será posible completarlas o dicho de otra forma: Sólo se inicia lo que podrá terminarse.
  • Aislamiento (Isolation): Si múltiples transacciones se ejecutan simultáneamente estas deben ser independientes y no interferir unas con otras.
  • Durabilidad (Durability): Los cambios que una transacción hizo son persistentes y no se deshacen simplemente por algún evento externo inesperado.

En este artículo de geeks for geeks puedes ver ejemplos para cada propiedad ACID, está muy bueno y lo recomiendo si quieres profundizar en el tema. ✌️

Ahora que has aprendido algo nuevo, deja el ordenador y anda con los tuyos y disfruten su tiempo libre, piénsalo 😉

Foto de Jed Villejo en Unsplash

Espero que este artículo te haya gustado y si es así, compártelo con todo tu equipo de ingeniería genio! 🔥

Créditos de la imagen de portada: Foto de Vadim Bogulov en Unsplash

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *