Title: Database System Concepts and Architecture
1Database System Concepts and Architecture
- From Fundamentals of Database Systems by
Elmasri/Navathe
2Evolution of DBMS Packages
- Early monolithic systems
- Tightly integrated systems
- Modular design, with a client/server system
architecture - Client module typically handles UI
- Server module typically handles data storage,
access, search etc. - Mirrors trends in computing
3Data Models
- Data Abstraction
- In this context, also refers to different users
perceiving data at their preferred level - Data Model
- Collection of concepts that can be used to
describe the structure of the database - Structure of the database
- Data types, relationships, and constraints
4Data Models (contd)
- Most models include basic operations for
specifying retrievals and updates - Specify a set of valid user-defined operations
that are allowed on the database objects - Dynamic aspect or behavior
5Categories of Data Models
- High-level or Conceptual Data Models
- Provide concepts that are close to the way many
users perceive data (end users) - Use concepts such as entities, attributes and
relationships - Representational or Implementation Data Models
- Concepts may be understood by end users
- Hide some details of data storage
- These models include relational, network and
hierarchical models - Sometimes called record-based data models since
data is represented using record structures
6Categories of Data Models (contd)
- Low-level or physical data models
- Provide concepts that describe the details of how
data is stored as files - Record formats, record orderings, and access
paths - Access Path is a structure that makes the search
for particular database records efficiently - Index is an example of an access path that allows
direct access to data using an index term or a
keyword
7Schemas, Instances, and Database State
- Database Schema
- The description of the database
- Specified during database design
- Expected to change when requirements change (some
operations for schema evolution while database is
in operation are available) - Schema Diagram
- Most data models have certain conventions for
displaying schemas as diagrams - Displays only some aspects of a schema, such as
names of record types and data items - Some constraints are difficult to represent
- Schema Construct
- Each object in the schema (e.g., student, course)
8(No Transcript)
9Database State or Snapshot
- Actual data in the database may change frequently
- The data in the database at a particular moment
in time is called a database state or snapshot - Also called the current set of occurrences or
instances in the database
10Database Schema vs. Database State
- The distinction is very important
- When we define a database, we specify its
database schema only to the DBMS - Database state is the empty state (w/ no data)
- Initial state when the database is first
populated or loaded with initial data - Current State State at any point in time. Every
time an update operation is applied to the
database, database state changes
11Database Schema vs. Database State (contd)
- Valid State A state that satisfies the structure
and the constraints specified in the schema - The schema is sometimes called the intension, and
a database state is called an extension of the
schema
12Three-Schema Architecture
- The goal is to separate user applications and
physical database - Schemas defined at
- External (or View) Level
- includes external schemas or user views
- Conceptual Level
- Schema describes database structure
- Internal Level
- Schema describes physical storage of database
- Mapping Process of transforming requests and
results between levels
13(No Transcript)
14Data Independence
- Definition Capacity to change the schema at one
level without having to change the schema at the
next higher level (mappings may change) - Logical Data Independence
- Conceptual Schema/External Schema
- Physical Data Independence
- Internal Schema/Conceptual Schema
15Database Languages
- Data Definition Language (DDL)
- If DBMS does not clearly distinguish between
levels, DDL is used to define conceptual and
internal schemas - If it does used to define conceptual schema only
- Storage Definition Language (SDL)
- Used to define internal schema
- View Definition Language (VDL)
- Specify user views
- Data Manipulation Language (DML)
16DML Types
- High-level or nonprocedural DML
- Used on its own (e.g., entered interactively from
a display monitor) to specify complex operations - or embedded in a general-purpose programming
language (statements will be precompiled) - Set-at-a-time (or set oriented) DML (e.g., SQL)
- Low-level or procedural DML
- Must be embedded in a programming language
- Also called record-at-a-time (e.g., DL1 for
hierarchical model) - Typically retrieves and processes each record
from a set - Needs programming concepts such as looping
17DML (contd)
- Query in high-level (declarative) DML often
specifies what data to retrieve not how to
retrieve it - Query Language
- Embedded
- Host language
- Data Sublanguage high-level DML
18DBMS Interfaces
- Menu-Based interfaces for Web Clients or Browsing
- Forms-Based Interfaces (e.g., Oracle Forms)
- Graphical User Interfaces
- Natural Language Interfaces
- Speech Input and Output
- Interfaces for Parametric Users (e.g., tellers)
- Interfaces for the DBA
19Database System Environment
- DBMS Component Modules
- At a higher level (than the OS) Stored Data
Manager Module controls access to the DBMS info
(both database and catalog)
20(No Transcript)
21Database System Utilities
- Some common utilities for the DBA
- Loading utility to load existing files
- conversion tools existing source internal
schemas - Backup
- Database Storage Reorganization
- Performance Monitoring
- Interfacing with the Network
22Tools, Application Environments, Communication
Facilities
- Tools for database designers, users
- Expanded Data Dictionary (data repository) system
- In addition to schemas and constraints, stores
design decisions, application program
descriptions, user info. - Application Development Environments
- Communications Software
- DB/DC integrated DBMS and data communications
system
23DBMS Architectures
- Centralized DBMS Architecture
- Client/Server Architecture
- Two-Tier
- Client Query Server (or Transaction Server)
- ODBC, JDBC
- Client Data Server
- Three-Tier and n-Tier for Web applications
- Introduces middle-tier (application server or web
server) - Business rules
24(No Transcript)
25(No Transcript)
26(No Transcript)
27(No Transcript)
28Classification of DBMS
- Several Criteria
- Data model
- Relational, Object, Hierarchical, Network
- Number of Users
- Single/Multi User Systems
- Number of Sites
- Centralized/Distributed (Homogeneous/Heterogeneous
) - Cost
- Access Path Options (inverted file structures)
- General/Special Purpose (e.g., OLTP)
29(No Transcript)