Why use a database?

Jose Simpton

Why databases are useful and when they are used.

Databases are useful in many different scenarios for storing data. It is typical to use a database when different sets of data needs to be linked together, such as:

Pupils in a school and their grades

Customer records and sales information

Patients’ and doctors’ records

Transactions between different bank accounts

Taxpayers and income tax payments

The three main advantages that databases have over other, simpler data storage systems (such as text files and spreadsheets) are access, integrity, and security.

Access

Access is about making data available to users.

Databases support good data access because:

Large volumes of data can be stored in one place

Multiple users can read and modify the data at the same time

Databases are searchable and sortable, so the data you need can be found quick and easily

The data structure is extendable and can be modified as requirements change

Integrity

Databases can ensure that the data contained within them is correct, or has integrity.

To ensure the integrity of a database, each change or transaction must conform to a set of rules known as ACID:

Atomicity: when changing data within a database, if any part of the change fails, the whole change will fail and the data will remain as it was before the change was made; this prevents partial records being created

Consistency: before data can be changed in a database, it must be validated against a set of rules

Isolation: databases allow multiple changes at the same time, but each change is isolated from others

Durability: once a change has been made, the data is safe, even in the event of system failure

In addition, databases will have mechanisms for backup, distribution, and redundancy, to ensure data is not lost.

Security

While access to text files or spreadsheets can be secured, once someone has access to a file, they have access to all data within that file. Databases can be made very secure, and that includes the ability to have access rights to specific parts of the database and not others.

Databases allow access to be controlled, allowing users to have different privileges: for example, some users may be able to read data, but not to write it.

Data can also be segmented so that users can access only certain parts: for example, a user may be able to read an employee’s name and address but not their salary information.

What other uses for a database can you think of? Share your thoughts in the comments.

In the next step, you will explore an example relational database and look at the data contained within it.

Discussion

Consider the statements below and add your answers to the comments section.