Informatics Practices · Ch 6 — Database Concepts
Database Management System
Database Management System
Each limitation of the file system traces back to one root: files hold data but do not relate or manage it. The remedy is to store the data in a database, where the data items are logically related to one another. Organising related data together in a database lets it be managed in an efficient and easy way — the redundancy, inconsistency, isolation and access-control problems of separate files stop being the user's burden.
What a DBMS is
A database management system (DBMS) — database system, in short — is software used to create and manage databases. Through a DBMS, users can:
- create a database,
- store data in it,
- manage, update or modify that data, and
- retrieve data from it — either directly as users or through application programs.
Well-known DBMS software includes both open source and commercial products: MySQL, Oracle, PostgreSQL, SQL Server, Microsoft Access and MongoDB.
Abstraction — hiding the storage details
A database system deliberately hides certain details of how the data is actually stored and maintained on the machine. What the user works with is an abstract view of the data: a clean, logical picture, free of storage-level mechanics. This is a direct answer to the data-dependence problem of files, where every program had to know the physical structure of the data it read.
The DBMS comes with a set of programs through which users or other programs can access, modify and retrieve the stored data. In this way the DBMS acts as an interface standing between the database on one side and the end users or application programs on the other — nothing touches the stored data except through it.
Two operations deserve their own names:
- Querying — retrieving data from a database by issuing special types of commands to the DBMS.
- Beyond changing the data, users can also modify the structure of the database itself through the DBMS — something a file system made painful, since restructuring a file broke every program that used it.
Keep the two layers distinct: the database is the organised collection of logically related data; the DBMS is the software that creates it, guards it, and serves as the doorway to it.
Databases in real life
Databases are used across a wide range of fields. Some representative applications and the data their databases maintain:
| Application | Database maintains data about |
|---|---|
| Banking | customer information, account details, loan details, transaction details, etc. |
| Crop Loan | kisan credit card data, farmer's personal data, land area and cultivation data, loan history, repayment data, etc. |
| Application | Database to maintain data about |
|---|---|
| Banking | customer information, account details, loan details, transaction details, etc. |
| Crop Loan | kisan credit card data, farmer’s personal data, land area and cultivation data, loan history, repayment data, etc. |
| Inventory Management | product details, customer information, order details, delivery data, etc. |
| Organisation Resource Management | employee records, salary details, department information, branch locations, etc. |