ACID: Atomic, Consistent, Isolated, & Durable (Español)

publicado en: Articles | 0

No creo que sea una exageración decir que los datos son bastante importantes. Los datos son especialmente importantes para las organizaciones modernas. De hecho, The Economist fue tan lejos como para decir que los datos han superado al petróleo como el recurso más valioso del mundo, y eso fue en 2017.

uno de los problemas con los datos es la cantidad masiva de datos que deben procesarse diariamente., Hay tantos datos volando por todo el mundo en estos días que tenemos que llegar a un nuevo término solo para expresar la cantidad de datos que hay: big data. Claro, no es el término que suena más impresionante, pero el hecho sigue siendo.

con todo este big data por ahí, las organizaciones están buscando formas de mejorar la forma en que lo gestionan todo desde un punto de vista práctico, computacional y de seguridad. Como dijo Una vez el tío de Spiderman, Ben: «con lo grande viene una gran responsabilidad.»El mejor método que el mundo de TI ha creado para navegar por las complejidades de la gestión de datos es a través del uso de bases de datos.,

¿qué es una base de datos?

Las bases de datos son conjuntos estructurados de datos que se almacenan dentro de las computadoras. A menudo, las bases de datos se almacenan en granjas de servidores completas llenas de computadoras que se hicieron específicamente con el propósito de manejar esos datos y los procesos necesarios para hacer uso de ellos.

Las bases de datos modernas son sistemas tan complejos que los sistemas de gestión han sido diseñados para manejarlos. Estos sistemas de gestión de bases de datos (DBMS) buscan optimizar y administrar el almacenamiento y la recuperación de datos dentro de las bases de datos.,

una de las estrellas que guían a las organizaciones para una gestión exitosa de bases de datos es el enfoque ACID.

¿qué es el ácido?

en el contexto de la informática, ACID (atomicidad, consistencia, aislamiento, durabilidad) es un conjunto de principios rectores que pueden garantizar que las transacciones de bases de datos puedan procesarse de manera confiable. Una transacción de base de datos es cualquier operación realizada dentro de una base de datos, como crear un nuevo registro o actualizar datos dentro de uno.

Los cambios realizados dentro de una base de datos deben realizarse con cuidado para garantizar que los datos dentro no se corrompan., Aplicar las propiedades ácidas a cada modificación de una base de datos es la mejor manera de mantener la precisión y fiabilidad de una base de datos. Veamos cada componente del ácido.

Atomicidad

En el contexto de bases de datos, la atomicidad significa que se comprometen a la totalidad de la transacción se producen o no tener ninguna transacción., Esencialmente, una transacción atómica asegura que cualquier commit que realice finalice la operación completa con éxito o, en casos de pérdida de la conexión en medio de una operación, la base de datos se vuelve a su estado antes de que se inicie la confirmación.

esto es importante para evitar que los bloqueos o interrupciones creen casos en los que la transacción se terminó parcialmente a un estado general desconocido. Si se produce un bloqueo durante una transacción sin atomicidad, no puede saber exactamente qué tan avanzado estaba el proceso antes de que se interrumpiera la transacción., Mediante el uso de atomicidad, se asegura de que toda la transacción se completó correctamente, o nada de eso era.

consistencia

consistencia se refiere al mantenimiento de restricciones de integridad de datos. Una transacción consistente no violará las restricciones de integridad impuestas a los datos por las reglas de la base de datos. La aplicación de la coherencia garantizará que si una base de datos entra en un estado ilegal (si se produce una violación de las restricciones de integridad de datos), el proceso se abortará y los cambios se revertirán a su estado legal anterior.,

otra forma de garantizar la coherencia dentro de una base de datos a lo largo de cada transacción es también haciendo cumplir las restricciones declarativas colocadas en la base de datos. Un ejemplo de restricción declarativa podría ser que todas las cuentas de clientes deben tener un saldo positivo. Si una transacción colocara una cuenta de cliente en un saldo negativo, esa transacción se revertiría. Esto garantiza que los cambios tengan éxito en el mantenimiento de la integridad de los datos o que se cancelen por completo.,

Isolation

las transacciones aisladas se consideran «serializables», lo que significa que cada transacción ocurre en un orden distinto sin que ninguna transacción ocurra en tándem. Cualquier lectura o escritura realizada en la base de datos no se verá afectada por otras lecturas y escrituras de transacciones separadas que ocurran en la misma base de datos. Se crea un orden global con cada transacción en cola para garantizar que las transacciones se completen en su totalidad antes de que comience otra.

esto no significa que dos operaciones no puedan ocurrir al mismo tiempo., Múltiples transacciones pueden ocurrir siempre y cuando esas transacciones no tengan posibilidad de afectar las otras transacciones que ocurren al mismo tiempo. Hacer esto puede tener impactos en la velocidad de las transacciones, ya que puede obligar a muchas operaciones a esperar antes de que puedan iniciar. Sin embargo, esta compensación vale la pena la seguridad de datos adicional proporcionada por el aislamiento.

El aislamiento se puede lograr mediante el uso de una escala móvil de permisividad que va entre lo que se llaman transacciones optimistas y transacciones pesimistas., Un esquema de transacción optimista asume que otras transacciones se completarán sin leer o escribir en el mismo lugar dos veces. Con el esquema optimista, ambas transacciones se cancelarán y se volverán a intentar en el caso de que una transacción golpee el mismo lugar dos veces.

el esquema de transacción pesimista proporciona menos libertad y bloqueará los recursos en el supuesto de que las transacciones afectarán a otras. Esto se traduce en un menor número de abortos y reintentos, pero también significa que las transacciones se ven obligadas a esperar en la fila para su turno con más frecuencia en comparación con el enfoque de transacción optimista., Encontrar un punto dulce entre estos dos ideales es a menudo donde se encuentra el mejor resultado general.

durabilidad

el aspecto final del enfoque ACID para la gestión de bases de datos es la durabilidad. La durabilidad garantiza que los cambios realizados en la base de datos (transacciones) que se confirmen con éxito sobrevivirán de forma permanente, incluso en el caso de fallas del sistema. Esto garantiza que los datos dentro de la base de datos no se corrompan por interrupciones del servicio, bloqueos u otros casos de falla., Esto se logra mediante el uso de registros de cambios a los que se hace referencia cuando se reinician las bases de datos (o partes de la base de datos).

Cuando todos los aspectos del enfoque ACID se reúnen con éxito, las bases de datos se mantienen con la máxima integridad y seguridad de los datos para garantizar que puedan seguir proporcionando valor a la organización. Una base de datos con datos dañados puede presentar problemas costosos debido al enorme énfasis que las organizaciones ponen en sus datos tanto para las operaciones diarias como para el análisis estratégico.,

El uso de propiedades ácidas con su base de datos garantizará que su base de datos continúe entregando datos valiosos a lo largo de las operaciones.

Deja una respuesta

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