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

Advanced Databases Second Semester: Dr. Jihan A. Rasool

This document provides an overview of key components and functions of a database management system (DBMS). It describes what a DBMS is and its main purposes, including defining, constructing, and manipulating databases. It also outlines important DBMS languages like SQL and different system modules like the query compiler, optimizer, runtime processor and stored data manager that work together to define, access and manage database data.

Uploaded by

Ahmed adel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
58 views

Advanced Databases Second Semester: Dr. Jihan A. Rasool

This document provides an overview of key components and functions of a database management system (DBMS). It describes what a DBMS is and its main purposes, including defining, constructing, and manipulating databases. It also outlines important DBMS languages like SQL and different system modules like the query compiler, optimizer, runtime processor and stored data manager that work together to define, access and manage database data.

Uploaded by

Ahmed adel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

Advanced Databases

Second Semester

Dr. Jihan A. Rasool


What is a DBMS?
 Database: Represents some aspect of the real world. DB is a logically coherent collection
of data with some inherent meaning designed, built and populated with data for a
specific purpose.
 Database: Has an intended group of users and some preconceived applications in which
these users are interested.

 A DBMS is a set of general purpose software, that allows the user to:-
 Define the database
Specifying the data types, structures and constraints for the data to be stored
 Construct the database
Store the data on some storage medium that is controlled by the DBMS
 Manipulate the database
Querying to retrieve specific data, updating to reflect changes in the model of the
real world, and generating reports from the data
What should the DBMS do?
1. Store data (!).
2. Control or eliminate redundancy
3. Provide program-data independence
4. Permit multiple views of the data
5. Support sharing by multiple users
6. Support sharing and integration of data between multiple applications
7. Control concurrent access to data
8. Offer various interfaces for data retrieval and manipulation
9. Be self-describing / contain its own catalogue for metadata
10. Support data abstraction
11. Allow complex relationships between objects to be represented
12. Enforce integrity constraints on the data
13. Restrict unauthorised access
14. Facilitate backup and recovery
DBMS Language
 Storage Definition Language (SDL) specifies the internal schema

 Data Definition Language (DDL) defines the conceptual schema – mappings


can be defined in either SDL or DDL. The language is used to describe entities
and relationships for a particular data model. It is used when the database is
defined or when the design is modified. It is not used for obtaining or
modifying data records.

 Data Manipulation Language (DML) – manipulates the data stored in the


database (query language). It can be used to query the data records and
make changes to them.
DBMS Language
 View Definition Language (VDL) specifies the external views and their
mappings to the conceptual schema. This would be needed for a true three-
schema architecture.

Many DBMS use only the DDL and DML or a comprehensive integrated language
such as SQL rather than distinct versions of the above.

Many DBMS also support a host language for the development of applications.
For Access the host language is Visual Basic for Applications.
Question?
• Question: When would it make
sense not to use a database
system?
DBMS
Architecture
DBMS Interfaces

database casual application


administrators users programmers

DDL Privileged Interactive Application


Statements Commands Query Programs
DBMS Components
System Catalogue
• Contains metadata about
stored data and
schemas:
– names and sizes of
files
– storage details of files
– names and data types
of data items
– mappings between
schemas
– constraints
– statistical information
DDL Compiler

• Processes schema
definitions
• Stores schema
descriptions in the
system catalogue
Query Compiler
• Parses and validates
queries
• Compiles queries to
internal form (query
plan)
• Passes compiled
queries to query
optimiser
Query Optimizer
• Rearranges and
reorders operations
within query plan
• Eliminates redundancies
• Identifies appropriate
algorithms and indexes
used to implement
operations
• Consults system
catalogue for statistical
and other information
• Generates executable
code
Pre-compiler
• Extracts DML
commands from
application
programs and Precompiler
sends them to the
DML compiler
DML Compiler
• Compiles DML
into executable
code that can be
sent to the
runtime
processor
Runtime Database Processor
• Executes privileged
commands
• Executes query
plans from the
query optimiser
• Accesses database
through stored
data manager
Stored Data Manager
• Controls access
to information
on disc, using
basic operating
system services
Other Component Modules
• Loading utility is used to load files into DB
• Backup utility dumps DB to secondary storage
(tape, typically)
• Recovery utility deals with failure using backup
information
• File reorganisation utility improves performance
• Performance monitoring provides statistics for
DBA to decide whether to reorganise

You might also like