3. Data Models
• A collection of concepts that can be used to
describe the structure of a database (data types,
relationships, and constraints)
• basic operations (retrieval and updates)
• specify the dynamic aspect or behavior of a
database application( user-defined operations )
• example: COMPUTE_GPA, which can be applied
to a STUDENT object
school.edhole.com
4. Categories of Data Models
• High-level or conceptual data models (common
users)
• low-level or physical data models (describe the
details of how data is stored )
• in between, representational (or implementation)
data models can serve both categories above
school.Jan 29, 2002
edhole.com
5. Jan 29, 2002
Conceptual Data Model
• Use concepts such as
– Entities:a real-world object or concept (DEPT)
(COURSE)
– Attributes:property of interest that further describes an
entity (dept no, name, telephone, etc)
– Relationships:interaction among the entities (DEPT)
provides (COURSE)
school.edhole.com
6. Jan 29, 2002
Physical Data Model
• Describes how data is stored in the computer.
• It represents info such as
– record formats
– record orderings
– access path: make search more efficient
school.edhole.com
7. Representational Data Model
• Used in traditional commercial DMBS
• they include
– Relational Data model
– Network model
– Hierarchical model
school.Jan 29, 2002
edhole.com
8. Jan 29, 2002
Schemas
• Is the description of the database (not database itself)
– Specified during database design
– Not expected to change frequently
– A displayed schema is called a schema diagram (Fig 2.1)
• Each object in the schema-such as STUDENT or
COURSE-is a schema construct.
• Schema diagram represents only some aspects of a
schema (name of record type, data element and
some type of constraint)
school.edhole.com
10. Instances and Database State
• The data in the database at a particular moment in time is
called a database state or snapshot or current set of
occurrences or instances in the database
• When we define a new database we have database state is
empty state (schema specified only in DBMS)
• The initial state when the database is first populated
• Then At any point in time, the database has a current state
• schema evolution: when we need to change the schema
school.Jan 29, 2002
edhole.com
11. The Three-Schema Architecture
• Importance of using DB approach
– insulation of programs and data
– support of multiple user views
– use of a catalog to store the database description (schema).
• The aim is to separate the user application and physical
DB
• schema can be defined into three levels:
– The internal level has an internal schema
– describes the physical storage structure of the database.
– uses a physical data model
school.Jan 29, 2002
edhole.com
13. The Three-Schema Architecture
– The conceptual level has a conceptual schema describing the
structure of the whole database for a community of users.
– It hides the details of physical storage structures and
concentrates on describing entities, data types, relationships,
user operations, and constraints.
– A high-level data model or an implementation data model
can be used at this level.
– The external or view level includes a number of external
schemas or user views describing the part of the db that a
particular user group is interested in and hides the rest of the
db from that user group.
– A high-level data model or an implementation data model
can be used at this level.
school.Jan 29, 2002
edhole.com
14. Jan 29, 2002
Data Independence
• Is the capacity to change the schema at one level of a
database system without having to change the schema at
the next higher level.
• Logical data independence: capacity to change the
conceptual schema without having to change external
schemas or application programs.
• Physical data independence: capacity to change the
internal schema without having to change the conceptual
(or external) schemas
school.edhole.com
15. Jan 29, 2002
DBMS Languages
• Data Definition Language DDL: Language to specify
conceptual and internal schemas for the database and any
mappings between the two.
• Storage definition language SDL: used when clear
distinction between conceptual and internal schema.
• view definition language VDL: specify user views and
their mappings to the conceptual schema.
• data manipulation language DML:retrieval, insertion,
deletion, and modification of the data
school.edhole.com
16. Jan 29, 2002
DBMS Languages …..
• SQL relational database language: represents a
combination of DDL, VDL, and DML, as well as
statements for constraint specification and schema
evolution
• There are two main types of DMLs:
– A high-level or nonprocedural DML : specify complex DB
operations. Example SQL(set-at-a-time)
– A low-level or procedural DML: retrieve individual records
or objects from DB and process each separately (record-at-a-time).
school.edhole.com
17. Jan 29, 2002
DBMS Interfaces
• Menu-Based Interfaces for Browsing
– menus leads to formulation of a request
• Forms-Based Interfaces
– display a form for each user (insert, select)
– designed for naïve users.
• Graphical User Interfaces (GUI)
– display schema as diagram.
– Utilize both menu and forms.
school.edhole.com
18. Jan 29, 2002
DBMS Interfaces
• Natural Language Interfaces
– Accept requests in native language and attempt to
understand them.
– Refers to words in the schema and (standard words) to
interpret the request.
• Interfaces for Parametric Users (eg tellers)
– goal is to min the number of keystroks required. (use of
function) keys
• Interfaces for the DBA
– creating accounts, system privileges, changing schema,
schoole.tec.dhole.com
19. Jan 29, 2002
The Database System
Environment
• DBMS Component Modules (fig 2.3)
– db & DBMS stored in disk controlled by OS.
– Stored data manager control access to DBMS
– SDM puts data in buffers in main memory
– DDL compiler process schema definitions and store it
in meta data.
– Run-time-data-proc handles DB accesses @runtime
– receive update or retrieve and solve them on the DB
– Query-Compiler: handles high level queries: parse,
analyze and interpret uses DB access code.
– Precompiler e school.edhole.cxotrmact DML commands from app program
21. Database System Utilities
• Loading: load existing files into the DB
• Backup: creates backup copy of the DB
• File reorganization: reorganize files for better
performance
• Performance monitoring: monitor DB usage and
provide statistics to DBA
school.Jan 29, 2002
edhole.com
22. Tools, Application Environments
& Communications Facilities
• Case: design phase
• data (information) repository: store catalog info,
design decisions, usage, app program description,
user information
• Application Developer: e.g. power builder. Help
in development of DB design, GUI, query, update
etc.
• Comm Software: allow users remotely to access
the DB
school.Jan 29, 2002
edhole.com
23. Classification of DBManagement
Jan 29, 2002
Systems
• Data model:
– relational, object, object-relational, hierarchical, network, and
other.
• Number of users supported by the system.
– Single-user systems and Multiuser systems
• Number of sites over which the database is distributed.
– centralized, distributed DBMS (DDBMS) ,Homogeneous
DDBMSs ,federated DBMS (develop software to access
several autonomous preexisting databases stored under
heterogeneous DBMSs. )
school.edhole.com
24. Classification of DBManagement
Jan 29, 2002
Systems …..
• Cost of the DBMS: 10K-100K. Single 100-3K
• General-purpose vs Special-purpose (When
performance is a primary consideration.
– Example: on-line transaction processing (OLTP)
systems, which must support a large number of
concurrent transactions without imposing excessive
delays. )
school.edhole.com