Demystifying Databases

Nick K.
3 min readMay 3, 2021

--

A database is a place to organize and store information. A database is much like a town. The people in the town are the data, their houses are like the “pages” or documents, and the plot of land the town exists upon is the disk.

Databases have several components which are necessary in order for them to function correctly. All databases involve transactions, actions which perform a unit of work, such as updating or querying data. A transaction represents any change in a database performed in an independent manner. In order to assure that transactions were occurring smoothly Andreas Reuter and Theo Härder coined the acronym “ACID” which outlines the four major guarantees of the transaction paradigm.

Characteristics of ACID

The ACID model outlines a series of properties intended to guarantee the validity of data despite potential mishaps, such as error or power failure.

ACID refers to Atomicity, Consistency, Isolation, Durability.

Atomicity ensures that each transaction is an isolated unit. Each transaction must either succeed or fail completely. If the transaction fails, the database is left unchanged. An atomic system will prevent any updates from occurring partially, which can lead to greater data corruption than simply rejecting the transaction outright.

Consistency confirms that transactions abide by the predefined rules of the database, including constraints, cascades, and triggers. This prevents the transaction from performing an illegal action which could lead to database corruption.

Isolation refers to the visibility of operations to other operations. It prevents adverse concurrent operations from occurring by ensuring correct sequential execution.

Durability simply means that once a transaction has occurred, it is essentially concretized. The data will remain committed to the database regardless of power outage or crash.

DBMS (Database Management System)

Most databases utilize some form of DBMS, which acts an intermediary between the user and the database. This software allows the user to store and retrieve data all while conforming to the ACID standards.

In addition to being an interface by which users can access data, the DBMS provides a layer of abstraction between the physical database and the user or applications. This helps to mitigate challenges with data redundancy, integrity, isolation, and managing data access by separating the logical and physical levels.

Below are some examples of the most popular DBMS currently in use today.

Wrapping It Up

Databases can be extremely complex, but at their core incorporate the four ACID concepts. DBMS provide a way for users to access the database and read/write data. Database systems are increasingly vital given the data collection trajectory we are currently on, hopefully this article helped to distill the function of databases and how they seek to achieve their intended objectives.

--

--