STRUCTURE OF DBMS or Components 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.
The Main Functions Of Data Manager Are: –
• 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 documenting 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.
4.
Data Files - It
contains the data portion of the database.
5.
Compiled DML - The DML complier converts the high level Queries
into low level file access commands known as compiled DML.
6.
End Users - End users are the people whose jobs require access to the database for querying, updating, and generating reports;
There are several categories of end users:
- Casual end users occasionally access the database, but they may need different information each time. They use a sophisticated database query interface
- Naive or parametric end users make up a sizable portion of database end users. Their main job function revolves around constantly querying and updating the database, using standard types of queries and updates
- Sophisticated end users include engineers, scientists, business analysts, and others who thoroughly familiarize themselves with the facilities of the DBMS in order to implement their own applications to meet their complex requirements.
- Standalone users maintain personal databases by using ready-made pro-gram packages that provide easy-to-use menu-based or graphics-based interfaces. An example is the user of a financial software package that stores a variety of personal financial data.