Overall System Structure
DBMS are very large and typically divided into modules. Some of the
services are also provided by the operating system of the host computer.
The following is an example of what the structure might be:
- Query processor
- DML compiler
Translates the Data Manipulation Languages into query
Engine instructions. It might also do optimization for
query.
- Embedded DML precompiler
Converts the DML statements in the an application
program to normal procedure calls in the host
language.
- DDL interpreter
Interprets DDL statements and records them in a set of
tables containing metadata
- Query Evaluation Engine
- Storage Manager
- Authorization and integrity manager
Tests for the satisfaction of integrity constraints and
Checks the authority of user to perform various
action.
- Transaction Manager
Ensures the database remains in a consistent (correct)
state despite system failures.
- File manager
Responsible for the allocation of space on the
disk storage system.
- Buffer manager
Manages the data coming into and out of the system,
Including the caching of data.
- Data structures
- Data files
the database itself.
- Data dictionary
the metadata about the structure
of the database. Actually, this is a
critical element in the DBMS!
- Indices
Used to provide fast access to the data.
- Statistical data
The query processor uses this to optimize
queries.
Silberschatz, et al, have diagrammed this as:
last modified on