In our daily life we interact with people and during the interaction, we share some information with each other. Some information is important and we store it in a notebook or if we have phone or laptop then we save this information in it. There are two ways of storing data. The traditional way of storing data is in a file system like in notepad or MS Word. Storing data in files is sometimes good for personal use. But for businessman data should be stored in such a way so that it be accessed, updated and deleted by multiple people in the organization. For large businesses data is stored in the database.
The database is a structure in which data is organized in a way so that it can be accessed easily. There are various types of databases used by the companies or by a group of people.
Type of databases:
Relational database: In relational database data is stored in the form of tables. The table is a combination of rows and columns. The column in the table is called attribute of the table and row in the table is known as a record in the table. For example, there can be a table of a student in which column names may be student id, name, D.O.B (Date of birth), phone, class etc. In this case, the student is also known as an entity. The entity is an object which has attributes in it like the car is an object with some attributes like color, name, company etc. To store the attributes of an object we use tables. To query some data from the tables in the database we use a computer language known as SQL. SQL short for Structured Query Language is used by the programmers to read, write and update data in relational database. As you know a common person cannot understand computer language so there is a need for a software by which any user can work with the data. Suppose there is university database in which data of students, teachers and other staff are maintained. Now teacher wants to know the performance of their students and students want to know the timing of class and about their exams results etc. To maintain all this we need a software which can be used by student, teachers and fees department also. So the system software which does all the data handling tasks is known as database management system (DBMS). As we are discussing relational database but there are other types of databases also like:
- Distributed database
- NoSQL database
- Cloud database
- Graph database
- Object-oriented database
We will not discuss in depth about above-mentioned databases as it is not related to over the main topic so let’s move on to DBMS.
The system software which is used to create and manage databases is called database management system (DBMS). Examples of DBMS are Oracle, Mysql, MS Access, SQL Server, Foxpro, PostgreSQL, FileMaker, RDBMS etc. DBMS hides complexity from the users and gives them information that they need in an organized way.
Let me now discuss some of the advantages of DBMS.
Advantages of database management systems (DBMS)
- Integration with other software:
DBMS integrates very well with other software. The updating of data is done in single place and all the connected application software get updated data. This works in a centralized way. Like we see in CRM (customer relationship management) software which is an example of DBMS. In CRM data is placed in one centralized place and can be accessed remotely by any of authorized users.
- Reduce data redundancy:
Redundancy means same data is placed in multiple locations in the file or database. In the file system, some similar data is placed in multiple files like the name of the employee is placed in different files. While in DBMS all the data is uniquely identified by an id number which is also known as a primary key. Data is stored in the database in tables and to uniquely identify any entity we use the super key, primary key, foreign key, and composite keys. These keys enforce database to reduce redundancy in the tables.
- Minimize data inconsistency:
Inconsistency means there exist different versions of same data. Like customer-name is saved as Mark Chris and also Mark Chris Donald. If we save data using DBMS then we have minimal redundancy which means data inconsistency not occurs. Each record in the database is entered through proper channel and the user is notified when entering wrong data in the database. Main data is stored in a single table and more details are stored in other related tables and all related tables are linked to each other through primary and foreign keys. Note that foreign key in one table is the primary key in another table.
- Behave nicely in concurrent updates:
DBMS gives access to multiple users with login/password. In a large organization, there are many users and there is a high probability that a couple of users try to update same data at the time. The DBMS ensures that data is updated in a correct way so that no data is lost.
- The speed of work is improved:
If DBMS is properly setup then it improves company overall performance by giving accurate data. The required data is also fetched from the database quickly. If we compare this with traditional file system then fetching data with constraints is very difficult. We can set limitation and compare data with old or new data. DBMS makes it very easy to get accurate data from millions of records that already exist in the database.
- Better data protection:
DBMS is managed by the database administrator and he creates different accounts and levels for different users. For example, in university, there are teachers, students, and fees department. Now one student can login to the DBMS through his username and password. A student can only see his own data like exams results etc. similarly teacher can only see data of students which he is teaching. One teacher cannot see data of other teachers. There are also some people in the university which can see data of every student and teacher. So data is protected in DBMS and only authorized users can access the data.
- Searching data is easy:
Data can be searched easily through filters in DBMS. Like in the stock market, if we want to search company stock price for last 6 months then it can be easily displayed. Similarly in banks, if bank manager wants to know minimum credit of account holders then it can be displayed from DBMS.
To be continued……