You are on page 1of 2

ACID MODEL

The ACID model is one of the oldest and most important concepts of database theory. It sets forward
four goals that every database management system must strive to achieve: atomicity, consistency,
isolation and durability. No database that fails to meet any of these four goals can be considered
reliable.
Lets take a moment to examine each one of these characteristics in detail:
Atomicity states that database modifications must follow an all or nothing rule. Each transaction is
said to be atomic. If one part of the transaction fails, the entire transaction fails. It is critical that the
database management system maintain the atomic nature of transactions in spite of any DBMS,
operating system or hardware failure.
Consistency states that only valid data will be written to the database. If, for some reason, a transaction
is executed that violates the databases consistency rules, the entire transaction will be rolled back and
the database will be restored to a state consistent with those rules. On the other hand, if a transaction
successfully executes, it will take the database from one state that is consistent with the rules to
another state that is also consistent with the rules.
Isolation requires that multiple transactions occurring at the same time not impact each others
execution. For example, if Joe issues a transaction against a database at the same time that Mary issues
a different transaction, both transactions should operate on the database in an isolated manner. The
database should either perform Joes entire transaction before executing Marys or vice-versa. This
prevents Joes transaction from reading intermediate data produced as a side effect of part of Marys
transaction that will not eventually be committed to the database. Note that the isolation property does
not ensure which transaction will execute first, merely that they will not interfere with each other.
Durability ensures that any transaction committed to the database will not be lost. Durability is ensured
through the use of database backups and transaction logs that facilitate the restoration of committed
Take a few minutes to review these characteristics and commit them to memory. If you spend any
significant portion of your career working with databases, youll see them again and again. They provide
the basic building blocks of any database transaction model.

Definition - What does Atomicity Consistency Isolation Durability (ACID) mean?


Atomicity Consistency Isolation Durability (ACID) is a concept referring to a database systems four
transaction properties: atomicity, consistency, isolation and durability.

Techopedia explains Atomicity Consistency Isolation Durability (ACID)


A database guarantees the following four properties to ensure database reliability, as follows:
Atomicity: A database follows the all or nothing rule, i.e., the database considers all transaction
operations as one whole unit or atom. Thus, when a database processes a transaction, it is either
fully completed or not executed at all.

Consistency: Ensures that only valid data following all rules and constraints is written in the
database. When a transaction results in invalid data, the database reverts to its previous state,
which abides by all customary rules and constraints.
Isolation: Ensures that transactions are securely and independently processed at the same time
without interference, but it does not ensure the order of transactions. For example, user A withdraws
$100 and user B withdraws $250 from user Zs account, which has a balance of $1000. Since both A
and B draw from Zs account, one of the users is required to wait until the other user transaction is
completed, avoiding inconsistent data. If B is required to wait, then B must wait until As transaction
is completed, and Zs account balance changes to $900. Now, B can withdraw $250 from this $900
balance.
Durability: In the above example, user B may withdraw $100 only after user As transaction is
completed and is updated in the database. If the system fails before As transaction is logged in the
database, A cannot withdraw any money, and Zs account returns to its previous consistent state.