ACID in DBMS

In computer science, ACID is a set of properties of database transactions (symbolizes a unit of work1), intended to guarantee data validity despite errors, power failures, and other mishaps2.

  • Atomicity
  • Consistency
  • Isolation
  • Durability


What is DBMS3?

A database management system (DBMS) is software for creating and managing databases.
A DBMS enables end users to create, protect, read, update, and delete data in a database. It also manages security, data integrity, and concurrency for databases.

What do these principles mean4?

Atomicity

It guarantees that all the commands that make up a transaction are treated as a single unit and either succeed or fail together. This is important in the event of a system failure or power outage, in that if a transaction isn’t completely processed, it will be discarded, and the database will maintain its data integrity.

Consistency

It guarantees that changes made within a transaction are populated across the database system (e.g., nodes) and are in alignment with DBMS constraints. If data consistency is going to be negatively impacted by a transaction in an inconsistent state, the entire transaction will fail.

Isolation

Each transaction is isolated from the other transactions to prevent data conflicts. This also helps database operations with managing multiple entries and multi-level transactions.
For example, if two users are trying to modify the same data (or even the same transaction), the DBMS uses a mechanism called a lock manager to suspend other users until the changes being made by the first user are complete.

Durability

Guarantees that once the transaction completes and changes are written to the database, they are persisted. This ensures that data within the system will persist even in the case of system failures like crashes or power outages.
The concept of durability is a key element in data reliability.


Sources:

  1. https://en.wikipedia.org/wiki/Database_transaction ↩︎
  2. https://en.wikipedia.org/wiki/ACID ↩︎
  3. https://www.techtarget.com/searchdatamanagement/definition/database-management-system ↩︎
  4. https://www.mongodb.com/resources/basics/databases/acid-transactions ↩︎

Related posts