Database Management System, often called DBMS, is the combination of computer
programs in a software package primarily designed for the creation,
maintenance, and use of databases by following proper security standards. DBMS
acts as an intermediate between the database and the end-user or third-party
software. With DBMS, users can create, access, or manipulate data in the
database.
In this article, we explain some of the major characteristics of DBMS found
these days. However, they are not limited to these characteristics discussed
in this article. Depending on the architecture and future upgrades, there may
be many more characteristics of a database management system.
What are the characteristics of DBMS?
Before DBMS, files were stored using the traditional file system. DBMS was a
completely new concept at that time. However, DBMS has gone through many
updates and additions to overcome all the problems or shortcomings of the
traditional file system. Modern DBMS are comparatively very advanced than
file-based systems. Key features of modern DBMS typically include a
real-world entity, low redundancy, concurrent access, data consistency,
security & integrity, support for SQL, ACID properties, and transaction support.
Following are the common characteristics of DBMS (Database Management System):
Real-World Entity
Database management systems are realistic these days and take advantage of
real-world entities when designing the architecture. They are specifically
designed for the needs of any business or organization, allowing them to
efficiently manage and maintain large amounts of data. Modern DBMS also makes
of use behavior and attributes.
For example, an organization database might use employees as entities and
their age or IDs as attributes.
Relational Databases
With relational databases, data is organized or stored in a structured format
within tables formed by rows and columns. Due to this, it becomes easier to
locate or access particular values in the database.
The word relational here denotes that the values stored in each table are
related to each other. Similarly, tables can also be linked to each other to
form relationships. The relational structure simplifies the concept of data
saving and makes it possible to run queries on multiple tables of the database
simultaneously.
Self-Describing Nature
Before DBMS, the traditional file system was the only option for storing data.
However, it lacked a self-describing nature. In DBMS, the data is stored along
with the metadata. Since metadata is maintained automatically in the DBMS, the
DBMS reflects a self-describing nature. Metadata refers to a piece of
additional information about the actual data, such as
file name, format, file creation date, last modification date,
etc.
Supports Multiple Data Types
The database management system these days are capable of storing any kind of
data. It is not just limited to any specific file types. It can hold any
typical data we come around in the modern world. For example,
binary, numeric, string, dates, etc.
Data Schema
In a DBMS, data is stored within tables that are structured before the data is
written. This structure of the table is commonly known as a schema in DBMS. It
contains information about various attributes related to the data. For
example,
tables, fields, packages, views, relationships, primary key, foreign
key,
etc.
The data is not physically stored in the schema; instead, it is simply the
logical representation of the database that is used to demonstrate how the
data is stored logically within the database. Since data is stored physically
in files in an unstructured form, it needs to be structured or organized in
order to be used or searched. This is where the schema is used.
Multiple Views
Modern DBMS provides multiple views of the database, allowing users to view
the desired database in a number of ways based on department, category, or any
other attribute. It is entirely based on how the view access of the database
has been specified.
For example, an organization database may have a different view when accessed
by
HR, and a different view when accessed by an employee. The database remains the
same but different users may have a different view of the information, which
strengthens the security of the database information.
Structured Query Language
Structured Query Language, abbreviated as
SQL, is the query language that helps users create queries to access or modify
data in database management systems. They are called structured because they
use predefined structures to form relationships between entities. These
queries use specific commands, written in English, with keywords that instruct
the database on which actions are to be performed. This is not possible with
file-based systems.
Insulation of Data and Application
The database system (or application or program) and the data stored in the
database are completely different from each other. The database is called the
active entity in DBMS, while the data is called the passive entity through
which the database itself operates. In particular, both are independent.
Due to the independent approach, DBMS has an advantage over the traditional
file-based system. Unlike a traditional file-based system, the structure of
the data files is not defined or stored in the application in DBMS. Instead,
it is defined in the system catalog, making it easy for users to make changes.
This means that changes made to the data or any internal improvement in data
efficiency will not affect the application program.
But, with the traditional file-based system, users have to replace the entire
application program that uses the associated data files. In this way, DBMS
provides better insulation of data and application.
ACID Properties
The database management system supports the concept of ACID (Atomicity, Consistency, Isolation, and Durability) properties. These properties ensure that the primary purpose of
any DBMS system is not lost while performing specific tasks like inserting,
deleting, modifying data in the database. ACID properties also help in
maintaining a healthy state of the database in the multi-transactional
environment or sudden failures.
Multiuser and Concurrent Access
DBMS provides a multi-user environment, allowing multiple users to work with
data in parallel or concurrently. This is one of the primary
advantages of DBMS. Due to concurrent access, multiple users access the database at the same
time and perform specific operations without any problems. For example, a
railway reservation system is used by several people at a time and people book
tickets simultaneously until the seats are completely filled or blocked.
Object-Oriented Programming
Object-Oriented Programming, commonly referred to as OOP, is a special
technique used in DBMS to design programs. Objects hold properties as well as
methods. While properties denote variables or constants that carry values,
methods represent processes that act on related properties.
Unlike other programming approaches, OOP enables the programmer to create
reusable components by encapsulating their functionality within classes.
Classes incorporate a specific set of code and other data elements. Instead of
writing the same code multiple times, programmers prefer to use classes.
Transactional Processing
DBMS supports transactional processing that helps the users to maintain the
stability of the database. In DBMS, transactions represent the set of
operations performed to bring the database from one stable state to another or
a new stable state. These transactions are atomic, which means they will
either be complete or remain incomplete.
With transactional processing, the DBMS ensures to roll back the transaction
if there is an error or failure while it is running. This keeps the system
stable, keeping the entire system running continuously while multiple users
are accessing it simultaneously.
Data Mining
Data mining, also known as
Knowledge Discovery in Database (KDD), refers to the process of extracting essential information from large
databases (or big databases). The process generally helps in identifying
trends and patterns among different data sets from the database in a DBMS,
improving decision making.
Various data mining algorithms are used in DBMS. Some such algorithms are
classification, association rules, regression analysis, decision trees,
neural networks, genetic algorithms, etc.
Distributed Database Systems
A DBMS supports distributed database systems, which means that it stores data
across multiple computers connected to a network. Due to the distributed
database concept, it is easy to scale or include additional servers without
the need to set up an entire environment from scratch. In a DBMS, a
distributed database typically includes the following parts:
Client Applications, Server Applications, and Shared Storage.
Client applications help to access shared storage with multiple protocols such
as
TCP (Transmission Control Protocol)
and IP (Internet Protocol). Server applications help in delivering essential services to the clients.
Shared storage helps to allocate the desired storage space to hold all the
data. At the same time, each node in the cluster holds or stores the metadata
of the other nodes.
Less Redundancy and Consistency
Data redundancy refers to the problem of having the same data unnecessarily in
more than one place in the database. With DBMS, redundancy is reduced or
nearly eliminated compared to traditional file systems. DBMS follows the
concept of normalization which splits a relation when there is redundancy.
DBMS maintains consistency of data, which means that the data remains correct
at all times for all users. Changes based on data modification or manipulation
are reflected in the database without any problems, keeping the relationships
in the database consistent.
Data Persistency
With DBMS, data is persistent which means that the data is kept and maintained
in the database by the DBMS until it is explicitly deleted or removed by the
user. In case of uncertainty like system failure, there is the least to zero
chance of data loss. The life span of the stored data is entirely decided by
the authorized user. If the system fails in the middle of a transaction, the
entire process or even system is rolled back, keeping the data safe to the
maximum extent possible.
Data Security and Integrity
DBMS provides the highest security to the stored data as it provides different
levels of security features. This allows primary users or administrators to
enforce the necessary constraints to access the data. Because of this, users
will only be able to access the data by a specific security
PIN
or password.
Furthermore, since the DBMS renders multiple views, different users can only
access the data individually allowed to them. For example, a person in the
sales department cannot see information related to purchases and vice
versa.
Apart from data security, DBMS also maintains data integrity. This means that
it ensures the quality and reliability of the data in the database. It
prohibits all unauthorized access. Since the data is not stored on a disk with
the DBMS, it is almost impossible for fraudsters to break the security and
access the data.
Backup and Recovery
Backup and recovery are two effective features in a DBMS that help the users
to avoid any damage to the stored data. With a DBMS, users can back up the
data stored at certain points and restore the backup to get the data back in
case of uncertainty.
Modern DBMS also takes care of the backup and restore of the system
automatically. The data is backed up automatically as per the schedule and is
automatically rolled back when a failure occurs, keeping the system stable.
Cost
The cost required to set up a DBMS is a notable characteristic as it can be
quite high compared to other data storage software or technologies. The cost
of a DBMS can create confusion about whether to choose it or not. However, if
an organization is looking to store a large amount of data for a long period
of time, a DBMS can be the best option and its maintenance cost will be
comparatively less over time.
Users
Users are important elements or components in DBMS as there are different
users to perform specific tasks. Some users may be involved in creating or
designing DBMS, some may be involved in backing up data, some may be involved
in setting up access permissions, some may be end-users, etc. Typically,
database administrators (DBA), designers, and end-users play a key role in a DBMS environment.
Summary
This article discusses about 20 characteristics of a database management
system. Modern DBMS has many features or characteristics and DBMS vendors are
always working towards adding more and more to compete with each other. Some
of the popular examples of database management systems are
MySQL Database, MS-Access, Oracle Database, Microsoft SQL Server,
etc.
Please share this...