Photo by benjamin lehman on Unsplash

Database Management System

Mrigank Singh
CodeX
Published in
2 min readApr 13, 2022

--

What is a Database?

A database is a set of interrelated data and a central place where users can search, insert and retrieve specific data efficiently. The data is organized in schemas, tables, rows, columns, etc., to perform operations efficiently. Softwares that are used to manage databases are database management systems. Example: Oracle, MySql, etc.

History of Database and a brief about them

In simpler words, anything we can store interrelated data is a database. The history of DBMS evolved in three phases:-

  • File-Based Systems
  • Relational or SQL DBMS
  • No-SQL DBMS

File-Based Systems

A file-based system allows you to access single files or store data in a single file at a time in a particular location on a desktop. There is a file per table; this file is known as a flat-file. Some disadvantages of file-based systems are:

  • Data Redundancy: Multiple records for a single data needs to get stored in multiple flat files as there is no relation between flat files.
  • Data Inconsistency: As the same data is present in multiple files, there can be a case of data inconsistency where data is changed at one place and not in another.
  • Unauthorized access: If anyone gets access to the system getting access to flat files is not a big task.
  • No concurrent access: Only one user can access the data at a time.
  • No backup or recovery: If the flat file is corrupted, there is no way of recovering the data from that flat file.

Relational DBMS

A relational database means data is stored in the form of relations in tables. SQL stands for a structured query language used to create, modify, delete, or access data from Relational Database. Various Relational Databases are MySQL, PostgreSQL, Oracle, etc.

RDBMS provides

  • Data consistency, Minimized data redundancy, Simplified Access, Multiple data views, Data security, and Backup and Recovery mechanism.

No SQL

A No SQL database is a Non-relational database where data is modeled and stored in other forms rather than tables. The use of No SQL databases over SQL databases is increasing over time as they are easy to do horizontal scaling in terms of clustering. Data structures used by NoSQL databases are sometimes also viewed as more flexible than relational database tables. We will learn about them in detail in the upcoming articles, but for an example, some of the ways in which No SQL databases are modeled are:

  • Key-Value store → Redis, Aerospike, Memcached, Coherence
  • Document-based → MongoDB, CouchDB, Cloudant
  • Tabular → Hbase, Big Table, Accumulo

--

--