STRUCTURE OF DBMS
DBMS (Database Management System) acts as an interface between the user and the database. The user requests the DBMS to perform various operations (insert, delete, update and retrieval) on the database. The components of DBMS perform these requested operations on the database and provide necessary data to the users. The various components of DBMS are shown below: -
1. DDL Compiler - Data Description Language compiler processes schema definitions specified in the DDL. It includes metadata information such as the name of the files, data items, storage details of each file, mapping information and constraints etc.
2. DML Compiler and Query optimizer - The DML commands such as insert, update, delete, retrieve from the application program are sent to the DML compiler for compilation into object code for database access. The object code is then optimized in the best way to execute a query by the query optimizer and then send to the data manager.
3. Data Manager - The Data Manager is the central software component of the DBMS also knows as Database Control System.
• Convert operations in user's Queries coming from the application programs or combination of DML Compiler and Query optimizer which is known as Query Processor from user's logical view to physical file system.
• Controls DBMS information access that is stored on disk.
• It also controls handling buffers in main memory.
• It also enforces constraints to maintain consistency and integrity of the data.
• It also synchronizes the simultaneous operations performed by the concurrent users.
• It also controls the backup and recovery operations.
4. Data Dictionary - Data Dictionary is a repository of description of data in the database. It contains information about
• Data - names of the tables, names of attributes of each table, length of attributes, and number of rows in each table.
• Relationships between database transactions and data items referenced by them which is useful in determining which transactions are affected when certain data definitions are changed.
• Constraints on data i.e. range of values permitted.
• Detailed information on physical database design such as storage structure, access paths, files and record sizes.
• Access Authorization - is the Description of database users their responsibilities and their access rights.
• Usage statistics such as frequency of query and transactions.
Data dictionary is used to actually control the data integrity, database operation and accuracy. It may be used as a important part of the DBMS.
Importance of Data Dictionary -
Data Dictionary is necessary in the databases due to following reasons:
• It improves the control of DBA over the information system and user's understanding of use of the system.
• It helps in documentating the database design process by storing documentation of the result of every design phase and design decisions.
• It helps in searching the views on the database definitions of those views.
• It provides great assistance in producing a report of which data elements (i.e. data values) are used in all the programs.
• It promotes data independence i.e. by addition or modifications of structures in the database application program are not effected.
5. Data Files - It contains the data portion of the database.
6. Compiled DML - The DML complier converts the high level Queries into low level file access commands known as compiled DML.
7. End Users - They are already discussed in previous section.