Chapter 2 Database System Concepts and Architecture Dr. Bernard Chen Ph.D. University of Central Arkansas Fall 2008
Dec 24, 2015
Chapter 2 Database System Concepts
and Architecture
Dr. Bernard Chen Ph.D.University of Central Arkansas
Fall 2008
Outline
Data Models, Schemas, and Instances
Three-Schema Architecture Database language and Interfaces The database system environment Centralized and client/server
architecture
Categories of data models High-level or Conceptual data
models:Provide concept that are close to the way
many users perceive data
Low-level or Physical data model:Provide concepts that describe the details
of how data is stored in the computer
Conceptual data models It uses concepts such as entities, attributes
and relationships.
Entity represents a real-world object or concept, such as employee or project
Attribute represents some property of interest that further describes an entity, such as employee’s name or salary
Relation among two or more entities represents an association among two or more entitles
Example of a Relation
Schemas and Database State In any data model, it is important to
distinguish between the description of the data and database itself
The description of the database is called the database schema
A displayed Schema is called a schema diagram
University Database
Example of a Database Schema
Schemas and Database State The data in the database at a particular moment in time
is called a database state The distinction between database schema and database
state is very important When we define a new database, we specify its
database schema only to the DBMS
At this point, the corresponding database state is the empty state with no data
We get the initial state of the database when the database is first loaded
From then on, every time an update operation is applied to the database, we get another database state
Schemas and Database State Valid State: a state that satisfies the
structure and constrains specified in the schema.
The database schema changes very infrequently.
The database state changes every time the database is updated
Schema is also called intension. State is also called extension.
Outline
Data Models, Schemas, and Instances
Three-Schema Architecture Database language and Interfaces The database system environment Centralized and client/server
architecture
Three-Schema Architecture Three of four important characteristics
of the database approach, listed in Ch.1 are:
1. Self-describing of a DB (Schema)2. Insulation between programs and data3. Support of multiple views of the data
Three-Schema Architecture : it was proposed to help achieve and visualize these characteristics
Three-Schema Architecture Defines DBMS schemas at three levels:
Internal schema at the internal level to describe physical storage structures and access paths (e.g indexes).
Conceptual schema at the conceptual level to describe the structure and constraints for the whole database for a community of users.
External schemas at the external level to describe the various user views.
The three-schema architecture
Outline
Data Models, Schemas, and Instances
Three-Schema Architecture Database language and Interfaces The database system environment Centralized and client/server
architecture
DBMS Languages The first step to create a database through
DBMS is to specify conceptual and internal schemas for the database
Data Definition Language (DDL): is used by database designers to define schemas
Data Manipulation Language (DML) View Definition Language (VDL): is to specify
user views
In current DBMS, the preceding types of languages are usually not considered distinct languages
DBMS Programming Language Interfaces
Programmer interfaces for embedding DML in a programming languages:
Embedded Approach: e.g embedded SQL (for C, C++, etc.), SQLJ (for Java)
Procedure Call Approach: e.g. JDBC for Java, ODBC for other programming languages
Database Programming Language Approach: e.g. ORACLE has PL/SQL, a programming language based on SQL; language incorporates SQL and its data types as integral components
User-Friendly DBMS Interfaces
Menu-based, popular for browsing on the web (URSA)
Forms-based, designed for naïve users
Graphics-based Natural language: requests in
written English Combinations of the above
Outline
Data Models, Schemas, and Instances
Three-Schema Architecture Database language and Interfaces The database system environment Centralized and client/server
architecture
DBMS Component Modules A DBMS is a complex software system
The figure showed in next slide is divide into two halves.
The top half refers to the various users of the database system
The lower half shows the internals of the DBMS responsible for storage of data and processing of transactions
Typical DBMS Component Modules
Outline
Data Models, Schemas, and Instances
Three-Schema Architecture Database language and Interfaces The database system environment Centralized and client/server
architecture
Centralized DBMS Architecture
A centralized DBMS in which all the DBMS functionality, application program execution, and user interface processing were carried out on a single machine
A Physical Centralized Architecture
Basic Client/Server Architectures The client/server architecture was
developed to deal with computer environment in which a large number of PCs, workstation, file server…
A client in this framework is typically a user machine that provides user interface capabilities and local processing
A server is a system containing both hardware and software that can provide services to the client machines.
Logical two-tier client server architecture
Two-tier Architecture This is called two-tire
architectures because the software components are distributed over two systems: client and server
The emergence of the Web changed the roles of client and server, leading to the three-tier architecture
Three-tier architecture The intermediate layer or middle layer
is sometimes called the application server or Web server
Three-tier Architecture Can Enhance Security:
1. Database server only accessible via middle tier2. Clients cannot directly access database server
Three-tier client-server architecture
Three-tier architecture
The presentation layer displays information to the user
The business logic layer handles intermediate rules and constrains before data is passed up to the user or down to the DBMS
If the bottom layer is split into two layers (a web server and a database server), then it is a 4-tire architecture (possible to the n-tier)