Transcript Chapter-2
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 1
Chapter 2
Database Concepts and Architecture
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Data Models, Schemas and Instances
A Data Model is:
A collection of concepts that can be used to describe the structure
of a database.
By structure of a database we mean the data-types, relationships and
constraints that should hold on the data.
It provides the means to achieve data abstraction by hiding
unneeded details of data storage.
Most data models include a set of basic operations for specifying
retrieval and updates on the database
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 3
Categories of Data Models
Data models can be categorized according
to the types of concepts they use to
describe the database structure
High Level (Conceptual) data Models provide concepts close to
the way users perceive data
Low Level (Physical) data Models provide concepts that describe
the details of how data is stored in the computer
Between the two extremes is a class of representational data
Models, which provide concepts that may be understood by end
user but not too far removed from the way data is organized within
the computer
It hides some details but can be directly implemented
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 4
Categories of Data Models (continued)
Conceptual data Models use concepts such as entities, attributes
and relationships.
–
–
–
An entity represents a real world object or concept (employee, project).
An attribute represents some property of interest that further describes
an entity (employee name).
A relationship among two entities represents an interaction among them.
Representational Data Models are the models used most
frequently and they include a widely used relational data model,
network and hierarchal models that been widely used in the past.
It represent data by using record structures
Physical Data Models describe how data is stored in the
computer by representing information such as record formats,
record ordering and access path
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 5
Schemas, Instances and Database State
It is important to distinguish between the description of a
database and the database itself:
The description of a database is called the database schema,
which is specified during the database design and is not
expected to change frequently
We call each object in the Schema -Such as Student or
Course- a Schema Construct
Database State:
It is the data in a database at a particular moment
Every time we insert or delete a record we change the state of
a database
Schema change is called Schema Evolution
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 6
DBMS Architecture & Data Independence
A three schema architecture is an architecture
that proposed to help in achieving & visualizing
the three important characteristics of:
program data independence
support of multiple users &
use of catalog to store data description
The goal of the three-schema architecture shown in
Figure 2.2 is to separate the user applications and the
physical database
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 7
The Three-Schema Architecture
Schemas can be defined at the following levels:-
The internal level: describes the physical storage structure
of the database. It uses physical data model.
The conceptual: describes the structure of the whole
database for users. It hides the details of physical storage
structure and concentrate on describing entities, data types,
relationships, user operations and constraints. High level
data model can be used at this level.
The External or View level: includes a number of external
schemas or user views. Each external schema describes the
part that a particular user group is interested in and hides the
rest. High level data model can be used at this level.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 8
Three-Schema Architecture
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 9
Data Independence
Three Schema architecture can be used to explain the
concept of data independence
It is the capacity to change the schema at one level without
having to change it at the next higher level
There are two types of Independence:
Logical data Independence:
Physical Data independence:
the capacity to change the conceptual schema without having to
change external schemas or application programs (expand or
reduce)
the capacity to change the internal schema without having to
change the conceptual or (external) schemas
the two levels of mapping create an overhead during execution of a
query, leading to inefficiencies in the DBMS. Because of this few
DBMS have implemented the full three-schema architecture.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 10
Database Languages
The DBMS must provide appropriate languages and
interfaces for each category of users:
The first step in implementing a database is to specify conceptual and internal
schemas and any mappings between them
In DBMS where no strict levels separation is maintained one language called
(DDL) is used to define both schemas
A DDL compiler is used to process the DDL statements to identify description
of the schema constructs and store them in the DBMS catalog
In a DBMS where separation exists, DDL is used to specify the conceptual
schema only. A Storage Definition Language (SDL) is used to define internal
schema
For true three-schema architecture a third language, the View Definition
Language (VDL) is used to specify user views
Once the database is populated with data a DML is used to manipulate data
In current DBMS all the above languages, are not considered distinct
languages; rather a comprehensive integrated language is used.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 11
DBMS INTERFACES
User friendly interfaces provided by DBMS include the
following:
Menu-Based interfaces for Browsing: They present the user with list of
options, called menus that lead the user through the formulation of a
request.
Forms-based interfaces: it displays a form to each user. Users can fill out
all of the form entries to insert new data or fill out certain entries and the
DBMS will retrieve matching data for the remaining entries.
Graphical user Interface: a GUI displays a schema to the user in a
diagrammatic form. The user can then specify a query by manipulating the
diagram. Most GUI use a pointing device
Natural Language Interfaces: these interfaces accept requests written in
English or any other language and attempt to understand them
Interfaces for Parametric Users: repeated work
Interfaces for the DBAs: privileged commands
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 12
The Database System Environment
DBMS Component Modules:
The database and DBMS catalog are usually stored on disk. Access to the
disk controlled by the operating system (OS).
A higher – level, Stored Data Manager Module (component) controls access
to DBMS information that is stored on disk
If we refer to figure below doted lines and circles marked A,B,C,D and E
shows accesses under the control of this stored manager.
The DDL compiler processes schema definitions, specified in the DDL
statements and stores description of schemas in the catalog including
information about table names, data items, mapping into many schemas and
constraints.
The runtime database processor component handles database accesses at
runtime; it receives retrieval or update operations and carries them out on
the database.
The Query compiler handles high–level queries that are entered
interactively. The pre–compiler extracts DML commands from an
application program written in a host programming language. These
commands are sent to the DML compiler to be compiled into object code for
database to access it. The rest of the program is sent to the host language
compiler.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 13
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 14
Database System Utilities
Most DBMSs have database utilities that help
the DBA in managing the database:
Loading: used to load existing data files into the database (e.g. text files).
The source & target structure are specified to the utility which reformat &
stores data
Backup: backup copy of the database by dumping the entire data onto a
tape/file. It can then be used to restore data in case of disaster (different
types)
File Reorganization: reorganize a database file into a different file
organization to improve performance
Performance Monitoring: It monitors database usage and provide
statistics for decision making
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 15
Tools, Application Environments and
Communication Facilities
Other tools available to database designers,
users and DBAs include:
CASE tools which used in design phase of database
Data Dictionary to store catalog info & other info such as design decisions,
usage standards, application program description and user info.
Application Development tools:
Power Builder, Designer 2000 … etc are becoming quite
Popular because of their features of GUI Development,
Querying & updating, and application program devt.
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 16
Classification of Database Management Systems
Several criteria are used to classify DBMS:
Data Model: on which DBMS is based. The two types currently used
are Relational data Model and Object data Model
Number of users: supported by the system. Single user system and
multi-user systems
Number of sites: over which the database is distributed. A DBMS is
centralized if the data is stored at a single computer site. A distributed
DBMS (DDBMS) can have the actual database and DBMS at multiple
sites
The cost of the DBMS.
The type of access path for storing files
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 17
END OF CHAPTER TWO
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Slide 1- 18