Structure and components of a DBMS

 Structure and components of a DBMS :- 

A typical structure of a DBMS with it's components and relationship between them. The DBMS software is partitioned into several modules. Each module or component is assigned a specific operations to perform. Some of the functions of the DBMS are supported by operating systems to provide basic services and DBMS is built on top of it. The physical data and system catalog are stored on a physical disk. Access to the disk is controlled primarily by OS, which schedules disk input/output. Therefore, while designing a DBMS it's interface with the OS must be taken into account. 

Components of a DBMS:- 

The DBMS accepts the SQL commands generated from a variety of user interface,produces query evaluation plans,executes these plans against the database and returns the answers. Major software modules or components of DBMS are as follows :- 
1). Query processor :- The query processor transform user queries into a series of low level instructions. It is used to interpret the online user query and convert it into an efficient series of operations in a form capable of being sent to the run time data manager for execution. The query processor uses the data dictionary to find the structure of the relevant portion of the database and uses this information in modifying the query and preparing and optimal plan to access the database.
2). Run time database manager:- Run time database manager is the central software component of the DBMS, which interfaces with user submitted application programs and queries. It handles database access at run time. It converts operations in users queries coming directly via the query processor or indirectly via an application program from the users logical view to a physical file system. It accepts queries and examines the external and conceptual schemas to determine what conceptual records are required to satisfy the users request. It enforces constraints to maintain the consistency and integrity of the data, as well it's security. It also performs backing and recovery operations. Run time database manager is sometimes referred to as database control system and has the following components. 
  • Authorization control :- The authorization control module checks the authorization of users in terms of various privileges to users. 

  • Command processor :- The command processor processes the queries passed by the authorization control module. 
  • Integrity checker:- It checks the integrity constraints so that only valid data can be entered into the database. 
  • Query optimizer :- The query optimizer determine an optimal strategy for the query execution. 
  • Transaction manager :- The transaction manager ensures that the transaction properties should be maintained by the system. 
  • Scheduler :- It provides an environment in which multiples users can work on same piece of data at the same time in other words it supports concurrency.  
3). Data manager :- The data manager is responsible for the actual handling of data in the database. It provides recovery to the system which that system should be able to recover the data after some failure. It includes recovery manager and buffer manager. The buffer manager is responsible for the transfer of data between the main memory and secondary storage. It is also referred as the cache manager. 

Execution process of a DBMS :- 

  1. Users issue query using particular database languages, for example, SQL commands. 
  2. The passes query is presented to a query optimizer, which uses information about how the data is stored to produce an efficient execution plan for the evaluating the query. 
  3. The DBMS accepts the users SQL commands and analysis them. 
  4. The DBMS produces query evaluation plans, that is, the external schema for the users, the corresponding external/conceptual mapping, the conceptual schema, the conceptual/internal mapping, and the storage structure definition. Thus, an evaluation plan is a blueprint for evaluating a query. 
  5. The DBMS executes these plans against the physical database and returns the answers to the users. 
Using components such as Transaction manager, buffer manager and recovery manager, the DBMS supports concurrency and recovery. 

Comments