What are the Characteristics of DBMS?

Characteristics Of DBMS

Data is of great importance to us and so is the operation of the available data. Our daily lives depend on data like the cost of food and medicines, the score of the match between our favourite teams marks that we got in our exams, and the list goes on. Various big brands and businesses run on the basis of data. Operations on the data like searching for a Name in a list of thousands or storing this list of thousands in the most efficient manner possible are some of the most commonly used and most important operations in any kind of data.

DBMS or Database Management System helps us do all of that and it is a very important topic to study. In this article, we will discuss the Characteristics of DBMS (Database Management System) and understand them in depth. 

Data

Data can be stated as nothing but raw facts and figures. For example: “Apple”, “Car”, 100976453, 3.14157, etc. Are you able to come to any conclusion or derive some meaning out of these Strings and Numbers? NO !! The reason is simple, these are just random facts/strings/numbers. Yes, they do have some meaning. We know that “Apple” is a String {Do not go into the real world meaning} and 100976453 is a number but these are just some random Strings and Numbers for us right now.

Information

When the data is processed, organized, and presented in a structured way then it is called information. Information can be very useful for various purposes. For example: the information about average score of a player in T20 format of  cricket may have a huge impact on the player’s selection in the team and also how he/she might play on the day of the match. Predictions generated using the mathematical tools of statistics and probability are all based on the information of the past. 

Not just the predictions, information is very important for taking immediate actions too. For instance, the information of region and state-wise sales of a product of a particular company shows the regions where their sale is low. The company can identify the reasons for low sales and then improve in those areas.

Difference Between Data & Information

For simple understanding, we can say that Name, Roll Number, and percentage are all data but a report card of a student which has Name, Roll Number, and percentage of marks arranged in a systematic and organized manner is information. 

Let us understand this with the help of a simple example. What can you come up with the following raw pieces of Strings and Numbers: “Rohan”, 14, and 92.34? Nothing !! However, when you see it on a report card, you can conclude quickly that the name of the student is Rohan and the roll number of this student is 14 and he scored 92.34% marks in his exams.

Another example can be sports. Let us say that a player scored 56 runs in today’s cricket match. What is this? This is data about the player’s score. Now, if we have the record of the player’s score for the previous 20 matches and have a table or a chart with his average batting score for each innings with the average strike rate and batting duration, this is information. This information can be derived from the data i.e. the score of the player in each match.

Database

People often get confused between databases and information. Like we said that the average score of a player is not data rather information, the average scores of all the players of the Indian Cricket Team for a time span of say 4 years are not just information. It is a database. Hence, a database can be defined as a collection of logically related data (or inter-related data). This is because the average score and strike rate of all the players of the Indian Cricket Team is logically related as it represents the overall performance of the Indian Cricket Team. The scores of one player relate to another because this will be the criteria of the selection of the players for the upcoming world cup. 

Hence, to rephrase the definition again, a database is a collection of logically related data. For example database of a school (contains data about the students and faculty members), a database of a Library, etc.

Database Management System (DBMS):

A DBMS is a database plus some programs that help us to manage that database. So, DBMS is software. We can say that a Database Management System or DBMS is a collection of logically related data and the programs that are used to modify that data.

Some of the examples of the most commonly used DBMS are MySQL, Oracle, PostgreSQL, etc.

So, now that we are clear with what a Database is and what DBMS is, and how similar or different they are from each other, let’s jump into the characteristics of DBMS.

Characteristics of DBMS (Database Management System)

The following are some of the most important and well-known characteristics of DBMS:

Real World Entity

  • One of the most important and easy-to-understand characteristics of DBMS is that it is realistic. 
  • The DBMS has been designed in such a way that it can cater to the needs of huge business organizations and can store large data with efficient operations on them. Database can store things like cost of vegetables or cost of different brands of breads or milk etc. The entities in the database look like the real world entities (please have a look at the table for student database shown below).
  • For example, we can have a Database Management System for a School or a big MNC, and the data is stored in the form of real-world entities. Any student that is stored in a Student database is like a real-world student (object/entity) and has properties (commonly known as attributes in DBMS terms) like his/her name, gender, age, roll number, etc.

Self Explaining Nature

  • A DBMS contains one database and along with that it also contains metadata about that one database.
  • Metadata is the data about data. For example: In a DBMS for a particular School, the total Number of rows in the database and what is the name of each column of the database table, and all such information about the data is metadata.
  • So, the combination of this database and metadata leaves no questions in anyone’s mind as the DBMS becomes self-explanatory. This is because the database has all the information in a structured format and if anyone has any doubts or questions regarding how the database is designed, they may look into the metadata.

Atomicity of Operations (Transactions)

  • Atomicity means that either the operation should not be performed or it should be performed in its entirety i.e. it must be either 0% or 100% completed.
  • DBMS provides us with atomic operations (i.e. any operation which is either complete 100% or not complete at all). This is very useful and important. You can understand the importance of atomic operations with the help of the example given below.
  • For instance: Every bank has its own database with data of transactions and balance all other other useful information of their customers. Let us take the case of a transaction as it is one of the most commonly seen atomic operation. Here, a person Aditi transfers 500 Rupees to Rahul by any of the money transfer facilities available nowadays.
    Now, let us say that there was some problem with Rahul’s bank servers. If databases were not atomic, 500 Rupees would have been debited from Aditi’s account but not credited to Rahul because of the problems with his bank server. This would have been such a mess. Who would be responsible for the lost 500 Rupees as Aditi is innocent and fair in his transaction?
  • Since the databases are atomic, the transaction in the above example would not have occurred at all and the money would not have been debited from Aditi’s account as well. This is the importance of atomicity.
  • Basically, in case of a successful transaction, the transaction is committed to the database. This means that the changes that occurred due to the translation are reflected in the database also. However, in case of an unsuccessful transaction, the rollback occurs i.e. the database comes back to its original state (state before the current transaction) so that no changes are reflected to the database because of any incomplete transaction. 

Concurrent Access without Anomalies

  • Multiple users can access the database at the same time without any anomalies (problems: like 2 people trying to access the same data might restrict one from accessing it).
  • For instance: Again, let us consider the database of a bank where a person Rohan has his account. Let us say that Rohan has a brother Neil and he gives Neil his ATM card to withdraw some cash from the ATM. Now, when Neil reached the ATM, at the same time Rahul asked Rohan to transfer 1000 Rupees to him. If Rohan’s initial balance was rupees 5000 and he transfers rupees 1000 to Rahul and he asks Neil to withdraw 2000 Rupees, his balance should now be Rupees 2000 (5000-3000).
    If the users would not have concurrent access to the database, either Neil’s transaction or Rohan’s transaction would have taken place and instead of 3000 Rupees, only 1000 or 2000 rupees would have been less from Rohan’s account.
  • Thus, we see that concurrent access is such a great characteristic of DBMS. 

Stores Any Kind of Structured Data

  • A database can store any kind of structured data.
  • In most of the books or websites, you will see examples of students or employees as these are easy to explain but the very important fact is that the DBMS is not limited to storing only these kinds of information.
  • DBMS can store practically any data that exists in the world and is structured and this is yet another very important characteristic because we need to work on every kind of data present.

Integrity

  • Integrity means that the data which comes into the Database should be correct as well as consistent. Let us see an example to understand the meaning of correct and consistent data with respect to DBMS.
  • For instance: Let us say that there is an XYZ bank and its has its own database of all the customers of the bank. If we are entering the details of XYZ Bank’s account and the account number is not specific to that bank, the data is incorrect. However, if a person has changed his/her address in the savings account of the same Bank and the current account still has the old address of the person in the current account’s details, this is data inconsistency.
  • In DBMS, the data that is entered into the database is both correct as well as consistent. Apart from that, integrating changes is very easy in a database.
  • For instance, if the bank earlier had a constraint of having a minimum account balance of 0 and now it has changed it to 2000 Rupees, the DBMS will be able to integrate this change very easily and all the accounts that do not have a minimum balance of 5000 will be detected and notified accordingly.

Ease of Access (The DBMS Queries)

  • Before DBMS, the conventional file system (i.e. files and folders) was used to store complex and large data.
  • Searching for a Name in thousands of Students was a very difficult task. This is because manual searching is done in a conventional file system for a particular data. However, DBMS provides ease of access to the data inside the database.
  • We can run a search query to find any data and the process is way faster than manual searching and is more reliable.
  • The CRUD (Create, Read, Update & Delete) operations are very easy to perform with a database because of the DBMS queries.

SQL and No-SQL Databases

  • There are 2 types of databases (not DBMS): SQL and No-SQL.
  • The SQL databases store the data in the form of Tables i.e. rows and columns. The No-SQL databases can store data in any other form than a table. For instance: the very popular MongoDB stores the data in the form of JSON (JavaScript Object Notation). 
  • The availability of SQL and No-SQL databases provides us with the flexibility of choosing the method of storing the data as well.
  • There should not be any debate between SQL and No-SQL databases. The one that we require for a particular project is better on that project while the other might be better for some other use.
  • This is a characteristic of DBMS because DBMS allows us to perform operations on both kinds of databases. So, we can run queries and operations on SQL as well as No-SQL databases.

ACID Properties

  • The DBMS follows certain properties to maintain consistency in the database. These properties are usually termed as ACID Properties.
  • However we have already talked about some of these properties, but it is very important to mention the ACID properties as a whole.
  • ACID stands for Atomicity, Consistency, Isolation, and Durability.
  • We have already talked about atomicity and consistency. Atomicity means the transaction should either be 0% or 100% completed and consistency means that the change in data should be reflected everywhere in a database.
  • Isolation means that multiple transactions can occur independently without the interference of some other transactions.
  • Durability means that the chances of a successful atomic transaction i.e. a transaction that has been 100% completed should reflect in the database.

Security

  • The database should be accessible to the users in a limited way.
  • The access to make changes to a database by the user should be limited and the users must not be given complete access to the entire database.
  • Unauthorized users should not be allowed to access the database.
  • Authentication: The DBMS has authentication for various users that directly refers to the limit to which the user can access the Database. Authentication means the process of laughing in of the user only with the rights that he/she has been authorized to. For instance, in any organization, admin has the access to make changes to the database of the organization as some new employee might have joined the organization or someone might have left it. However, the employees have access only to their personal profile and can make changes to it only. They cannot access the database of any other employee or the organization as a whole.
  • These kinds of security measures are available and built very strongly in a DBMS.

So, these are some of the most important characteristics of DBMS.

Conclusion

After studying the various characteristics of DBMS, we can come to the following conclusions:

  1. The DBMS is so much more reliable as compared to the conventional file processing system.
  2. DBMS provides atomicity and consistency.
  3. They provide data integrity and security.
  4. The DBMS can store any kind of data and it is also very easy to access this data.
  5. DBMS is based on real-world entities and provides concurrent access to the users without any problems.

Additional Resources

Previous Post

Principles of Software Engineering

Next Post

Components of Operating System

Exit mobile version