Lec2 DB Enviroment

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 26

Lecture 2

Database Environment

1
Objectives of Three-Level Architecture

All users should be able to access same data.

A user’s view is immune to changes made in


other views.

Users should not need to know physical


database storage details.

2
Objectives of Three-Level
Architecture
DBA should be able to change database storage
structures without affecting the users’ views.

Internalstructure of database should be unaffected


by changes to physical aspects of storage.

DBA should be able to change conceptual structure


of database without affecting all users.

3
ANSI-SPARC Three-Level Architecture

4
ANSI-SPARC Three-Level Architecture

External Level
◦ Users’ view of the database.
◦ Describes that part of database that is
relevant to a particular user.

Conceptual Level
◦ Community view of the database.
◦ Describes what data is stored in database and
relationships among the data.

5
ANSI-SPARC Three-Level
Architecture

Internal Level
◦ Physical representation of the database on
the computer.
◦ Describes how the data is stored in the
database.

6
Differences between Three Levels of
ANSI-SPARC Architecture

7
Data Independence
Logical Data Independence
◦ Refers to immunity of external schemas to
changes in conceptual schema.
◦ Conceptual schema changes (e.g.
addition/removal of entities).
◦ Should not require changes to external
schema or rewrites of application programs.

8
Data Independence
Physical Data Independence
◦ Refers to immunity of conceptual schema to
changes in the internal schema.
◦ Internal schema changes (e.g. using different
file organizations, storage structures/devices).
◦ Should not require change to conceptual or
external schemas.

9
Data Independence and the ANSI-
SPARC Three-Level Architecture

10
Data Model
Integrated collection of concepts for
describing data, relationships between data,
and constraints on the data in an
organization.

 Data Model comprises:


◦ a structural part;
◦ a manipulative part;
◦ possibly a set of integrity rules.

11
Data Model
Purpose
◦ To represent data in an understandable way.

Categories of data models include:


◦ Object-based
◦ Record-based
◦ Physical.

12
Data Models
Object-Based Data Models
◦ Entity-Relationship
◦ Semantic
◦ Functional
◦ Object-Oriented.

Record-Based Data Models


◦ Relational Data Model
◦ Network Data Model
◦ Hierarchical Data Model.

Physical Data Models


13
Relational Data Model

14
Network Data Model

15
Hierarchical Data Model

16
Multi-User DBMS Architectures

Teleprocessing

File-server

Client-server

17
Teleprocessing
Traditional architecture.
Single mainframe with a number of
terminals attached.
Trend is now towards downsizing.

18
File-Server
File-server is
connected to several workstations
across a network.

Database resides on file-server.

DBMS and applications run on each workstation.

Disadvantages include:
◦ Significant network traffic.
◦ Copy of DBMS on each workstation.
◦ Concurrency, recovery and integrity control more complex.

19
File-Server Architecture

20
Traditional Two-Tier Client-Server
Client(tier 1) manages user interface and
runs applications.
Server (tier 2) holds database and DBMS.

Advantages include:
◦ wider access to existing databases;
◦ increased performance;
◦ possible reduction in hardware costs;
◦ reduction in communication costs;
◦ increased consistency.

21
Traditional Two-Tier Client-Server

22
Traditional Two-Tier Client-Server

23
Three-Tier Client-Server
Client side presented two
problems preventing true
scalability:
◦ ‘Fat’ client, requiring considerable
resources on client’s computer to run
effectively.
◦ Significant client side administration
overhead.

By 1995, three layers


proposed, each potentially
running on a different 24
Three-Tier Client-Server
Advantages:
◦ ‘Thin’ client, requiring less expensive
hardware.
◦ Application maintenance centralized.
◦ Easier to modify or replace one tier
without affecting others.
◦ Separating business logic from
database functions makes it easier to
implement load balancing.
◦ Maps quite naturally to Web
environment.
25
Three-Tier Client-Server

26

You might also like