Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
26 views

DBMS - Lesson 4 - DBMS Components and Structure

Uploaded by

keithrashid8
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
26 views

DBMS - Lesson 4 - DBMS Components and Structure

Uploaded by

keithrashid8
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

DBMS Lesson 4 – The DBMS components and structure

DBMS components
Components are the different parts that work together to define, store and manage collected data
(databases), which collective form the DBMS. A DBMS consists of several components as shown
in the following diagram

Hardware

Software

COMPONENT

Data access OF A Data


language
DBMS

Procedures

Users

Each component has a specific function in the database management system environment as
illustrated in the following diagram:

1 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

In order to facilitate its functions, a DBMS has the following key components:
Hardware
Hardware refers to the physical, electronic devices such as computers I/O devices, storage devices,
etc., that offer the interface between computers and real-world systems. This DBMS component is
used for keeping and storing the data in the database.
Software
Software is the main component of a database management system. It is a set of programs used
to manage and control the overall database. This includes the database software itself, the
Operating System, the network software used to share the data among users, and the application
programs for accessing data in the database.
Note:
 The Software component provides an easy-to-use interface to store, retrieve, and update
data in the database.
 The Software component is capable of understanding the Database Access Language and
converts it into actual database commands to execute or run them on the database.
 Some DBMS software examples include MySQL, PostgreSQL, Microsoft Access, SQL
Server, FileMaker, Oracle, RDBMS, dBASE, Clipper, and FoxPro.
Data
Data is that resource, for which DBMS was designed. The motive behind the creation of DBMS
was to collect, store, process, access and utilize data. Data are raw facts and information that
need to be organized and processed to make it more meaningful. Generally, data comprises facts,
observations, perceptions, numbers, characters, symbols, images, etc.
Note:
 Data is the most important component of the database management system.
 The main task of DBMS is to process the data. Databases are defined, constructed, and
then data is stored, retrieved, and updated to and from the databases.
 The database contains both the metadata (description about data or data about data) and
the actual (or operational) data.
Procedures
Procedures are general rules and instructions that help to design the database and to use a database
management system. Procedures are used to setup and install a new database management system

2 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

(DBMS), to login and logout of the DBMS software, to manage DBMS or application programs,
manage the day-to-day operations, to take backup of the database, and to change the structure of
the database and generate reports.
Users
Users are the people who control and manage the databases and perform different types of
operations on the databases in the database management system. A user can:
 Write commands in the Database Access Language and submit it to the DBMS for
execution, which is then translated and executed by the DBMS.
 Create new databases, tables, insert data, fetch stored data, update data and delete the data
using the access language.
Types of DBMS users
There are three main types of users who play different roles in DBMS namely:
 Application programmers/Software developers: These are users who write the
application programs in programming languages (such as Java, C++, or Visual Basic) to
interact with databases. They are involved in developing and designing the parts of a
DBMS.
 Database Administrators (DBA): These are users who manages the overall DBMS. The
DBA takes care of the security of the DBMS, its availability, managing the license keys,
managing user accounts and access etc.
 End users: These are the users who interact with the database management system to
perform different operations by using the different database commands such
as insert, update, retrieve, and delete on the data, etc.
Classification of database users
Database users can be database classified into different groups namely
Naive users
Naive users are those users who need not be aware of the presence of the database system or any
other system supporting their usage. Naive users are end users of the database who work through
a menu driven application program, where the type and range of response is always indicated to
the user, e.g. a user of an Automatic Teller Machine (ATM) falls in this category.
The user is instructed through each step of a transaction. He or she then responds by pressing a
coded key or entering a numeric value. The operations that can be performed by valve users are

3 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

very limited and affect only a precise portion of the database, e.g. in the case of the user of the
Automatic Teller Machine, user’s action affects only one or more of his/her own accounts.
Online users
Online users are those users who may communicate with the database directly via an online
terminal or indirectly via a user interface and application program. These users are aware of the
presence of the database system and may have acquired a certain amount of expertise with in the
limited interaction permitted with a database.
Sophisticated users
Sophisticated users are users who interact with the system without, writing programs. Instead, they
form their requests in database query language. Each such query is submitted to a very processor
whose function is to breakdown DML statement into instructions that the storage manager
understands.
Specialized users
Specialized users are those users who write specialized database application that do not fit into the
fractional data-processing framework, e.g. Computer-aided design systems, knowledge base and
expert system, systems that store data with complex data types, e.g. graphics data and audio data
Application users
Application users are professional programmers are those who are responsible for developing
application programs or user interface. The application programs could be written using general
purpose programming language or the commands available to manipulate a database.
DBA- Database Administrator
The database administrator (DBA) is the person or group in charge for implementing the database
system, within an organization. The “DBA has all the system privileges allowed by the DBMS and
can assign (grant) and remove (revoke) levels of access (privileges) to and from other users. DBA
is also responsible for the evaluation, selection and implementation of DBMS package.
Data control language
Database Access Language is a language used to write commands to access, update, and delete
data stored in a database. Users can write commands using Database Access Language before
submitting them to the database for execution. Through utilizing the language, users can create
new databases, tables, insert data, and delete data. Examples of database languages include, SQL
(Structured Query Language), My Access, Oracle, etc.

4 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

Note:
 Database Access Language is a simple language designed to write commands to access,
insert, update and delete data stored in any database.
 Database Access language is used to access the data to and from the database, enter new
data, update already existing data, or retrieve required data from DBMS.
 The user writes some specific commands in a database access language and submits these
to the database, which then processes the data and generates and displays a set of results
into a user readable form.
 Users can write commands or query the database using Database Access Language before
submitting them to the database for execution.
Structure of a database management system
A database managements system is partitioned into different modules that deal with each of the
responsibilities of the overall database management system. Some of the functions of the
database system may be provided by the computer operating system. In most cases the computer
operating system provides only the most basic services and the database system must build on
that base. Thus, the design of databases management system must include consideration of the
interface between the database system and the operating system.
Functional components of a database management system
The structure of a database management system also referred to as the overall system
structure or database architecture is broadly divided into the three functional components or
modules namely
 The query processor
 The storage manager
 The disk storage

5 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

Naive users Application Sophisticated Database


programmers users administrator

Use Write Use Use

Applications Application Query Administration


Interfaces programs Tools tools

Complier and
Application D M L queries DDL interpreter
linker
program
Object
Code

Query evaluation Query Processor


D M L complier
engine
and organizer

Storagemanager
Storage manager Buffer manager Transaction
File manager Authorization and manager
integrity
manager

Disk storage

Data Indices Statistical Data


data dictionary

6 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

The query processor


The query processor interprets the requests (queries) received from end user via an application
program into instructions. It also executes the user request which is received from the DML
compiler.
Parts of a query processor
The query processor contains the following components:
 DML compiler: This query processor component will translates DML statements in a
query language into low level instructions (machine language) that the query evaluation
engine understands and so that they can be executed.
 DDL Interpreter: This query processor interprets DDL statements and fetch the
definitions in the data dictionary, i.e. it processes the DDL statements into a set of table
containing Meta data (data about data).
 Embedded DML Pre-compiler: This query processor components processes DML
statements embedded in an application program into procedural calls.
 Query Optimizer/Query evaluation engine: It executes the instruction generated by
DML Compiler.

Storage manager/ Run time database manager


Storage manager also known as a database control system is a program module which acts
like interface between the data stored in a database and the application programs and queries
submitted to the system. It maintains the consistency and integrity of the database by applying
the constraints and executing the DCL statements. It is responsible for updating, storing,
deleting, and retrieving data in the database.
Parts of a storage manager
The storage manager components include:
 Authorization and integrity manager: This storage manager component ensures role-
based access control, it checks for integrity constraints and authority of users to access
data, i.e. checks whether the particular person is privileged to perform the requested
operation or not.
 Integrity manager: This storage manager component checks the integrity constraints
when the database is modified.

7 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

 Command processor: The command processor processes the queries passed by


authorization control module.
 Transaction manager: This storage manager component controls concurrent access by
performing the operations in a scheduled way that it receives the transaction. Thus,
 It ensures that the database remains in the consistent state before and after
the execution of a transaction.
 Ensures that the database remains in a consistent state although there are
system failures.
 It manages the file space and the data structure used to represent information
in the database.
 Manages the allocation of space on disk storage and the data structures used to
represent information stored on disk.
 Buffer Manager: This storage manager component is responsible for retrieving data
from disk storage into main memory. It enables the database to handle data sizes that are
much larger than the size of main memory.
 Data manager also known as the cache manager, this storage manager
component responsible for handling of data in the database, providing a recovery to the
system that allows it to recover the data after a failure
Disk storage
Disk storage also known as the drive storage is a general category of storage mechanisms
where data is recorded by various electronic, magnetic, optical, or mechanical changes to a
surface layer of one or more rotating disks. It contains the following components:
 Data files: This is a disk storage component that stored stores data itself.
 Data dictionary: This is a disk storage component used to store information about the
database itself. A data dictionary is a set of read-only table and views, containing the
different information about the data used in the enterprise to ensure that database
representation of the data follow one standard as defined in the dictionary. In other
words, it is the repository of information that governs the metadata (data about data). It
stores metadata about the structure of the database
 Indices: This is a disk storage component that provides fast access to data items

8 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

Additional DBMS components


Database engine
The database engine is a DBMS component that is responsible for storing, processing, and
securing data. It provides controlled access and rapid transaction processing to address the
requirements of the most demanding data consuming applications. It is often used to create
relational databases for online transaction processing or online analytical processing data.
Report writer
The report writer known as the report generator, is a DBMS components that extracts
information from one or more files and presents the information in a specified format. Most
report writers allow the user to select records that meet certain conditions and to display selected
fields in rows and columns, or also format the data into different charts.
Reporting and monitoring tools
Reporting and monitoring tools are another standard component that comes with a DBMS.
Reporting tools will enable users to generate reports while monitoring tools enable monitoring
the databases for resource consumption, user activity, etc.
Storage engine
The storage engine is the DBMS component that interacts with the file system at an operating
systems level to store data. All SQL queries which interact with the underlying data go through
the storage engine.
Query language
A database access language is a DBMS component required for interacting with a database, from
creating databases to simply inserting or retrieving data. A proper DBMS must support one or
multiple query languages and language dialects. Structured query language (SQL) and
MongoDB Query Language (MQL) are two query languages that are used to interact with the
databases. In many query languages, the query language functionality can be further categorized
according to specific tasks as follows:
 Data Definition Language (DDL): The data definition language consists of commands
that can be used to define database schemas or modify the structure of database objects.
 Data Manipulation Language (DML). The data manipulation language consists of
commands that directly deal with the data in the database.

9 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

 Data Control Language (DCL). The data control language deals with the permissions
and other access controls of the database.
 Transaction Control Language (TCL). The transaction control language consists of
commands which deals with internal database transactions.
Optimization engine
The optimization Engine is a DBMS component that allows the DBMS to provide insights into
the performance of the database in terms of optimizing the database itself and queries. When
coupled with database monitoring tools, it can provide a powerful toolset to gain the best
performance out of the database.
Metadata catalog
The metadata catalog a DBMS components that acts as the centralized catalog of all the objects
within the database. When an object is created, the DBMS keeps a record of that object with
some metadata about it using the metadata catalog. Then, this record can be used to:
 Verify user requests to the appropriate database objects
 Provide an overview of the complete database structure
Log manager
The Log manager is a DBMS component which keeps all the logs of the DBMS. These logs
consist of user logins and activity, database functions, backups and restore functions, etc. The log
manager ensures all these logs are properly recorded and easily accessible.
Data utilities
In addition to all the above, most DBMS software comes with additional inbuilt utilities to
provide functionality such as:
 Data integrity checks
 Backup and restore
 Simple database repair
 Data validations
The execution process of a DBMS
The following are the logical steps followed while executing users request to access the database
system:
1. Users issue a query using particular database language, for example, SQL commands.

10 Complied by Mr. P.K Munene


DBMS Lesson 4 – The DBMS components and structure

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 analyses them.
4. The DBMS produces query evaluation plans, that is, the external schema for the user, 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 user.
Note: Using components such as transaction manager, buffer manager, and recovery manager,
the DBMS supports concurrency and recovery.
References
 Dr. S.B Gupta, A. Mittal (2009) Introduction to database management systems. Laxmi
publications PVT limited.
 C.Rajiv (2016) Database Management System (DBMS). A practical Approach 5th
Edition. S.Chand Publishing.
 R.P Mahapata, Govind Verma (2013) Database Management System. Khama Publishing
House.
 T.Connolly, C.Begg (2005) Database Management System. A practical approach to
design, implementation and management. Pearson Education Limited
 https://www.studytonight.com/dbms/database-model.php
 http://www.myreadingroom.co.in/notes-and-studymaterial/65-dbms/464-components-of-
database-systems.html
 https://www.javatpoint.com/dbms-architecture
 https://beginnersbook.com/2018/11/dbms-architecture/
 https://www.relationaldbdesign.com/database-design/module2/intro-relational-database-
structure.php.

 Fundamentals of Database Systems by Ramez Elmasri.

 Database System Concepts by Silberschatz, Sudarshan and Korth.

 Database Management Systems by Raghu Ramakrishnan and Johannes Gehrke

11 Complied by Mr. P.K Munene

You might also like