Discuss the architecture of DBMS. Or Explain the architecture of database system.Ripunjay Tiwari
Ans. A database system is partitioned into module that deal with each of the responsibilities of the overall system. The functional components of a database system can be divided into the storage manager and the query processor components. Fig. 4.5 shows the structure of DBMS.
In fig.4.5, the functional components of DBMS have query components and storage components as follows –
The Query processor – The query processor components include –
- DDL Interpreter – Its function is to execute the low-level statements and records them in a set of tables that having metadata.
- DML Compiler – Its function is to convert DML statements in source form of query language into necessary object from (i.e., low-level instructions) that query evaluation engine understands.
- DML Precompiler – Its function is to convert DML statements embedded in application program to normal procedure calls in host language. To generate appropriate code, the precompiler must interact with DML compiler.
- Query Evaluation Engine – Its function is to execute the low-level instruction generated by DML compiler.
Storage Manager – A storage manager is a program module that provides the interface between the low-level data stored in the database and the application programs and queries submitted to be system.
The storage manager components include –
- Authorization and Integrity Manager – Tests for the satisfaction at integrity constraints and checks the authority of users to access data.
- Transaction Manager – Ensures that the database remains in consistent state despite system failure and concurrent transaction executions proceed without conflicting.
- Buffer Manager – Responsible for data fetching from disk storage into main memory and deciding what data to cache in memory.
- File Manager – managers allocation of space on disk storage and data structures used to represent information that stored on disk.
The storage manager implements several other data structures are needed as the part of physical system for implementation –
- Indices – These provide fast access to the data items that hold particular values.
- Statistical Data – This store statistical information about data in database. To execute a query, this information is used by query processor.
- Data Files – These are actual files that store the data in database i.e., these are database files
- Data Dictionary – This stores metadata about each and every entity of the database along with security and integrity constraints.