database state

advertisement
Fundamentals of
Database Systems
Chapter 2
Database System Concepts and
Architecture
IM ISU
Database
1
Data Models
 Definition
 A set of concepts to describe the structure of
a database, and certain constraints that the
database should obey
 Most data models also include a set of basic
operations for specifying retrievals and
updates on the database
IM ISU
Database
2
Data Models (cont.)
 Categories of data models
 Conceptual (high-level, semantic) data
models
» Provide concepts that are close to the way many
users perceive data
» e.g., Entity-relationship model, object data model
 Physical (low-level, internal) data models
» Provide concepts that describe details of how
data is stored in the computer
IM ISU
Database
3
Data Models (cont.)
 Implementation (record-oriented) data
models
» Provide concepts that fall between the above two,
balancing user views with some computer storage
details
» e.g., relational model, hierarchical model,
network model
IM ISU
Database
4
Data Models (cont.)
 History of data models
 Relational Model
» Proposed in 1970 by E.F. Codd (IBM)
» First commercial system in 1981-82
» e.g., ORACLE, SYBASE, SQL Server
IM ISU
Database
5
Data Models (cont.)
IM ISU
Database
6
Data Models (cont.)
 Network Model
» The first one to be implemented by Honeywell in
1964-65 (IDS System)
» Adopted heavily due to the support by
CODASYL (CODASYL - DBTG report of 1971)
» Later implemented in a large variety of systems IDMS (Cullinet - now CA), DMS 1100 (Unisys),
IMAGE (H.P.), VAX -DBMS (Digital)
IM ISU
Database
7
Data Models (cont.)
IM ISU
Database
8
Data Models (cont.)
 Hierarchical Data Model
» Implemented in a joint effort by IBM and North
American Rockwell around 1965
» Resulted in the IMS family of systems
» The most popular model
IM ISU
Database
9
Data Models (cont.)
IM ISU
Database
10
Data Models (cont.)
 Object-oriented Data Models
» Several models have been proposed for implementing in a
database system
» One set comprises models of persistent O-O
Programming Languages such as C++ (e.g., in
OBJECTSTORE or VERSANT), and Smalltalk (e.g., in
GEMSTONE)
» Additionally, systems like O2, ORION (at MCC - then
ITASCA), IRIS (at H.P.- used in Open OODB)
» Object Database Standard: ODMG-93, ODMG-version
2.0, ODMG-version 3.0
IM ISU
Database
11
Data Models (cont.)
 Object-Relational Models
» Most recent trend, started with Informix
Universal Server
» Relational systems incorporate concepts from
object databases leading to object-relational
» Exemplified in the latest versions of Oracle-10i,
DB2, and SQL Server and other DBMSs
» Standards included in SQL-99 and expected to be
enhanced in future SQL standards
IM ISU
Database
12
Schemas vs Instances
 Database Schema
 The description of a database
 Includes descriptions of the database
structure and the constraints that should hold
on the database
 Can be displayed as a diagram (called schema
diagram)
 Database schema changes very infrequently
IM ISU
Database
13
Schemas vs Instances (cont.)
 Example schema diagram
IM ISU
Database
14
Schemas vs Instances (cont.)
 Database Instance
 The actual data stored in a database at a
particular moment in time
 Also called database state (or occurrence)
 The database state changes every time the
database is updated
» e.g., insert or delete a record
IM ISU
Database
15
Schemas vs Instances (cont.)
 Example database state
IM ISU
Database
16
Schema Architecture
 Three-Schema Architecture
 Internal schema
» Describe data storage structures and access paths
at the internal level
» Typically uses a physical data model
 Conceptual schema
IM ISU
» Describe the structure and constraints for the
database at the conceptual level
» Uses a conceptual or an implementation data
model
Database
17
Schema Architecture (cont.)
 External schemas
» Describe the various user views at the external
level to
» Usually uses the same data model as the
conceptual level
 Purposes
» Support program-data independence
» Support of multiple views of the data
IM ISU
Database
18
DBMS Architecture (cont.)
IM ISU
Database
19
Data Independence
 Logical Data Independence
 The capacity to change the conceptual
schema without having to change the external
schemas and their application programs
 Only view definition and the mapping need
be change
 e.g., Changing the Grade_Report
IM ISU
Database
20
DBMS Architecture (cont.)
IM ISU
Database
21
Data Independence (cont.)
 Physical Data Independence
 The capacity to change the internal schema
without having to change the conceptual
schema
 e.g., providing an access path by Semester
and Year
should not change query “list all sections
offered in fall 1998”
IM ISU
Database
22
DBMS Languages
 Data Definition Language (DDL)
 Used by the DBA and database designers to
specify the conceptual schema
 In many DBMSs, DDL is also used to define
conceptual and external schemas (views)
 In some DBMSs,
» Internal: storage definition language (SDL)
» External: view definition language (VDL)
IM ISU
Database
23
DBMS Languages (cont.)
IM ISU
Database
24
DBMS Languages (cont.)
 Data Manipulation Language (DML)
 Used to specify database retrievals and
updates
 DML commands (data sublanguage) can be
embedded in a general-purpose programming
language, such as COBOL, PL/1, C/C++
 Alternatively, stand-alone DML commands
can be applied directly (query language)
IM ISU
Database
25
DBMS Languages (cont.)
 Example in SQL
SELECT
FROM
WHERE
IM ISU
BDATE, ADDRESS
EMPLOYEE
FNAME='John' AND MINIT='B'
AND LNAME='Smith'
Database
26
DBMS Languages (cont.)
 Example of embedded SQL
EXEC SQL
declare c cursor for
select customer-name, customer-city
from depositor, customer, account
where depositor.customer-name =
customer.customer-name
and depositor account-number =
account.account-number
and account.balance > :amount
END-EXEC
IM ISU
Database
27
Database System Environment
 DBMS component modules
 Database system utilities
 Tools
 CASE tools, data dictionary
 Application environment
 e.g., PowerBuilder
 Communication facilities
IM ISU
Database
28
DBMS Component Modules
IM ISU
Database
29
DBMS Architectures
 Centralized DBMS
 Combines everything into single system
including- DBMS software, hardware,
application programs, and user interface
processing software
 User can still connect through a remote
terminal – however, all processing is done at
centralized site
IM ISU
Database
30
DBMS Architectures (cont.)
 A physical centralized architecture
IM ISU
Database
31
DBMS Architectures (cont.)
 Basic Client-Server Architectures
 Specialized Servers with Specialized
functions
» Print server
» File server
» DBMS server
» Web server
» Email server
 Clients can access the specialized servers as
needed
IM ISU
Database
32
DBMS Architectures (cont.)
 Logical client-server architecture
IM ISU
Database
33
DBMS Architectures (cont.)
 Two Tier Client-Server Architecture
 A client program may connect to several
DBMSs, sometimes called the data sources
 In general, data sources can be files or other
non-DBMS software that manages data
 Other variations of clients are possible
» in some object DBMSs, more functionality is
transferred to clients including data dictionary
functions, optimization and recovery across
multiple servers, etc.
IM ISU
Database
34
DBMS Architectures (cont.)
 Three Tier Client-Server Architecture
 Common for Web applications
 Intermediate Layer called Application Server or
Web Server:
» Stores the web connectivity software and the business
logic part of the application used to access data from
database server
» Acts like a conduit for sending partially processed data
between the database server and the client.
 Three-tier Architecture Can Enhance Security
» Database server only accessible via middle tier
» Clients cannot directly access database server
IM ISU
Database
35
DBMS Architectures (cont.)
 Logical three tier client-server architecture
IM ISU
Database
36
Classification of DBMSs
 Based on the data model used
 Traditional: Relational, Network,
Hierarchical
 Emerging: Object-oriented, Object-relational
 Based on the number of users
 Single-user (typically used with microcomputers)
 multi-user (most DBMSs)
IM ISU
Database
37
Classification of DBMSs (cont.)
 Based on the number of sites
 Centralized (uses a single computer with one
database)
 Distributed (uses multiple computers,
multiple databases)
» Homogeneous
» Heterogeneous (Federated DBMS)
IM ISU
Database
38
Download