Database means collection of related records. In our daily life we regularly use the database. For example our telephone diary is a database in which all the necessary telephone numbers of our family members, relatives, friends, our helpers etc with their name and address are stored. So we can say a telephone diary is a database.
In computer science database means collection of electronic records. These records can be processed and converted into useful information. Various data processing operations can be performed on this database by modifying, managing, controlling and retrieving data. Various databases are available such as relational database, Object-oriented database, network database, hierarchical database and distributed database etc. Initially files system was used to store data. For small size database file system works well, but as the size of database increases, the file system database becomes inefficient and it becomes tough to manage and process database using files. So, some better system was required to manage large and huge databases.
Database Management System or simply DBMS keeps data in a way that it becomes easy to access, retrieve, manipulate, and produce information. DBMS was also very important because various organizations have database which contain some critical information, sensitive information about security and other organizational records with complex logical relationships with other databases and more importantly data grows exponentially with time. So, these organizations were looking for technology driven solutions to access, manage, process and most importantly secure the data stored in databases.
DBMS is a much better way than file system to manage database as file system is less secure than DBMS. DBMS is much more suitable for storing large databases than files. File system allows duplication of data whereas DBMS restricts duplication of data.
DBMS provides an organized strategy to manage databases through an interface for users to access databases using applications. The DBMS is responsible for managing the information within databases and processing of databases such as access, addition of records, deletion of records and modification of records. It is also responsible for the logical structure of the database. To perform all these functions DBMS has some components. They are:
- Data: The various resources a DBMS has for proper functioning are access to database, data on which operations are to be performed and metadata. The data may contain files like business structure, employees data, administration related information, data flow information and relationship with other database records etc.
- Software: DBMS is a software system which is an interface to interact with and manage databases. This interfacing is spread all across real-world physical systems which provide data to the backend databases. The operating system, software and the hardware infrastructure are involved in proper functioning of DBMS
- Database Languages: To access, modify, save or retrieve data from a database we should be able to communicate with the database. This is done by using DBMS languages like Structured Query Language (SQL). SQL is further divided into Data Definition Language (DDL), Data Manipulation Language (DML) and Data Control Language (DCL).
- Query Processor: As a basic attribute of the DBMS, the Query Processor is an interface between users and the DBMS data engine to convey query requests. When an instruction in SQL language is typed by a user, the command is executed from the high-level language instruction to a low-level machine language which the underlying machine or hardware can understand then processes it to perform the requested function. To ensure fast processing and accurate results, the Query Processor is also responsible for optimizing queries.
- Procedures: Procedures are instructions which are used on DBMS. The guidelines written help users to design, modify, manage and process databases.
- Runtime Database Manager: A centralized management component of DBMS which handles functionality associated with runtime data is called Runtime Database Manager. It is usually used for context-based database access. It checks user authorization to request the query, processes approved queries; devise optimal strategy to execute query. Runtime database manager is responsible for concurrency through which it allows multiple users to work simultaneously on the same databases; while ensuring integrity of database.
- Database Manager: The database manager is responsible for creating, deleting, restoring, taking backup, cloning and other database maintenance tasks. Database manager are also responsible for updating patches from vendors.
- Reports: The report generator pulls out useful information from DBMS files and displays it in structured way. This information may then be used for analysis, decision making or business etc.
DBMS is an integral part of any large database. DBMS in itself is a vast field which tells us all about creating, managing modifying or retrieving information from a database while maintaining data integrity, security of all information without any duplication. Now can we imagine life without DBMS?