Advantages of DBMS
A Database Management System (DBMS) is a software suite for creating and maintaining databases, offering benefits like data redundancy control, restricted access, and multi-user support. DBMS, comprising interrelated data and tools, allows data access, retrieval, and manipulation with robust security measures, enhancing data integration and security. Despite some drawbacks, its advantages are more significant.
What are the Advantages of DBMS?
So the question here is, why do you use a DBMS? There are several advantages! Let's approach each of them one by one in detail!
Controlling Redundancy
In a regular file processing system, there are data redundancies, which lead to the following problems:
- Data needs to be entered multiple times, causing duplication of effort!
- Data may become inconsistent. In DBMS, each data item is stored in such a way so that there is no inconsistency in data, and moreover, it saves a lot of storage space!
Restricting unauthorized access
DBMS provides security and authorization so that some users are not authorized to access all data in the database.
As DBMS facilitates the use of multiple views, this ensures that only authorized people can access the view and not everyone. This helps in restricting unauthorized access, as only the specific details are shown on a view.
Let's understand that with an example:
- A bank database management system would have various views- The Bank Manager View, the Customer View, etc.
- Now, the things such as customer database (which would include personal customer details) and transactions cannot be seen by other customers, right? They can only be seen by the bank manager or the other bank personnel!
This is how by the means of views, a DBMS provides secure access to data.
Providing persistent storage
A DBMS provides persistent storage for program objects which led to the emergence of Object-Oriented database management system. Hence, a complex object can be stored permanently in an O.O. DBMS. Such an object is said to be persistent as it can then be directly retrieved by another program.
Atomicity in data
In a DBMS, every transaction is 'atomic'.This means that the transaction should either be fully complete or must not start at all.
An example that would make this easy to understand is that suppose you are in between an online payment process, and the payment gateway crashes, and the receiver doesn't receive the payment. In that case, the transaction is restored, i.e., money is transferred back to the sender. Check out this article to learn more about Atomicity in DBMS.
Permitting inferencing and actions
Some database systems provide capabilities for defining deduction rules for inferencing new information from stored database facts (Database rules are deduced from facts!)
Representing complex relationships among data
A DBMS has the capability to represent a variety of complex relationships among data, as well as to retrieve and update related data efficiently. A good example of that is the use of foreign keys!
Provides multiple user interfaces
There are different types of users with different technical knowledge. So, a DBMS provides different user interfaces.
Enforcing integrity constraints
A DBMS provides capabilities for defining and enforcing integrity constraints that must hold for data. Example: specifying the data type for each data item.
Data integration
We have access to well-managed and synchronized data as a result of the Database Management System, which makes data handling very straightforward and provides an integrated perspective of how a particular organization works, as well as keeping track of how one sector of the firm affects the other.
Providing backup and recovery
A DBMS facilitates backup and recovery in the event of a software failure, which makes the chances of data loss almost negligible!
No concurrent access anomalies
For this, you first need to understand what is "Concurrency control mechanism" is. Concurrency control is As compared to a general File Processing System, DBMS doesn't have any anomalies concerned with concurrency control, the reason being that DBMS is centralized!
Conclusion
So here we are! The aim of this article was pretty simple, wasn't it? Here are the talking points from what we discussed:
- We saw a brief introduction of what a Database Management System or DBMS is.
- Then, we answered a crucial question: 'Why DBMS?'. To answer that question, we discussed all its great advantages, that define the convenience and efficiency of a DBMS.