There are two different ways to look at the architecture of a DBMS:
The logical DBMS architecture and the physical DBMS architecture. The logical architecture deals with the way data is stored and presented to users, while the physical architecture is concerned with the software components that make up a DBMS.
Logical DBMS Architecture
The logical architecture describes how data in the database is perceived by users.
This architecture divides the system into three levels of abstraction: the internal or physical level, the conceptual level, and the external or view level.
The objective of the three level architecture is to separate each user’s view of the database from the way the database is physically represented.
The External or View Level
The external or view level is the highest level of abstraction of database.
There can be many external views as any number of external schema (tables) can be defined and they can overlap each other.
The Conceptual Level or Global level
The conceptual level presents a logical view of the entire database as a unified whole. It allows the user to bring all the data in the database together and see it in a consistent manner. The first stage in the design of a database is to define the conceptual view, and a DBMS provides a data definition language for this purpose.
The Internal or Physical Level
The collection of files permanently stored on secondary storage devices is known as the physical database. The physical or internal level is the one closest to physical storage, and it provides a low-level description of the physical database, and an interface between the operating systems file system and the record structures used in higher levels of abstraction.
Physical DBMS Architecture
The physical architecture describes the software components used to enter and process data, and how these software components are related and interconnected.
◦The DML precompiler converts DML statements (such as SELECT…FROM in Structured Query Language SQL) embedded in an application program to normal procedural calls in the host language.
◦The DDL compiler converts the data definition statements (such as CREATE TABLE …. in SQL) into a set of tables containing metadata tables. These tables contain information concerning the database and are in a form that can be used by other components of the DBMS. These tables are then stored in a system catalog or data dictionary.
◦File manager manages the allocation of space on disk storage
◦A database manager is a program module responsible for interfacing with the database file system to the user queries.
◦The query language processor is responsible for receiving query language statements and changing them from the English-like syntax of the query language to a form the DBMS can understand.
◦The person having control on data and programs accessing that data is called the database administrator (DBA).
A data dictionary provides the definition of data items, how they fit into the data structure and how they relate to other entities in the database. In DBMS, the data dictionary stores the information concerning the external, conceptual and internal levels of the databases.