Codementor Events

What are DBMS and RDBMS?

Published Mar 23, 2022
What are DBMS and RDBMS?

Today, data, or rather, organised data, is hands down the lifeline of almost every organisation on this planet.

Regardless of its scale, every business or institution requires data for functional efficiency and effective decision making. As such, it becomes necessary for organisations to employ tools that can store this data in an orderly manner. In the world of IT, we call these tools databases.

A database is fundamentally defined as an organised collection of data and is one of the core components of any sprawling organisation. To give you an example, we can say that most of the top names in the “fortune 500” list of companies would not exist if not for databases.

But wait! These collections of data would mean nothing if we are unable to use them for a cause, right? This is where a Database Management System chimes in. A database management system is an interface using which users engage with the data in a database.

Intrigued? Well! Let us explain to you in detail what is DBMS, what is RDBMS and how these two contrast with each other.

What is DBMS (Database Management System)?

To understand DBMS, we need to better understand the concept of databases first. Now, If we are to explain it to you in engineering terms, a database is a collection of related data stored in an organised manner.

For example, in a library, the librarian stores the information of all books either in a physical register or on an electronic system to facilitate hassle-free borrowing.

Databases are typically stored either on a file system or, depending on their magnitude, on computer arrays or the cloud.

A DBMS or Database Management System is a software program that enables users to access the data stored in a database in a fast and secure manner. A DBMS provides us with a way to handle big amounts of data in a jiffy and is thus, an essential commodity to have for any organisation.

Before the inception of DBMS software, the data was being handled by a flat-file system, which is what you’re currently using on your laptop or PCs.

Flat-file systems have been in use since the early days of GUI operating systems. They are primitive databases that store information in textual format.

Now, although in wide use, these databases are too basic for the type of operations we perform on databases today. They are time-consuming, inefficient, hog memory and the user needs to know very specifically what they want for them to locate that in the database.

When Database Management Systems came into play, they became a remedy for all the problems mentioned above. Thus, simply stating, a DBMS exactly does as the name suggests, manages database operations in a user-friendly way.

Sounds simple, right? Well, we will be honest, it is not.

The behind-the-scenes working of a DBMS is complex but worth understanding. So let us look into how a DBMS works.

What is RDBMS?

Let us suppose a firm is maintaining a database that stores the information of all its clients along with their order details. It stores the client information in one table and the order details in a second table in the database.

Both the tables respectively consist of their independent attributes such as client address, order number, delivery date, etc., as well as a common attribute, such as the client's phone number. We call this common attribute a relation. And the tables connected with a relation are said to be related (of course).

Hence, the databases that house related tables are called relational databases, and the system that manages these relational databases is called RDBMS.

Some popular RDBMS are MySQL, OracleDB, PostgreSQL and SQL Server by Microsoft.

Working of a Database Management System?

The working of a complete DBMS makes up for a very complex process but we will try to make you understand in simple terms.

It all starts with a user trying to operate or, let’s say, search something in the database using the DBMS. Now, normally in a flat-file system, you would have to manually go and search for the exact records. But in the case of a DBMS, you have to use a query language to get the desired results.

After generating a query, the DBMS checks if the current user has access enabled or not. If the answer is a ‘yes’, the query is moved to a query processor. The query processor then does the main job of getting the query implemented with the help of a storage engine. So, this way, you end up with the item you’re looking for inside the database.

Lastly, this entire process is done in a span of milliseconds, which instead would have taken you minutes to half an hour in a flat-file format.

But wait! Is the DBMS only meant to search through the databases or can it do more? Well! Let’s find out.

Operations you can Perform with DBMS

So, with the above example, we know that DBMS can perform a search query quite well. But in addition to that, it can do a ton of other things as well. Some of them are as follows.

Authorization: The DBMS allows/restricts access to a particular database to users. This feature enhances the security of a database.

Backup and Recovery: With internal tools for backup and recovery, DBMS makes sure that we don’t end up losing our valuable data in case of technical failure or tampering issues.

Optimization: DBMS can record the operations done in order to tune in the database and create optimised indexes.

Transactions Management: It can provide concurrent access for the same database to multiple users while managing that no two users can alter the same data at the exact same time.

Data Manipulation: We can search, add, delete, update, and do more with the data present in the database with the use of DBMS.

Working of a Relational Database Management System

A Relational Database Management system administers the data stored in a relational database by allowing users to access and manipulate it. Thus, it is not uncommon to use the terms "relational database management system" and "relational database" interchangeably.

A relational database stores data in tables composed of rows and columns. It interrelates the information stored in different tables using the concept of keys.

Let us take an example of two tables in a relational database. The first table consists of all the information of a student, while the second table stores the marks obtained in an exam. These two tables have their unique attributes along with a common attribute that we will call STD_ID (student ID).

The STD_ID column is the key that we talked about above. Also called the primary key, the STD_ID column is now a unique identifier that relates a student's personal information in the first table with his/her marks in the second table. Thus, if a user wants to collectively extract a student's address from table 1 and marks from table 2, they can do so by using the primary key.

The primary key exists in one table and is referenced by the others. In the case of the above example, let us say that the primary key exists in the first table. When the second table references it by adding it as a column in its structure, this primary key becomes the foreign key for it.

Thus, RDBMS facilitates the storage of data in relational databases by storing it in tables. Furthermore, it enables users to tinker with this stored data using the concept of keys.

Operations you can Perform with RDBMS

An RDBMS is essentially a DBMS with some advancements for ease of use and performance improvements. Thus, apart from the basic functionalities of a DBMS as mentioned above, RDBMS can perform the following primary functions:

Create: Relational databases record and merge data in relations (tables). Thus, the primary function of an RDBMS is to enable users to create those tables. Users can do so by using the CREATE TABLE query.

Example:Create Table student (STD_ID int(10) primary key, STD_PH int(20), STD_Name varchar(25));

This query will create a table named “student” that has three columns: Student ID (STD_ID), Student Phone number (STD_PH) and Student name (STD_Name).

Update: The update functionality allows RDBMS users to modify the data stored in different attributes of each table in a database. To do so, users need to use the UPDATE statement.

Example:Update table student set STD_Name = 'John' where STD_ID = 012;

Delete: The delete function in an RDBMS allows users to eliminate one or more records from select tables, either individually or collectively. To delete a record, users should use the DELETE clause.

Example:Delete from table student where STD_ID=012;
This query will delete all the details of the student named John from the "student" table.

Extract: The above three operations are of little worth if the users cannot see the changes they are making to a table. Hence, RDBMS has the extract function that allows users to see the data stored in a table along with the changes they have made to it so far.

To do so, users need to employ the SELECT statement.

Example:/*This query will display all the contents of the table*/ Select * from student;

/*This query will display the details of the student whose Student ID is 013*/
Select from student where STD_ID=013;

Pros and Cons of DBMS

A Database management system is a significant improvement over primitive data storage techniques such as the flat-file system.

However, DBMS is not ideal and has its fair share of merits and demerits, some of which have been listed below.

Pros

Data Redundancy: Data duplication is one of the primary hazards associated with a database. If the same values are copied multiple times at different locations, they can disturb the overall cohesiveness of the data. A DBMS compiles and manages all the data in a database centrally. Hence, it can minimise any instances of a record getting duplicated in the storage.
Data Integrity: Data Integrity refers to the overall uniformity and correctness of the stored data. DBMS comprises integrity constraints, a set of rules enforcing data integrity, to ensure the overall consistency of the stored data.
Data Security: One of the highlights of DBMS is that it authorizes the users working with a database. This confirms that no outsider will be able to tamper with the stored data. Also, an admin oversees the entire database and can grant varying access privileges to the registered and authorized users.
Data Sharing: Data sharing is another prominent feature of a DBMS that allows a user to share data with other authorized users while maintaining data consistency.
Decision-making: The above advantages render an organisation or an individual to base their decisions on a well-managed set of data thereby improving their viability.

Cons

Expensive Resources: Database Management systems perform intensive tasks of constantly managing large data pools. As such, they require costly hardware and software resources to function optimally. And do not forget the skilled personnel that set up and maintain these systems.
Complexity: DBMS are, for sure, not one of the most approachable systems as they require one to possess a ton of technical knowledge to leverage them. Also, integrating DBMS with other programs increases management burdens due to interfacing with different environments.
Storage Space: DBMS are hefty software that requires lots of space on the disk.
System Failure: Due to the data being managed centrally if any component of a DBMS fails, the entire system will face repercussions.

Pros and Cons of RDBMS

Again, an RDBMS is technically an augmented DBMS and does away with some of the detrimental flaws of the latter.

But, like all other software programs, an RDMS too comprises of advantages and disadvantages that you should know of.

Pros

Quite user-friendly: From database updation to firing queries, an RDBMS offers greater ease of use to the users.
Scalability: RDBMS are highly scalable since one only needs to create more tables to accommodate the rising data storage and management needs.
Security: In addition to the basic security features offered by DBMS, RDBMS support advanced data encryption to safeguard the stored data.
User-access: More than one user can access a database at a time. To avoid any concurrency conflicts, RDBMS has locking protocols in place.
Performance: Although not the fastest, RDBMS provide a significant performance increase over DBMS.
Data Redundancy: Instances of data duplication are almost negated due to primary and unique keys.

Cons

Due to the range of functionalities offered, RDBMS are quite expensive to buy and maintain. Also, since they are resource-intensive, they require top-notch hardware and software support to function.
RDBMS take up a lot of storage space due to their hefty size.
Performance dips can be observed with an increase in the number of tables.
Data recovery is almost a lost cause in case a system failure occurs.

DBMS V/S RDBMS: Complete List Of Differences

By now you must have concluded that a Relational Database Management system is an upgrade over the traditional DBMS. To help you cement your opinion better, we have curated a list of some major differences between DBMS and RDBMS.

  1. DBMS records and stores data as files and RDBMS uses tables (relations) to store data.
  2. DBMS Only offers authorization as a primary security measure and RDBMS added security layers such as encryption, proprietary build, etc.
  3. Data in a DBMS is disjoint and RDBMS keys help relate all the tables in a database.
  4. DBMS does not support data normalisation and RDBMS offers support for normalisation as
  5. DBMS can handle comparatively less amount of data than RDBMS and RDBMS can handle large data sets without any performance issues
  6. DBMS need to access data records individually and RDBMS SQL queries offer a fast and efficient means to access large amounts of data quickly and in an organised manner
  7. DBMS chances of data becoming redundant increase with an increase in the size and complexity of stored data and RDBMS data redundancy is almost negligible thanks to unique identifiers (keys)
  8. DBMS hardware and software requirements are less when compared to RDBMS and RDBMS requires the most powerful of hardware and software to work efficiently
  9. DBMS follows the hierarchical model to store data and RDBMS arranges stored data into rows and columns which allows for relatively easier indexing

Conclusion

So there you have it, an in-depth analysis of DBMS and RDBMS along with some essential insights into their characteristics.

From a distance, RDBMS and DBMS might seem to be two different entities. However, upon closer inspection, you realise that RDBMS is essentially DBMS on steroids, albeit with some changes to the core functionalities.

Hence, the next time you see someone use these two terms interchangeably or mark them as entirely different, don’t hesitate to show off your knowledge.

Discover and read more posts from Ankit Dixit
get started
post commentsBe the first to share your opinion
Show more replies