We have all heard so much about Database management systems that sometimes we confuse the two things. One is RDBMS which is Dr. Codd’s data model which has 12 rules & the other is the software which is used to manage the RDBMS. Since , we humans love acronyms & like to shorten down everything these two terms are often used together . We have removed R from RDBMS and started to use DBMS . Trust me it does confuse even the experienced people sometimes. Because S in both terms have different meaning. For RDBMS it is System and for DBMS it is Software. With this out-of-the-way let’s discuss features of database management system ( the software)
FEATURES OF DATABASE MANAGEMENT SYSTEMS
We will discuss few very important ones to familiarise ourselves with the basics of database management system.
Data Dictionary Management
Actual dictionary has meanings of words in it. Similarly , a DBMS has a dictionary where it stores information about all tables , columns and relationship between them & the change in them. This saves you time to track & manage all of this by yourselves
Data Storage Management
Data is to be stored on disk of our computers right? Now , imagine you have to create the right structures or program the arrays , data list and create data structures to handle the data and the pressure of it’s growing size? It will be too much to handle . So a DBMS do this job for us . We just follow our designs & data structures and data storage is handled by our DBMS.
Data Transformation and Presentation
Modern databases have users from all parts of the world. You use facebook & you see that it gives you language options or time & date options according to your region . Now this is so spotless that most of miss the genius work of programmers who do it. DBMS helps to achive this task by providing options to transform data in multiple formats & then present it to the appropriate users.
Date format in England is dd/mm/yyyy & in United States it is mm/dd/yyyy . DBMS should be able to manage this change & present it to both American & English user their time formats. Howz that for a requirement 😉
DBMS mustn’t allow breach of user’s access . DBMS should have appropriate security rules that can restrict access to tables , schema & other database objects. Why is this so important?
My client wouldn’t like their employees to access HR information. Such as salaries of other employees & their contract details. Such data should only be accessible for HR department. Makes sense?
Backup and Recovery Management
Sometimes , names are enough to show what does it mean. DBMS should be able to take backups and provide methods to recover the lost data . Sometimes , maybe some data developer accidentally removes your production table . Accidents happen all the time? DBMS should have logs & other mechanism than can support data recovery!
Resigning employees or a sleepy developers tend to make mistakes more! DBMS should be able to help us out!
Data Integrity Management
Wallmart , Amazon have thousands of transactions every second if not minutes. Their orders coming in , inventory coming up on the screen . Now it’s the job of DBMS to make sure that data integrity is not affected in any case. Remember , about primary keys? If DBMS allows duplication of primary key . Can you guess what will happen?
Let me tell you. You could log in in your account and end up seeing my account. Why? because DBMS failed to manage your user id against your account. Imagine the damage. Someone’s credit card shopping is billed to you.
So DBMS should be able to maintain data integrity , data concurrency & data consistency!
Database Access Languages and Application Programming Interfaces
You can access database by a query language. Standard Query Language is one example and mostly used around the world.
If you have more features to add & comment them below. We will add it to this article. If you have enjoyed reading this. Please , share this with your friends & colleagues. Subscribe Us to receive latest articles in your inbox.
Write to us if you want to add any topic & we will surely do so.
[yop_poll id=”-2″ tr_id=”2″]