1
IST 210 Databases and DBMSs
Todd S. BacastowJanuary 2005
2
IST 210 A Process of Mapping
Real WorldConceptualData Model
–High level model–Comprises
–“Things”–“Descriptions”–“How things are connected”
–Relational–Hierarchical–Network–Object Oriented
LogicalData Model
PhysicalData Model
3
IST 210 Data Models A data model describes
the structure of a database data types, relationships, constraintsa set of basic operations
insert, delete, modify, retrieve user-defined operations
4
IST 210 Types of Data Models
Conceptual concepts: entity, attribute, relationship Entity-Relationship model (DBMS-independent)
Logical data represented by record structure E.g. relational, network, hierarchical
Physical describes how data is stored in the disk
5
IST 210
External Level
Conceptual Level
Internal Level
DBMS Architecture
Conceptual Schema
Internal Schema
ExternalView
ExternalView
6
IST 210 External Level
Describes a part of the database for a particular user group and hides the rest
Supports multiple views of a database Same data model as the conceptual schema
External Level
ExternalView
ExternalView
Conceptual Schema
Internal Schema
ExternalView
ExternalView
7
IST 210 Conceptual Level
Data Abstraction hides unnecessary details
Conceptual Level hides physical layer
Data types, Constraints, User Operations Uses both conceptual/logical data models
Conceptual Level Conceptual Schema
Conceptual Schema
Internal Schema
ExternalView
ExternalView
8
IST 210 Internal Level Defines physical storage on the disk Defines data location
path, blocks, pages, … Device specific
STORED_EMP BYTES=20PREFIX BYTES=20, OFFSET=0EMP# BYTES=20, OFFSET=6, INDEX=EMPXDPET# BYTES=20, OFFSET=12PAY BYTES=20, OFFSET=16, ALIGN=FULLWORD
Internal Level Internal Schema
Conceptual Schema
Internal Schema
ExternalView
ExternalView
9
IST 210 DB Schema vs. DB State
Database Schema description of the database is specified during database design
Database State (extension of the schema) current state of the database: a snapshot actual data instances in a DB changes over time by update initially, a database is empty state with no data
10
IST 210 DB Schema vs. DB State
Valid State DBMS checks every state of the database does it satisfy the structure and constraints
specified in the schema? Schema Diagram
Displays database schema
11
IST 210 Example Schema
12
IST 210 Database Schema
Metadata descriptions of the schema constructs and
constraints stored in the database catalog
Schema Evolution Schema change prompted by the change of
application requirements
Designer Goal : develop a schema
that changes infrequently
13
IST 210 DBMS Mapping
Mappings for multi-level DBMS to transform a request specified at one level
into the request at another level access: external conceptual internal DB retrieve: DB internal conceptual external
Three-Schema Architecture advantage: true data independence disadvantage: overhead cost of mappings
Conceptual Schema
Internal Schema
ExternalView
ExternalView
14
IST 210 Data Independence What happens when the schema changes at
some level? Data Independence
the capacity to change the schema at one level without having to change the schema at the next higher level
Two Types of Data Independence logical and physical data independence
15
IST 210 Data Independence (con’t)
1. Logical Data Independence capacity to change the conceptual schema without
having to change the external schema when: logical reorganization of the database
2. Physical Data Independence change the internal schema without having to
change the conceptual schema when: physical reorganization of the files
16
IST 210 DBMS Languages
Data Definition Language (DDL)• to define DB conceptual schema
Data Manipulation Language (DML)• to specify database requests: update, retrieval• high-level DML: describes which data to retrieve• low-level DML: describes how to retrieve it
17
IST 210 DBMS Languages (con’t)
High-level DML: set-oriented, declarative Low-level DML: record-oriented, procedural Types of DML
• data sublangauge: DML embedded in a general purpose language (for DBAs)
• query language: high-level, interactive, stand-alone DML (casual end users)
• user-friendly interface for DML (naïve users)
18
IST 210 Database System Environment
DBMS Component Modules Managers, i.e., disk control Compiler, i.e., query Processors
19
IST 210
20
IST 210 DBMS Interfaces
Menu-based interfaces Forms-based interfaces Natural language interfaces
interpret requests to high-level queries Command line
21
IST 210 System Utilities & Tools
Loading loads existing data files into the database DBMS conversion, reformatting the data
Backup provides a backup copy of the database incremental backup: updates changes only
File Reorganization to improve performance
22
IST 210 System Utilities & Tools
Performance Monitoring monitors database usage provides statistics
Data Dictionary also called information repository stores additional information: (catalog) + design
decisions, usage standards, user information, application program descriptions
23
IST 210
Terminal
Mainframe
Storage
Logic
Presentation
Network
Mainframe/terminal
Mainframe/ terminal
Storage, Logic and Presentation all in same place
No platform specific user interface
Doesn’t take advantage of client machine
24
IST 210
Client
Server
Storage
Logic
Presentation
Network
DBMS
Client Server without stored procedures
Database server handles storage only Logic and presentation in client Takes advantage of client cpu Logic changes require client
redistribution Integrity not maintained if other DB
tool used Each user needs to be a specific
database user
25
IST 210
Client
Server
Storage
Logic
Presentation
Network
DBMS
Client Server with stored procedures
Database handles storage and business logic
Logic changed in one place, no redistribution of client
DBMS dependent code Each user needs to be
specific database user
26
IST 210
Client
Server
Storage
Logic
Presentation
Network
DBMS
Client Server with 3 tiers
Storage in database Logic in Transaction
Monitor Client does presentation
only Authentication and
Access control can be done in TP monitor
Each user does NOT have to be a database user
27
IST 210
Client
Database Servers
Storage
Logic
Presentation
Network
DBMS
Transaction Monitor
Network
DBMS
Storage
Client Server with 3 tiers
A component which sits between the client and the database server to insure reliable updates of information
Used in airline reservation and banking systems
28
IST 210 Why 3 Tiers?
Scalability multiple transaction monitors load balancing
Flexibility Complexity
update multiple data stores Two phase commit with multiple databases
29
IST 210 Classifications of DBMSs
Data Model (OO, Relational, hierarchical) Number of Users ( single vs. multi-user) Number of Database Sites ( centralized vs.
distributed vs. federated) Special-purpose vs. general-purpose
Top Related