Distributed Database

Download Report

Transcript Distributed Database

Chapter 9 :
Distributed Database
Chapter 9 - Objectives
 Concepts.
Advantages and disadvantages of distributed
databases.
 Functions and architecture for a DDBMS.
 Comparison criteria for DDBMSs.

Concepts

Distributed Database
– A logically interrelated collection of shared data
(and a description of this data), physically
distributed over a computer network.

Distributed DBMS
– Software system that permits the management of
the distributed database and makes the distribution
transparent to users.
Centralized & Distributed Database
Single site database – centralized database
– A database is located at a single site
 Multi-site database – distributed database
– A database is stored on multiple computers (not
connected)


Centralised DB – DB located at single site or
location
Dumb
Terminal
Central
Computer
DB
Dumb
Terminal
Remote
Terminal
 Distributed
DB – DB distributed over several sites
DBMS 1
DBMS 3
Network
DBMS 2
Centralized & Distributed Database

Ad/Disadvantages of centralized database
– Performance degradation (no. of users)
– High cost (when no. of access , communication
transmission cost
– Fast access as all at one site (advantage)
– Reliability issues (if one fails, all process stop)
Centralized & Distributed Database

Advantages of distributed database
– Reduced cost – data needed at the local site, so
reduce cost
– High availability – if one site fails, data can be
still accessed from other sites
– Support graphical interfaces – more user
friendly interfaces
– Shared workload – spread over several sites
Data Distribution Strategies
allocation or distribution – a process of deciding
where to locate the data
 Three strategies
– Centralized – at a single site
– Partitioned – split the database (vertical/horizontal)
– Replication – duplicates the database/copy
 Data
Data Replication
 Two
types of replication :
– Fully replicated – same data store at several site
– Partially replicated – part of database at another site
Data Replication


Advantages (available locally) :
– Fast response (queries processed faster)
– Reduced transmission cost (DB close to user)
– High reliability (got copies)
Disadvantages (duplicate/redundant data):
– Increased storage requirement
– Increased cost (changes/update must be done to all the DB)
– Reduced security (poor security at one site, allows attacks to all the
data in DB)
Partitioning

Two types of partitioning
i. Horizontal partitioning – rows of table are distributed

Advantages :
– Fast access
– Reduced cost
– Security

Disadvantages :
– Backup problem
– Varying access speed
Student_ID
Student_Name
Age
A1
Ali
22
A2
Siti
46
A3
Raju
44
A4
Karen
21
Row 1 and 2 are split from the original table
and located in different location
Partitioning
ii. Vertical partitioning – columns of
Advantages :

–
–
–
Fast access
Reduced cost
security
table are distributed
Student_ID
Student_Name
Age
Disadvantages :

–
–
Backup problem
Speed difference
Column 1 and 2 are split from the original table
and located in different location
Distributed DBMS
Distributed processing for distributed database
 Must provide the following transparencies :
– Transaction transparency?
– Distribution transparency?
– Failure transparency?
– Performance transparency?
– Heterogeneity transparency?

Transaction transparency?
Transaction maintains consistency and the transaction
completed entirely or it is aborted
Distribution transparency?
Gives an impression to user that there is only one DB when in
actual fact it is split and scattered at several sites
Failure transparency?
if any site fails, it is not known by other users at other sites, their
transaction goes on as usual
Performance transparency?
The overall performance of the DDBMS is not significantly
different from the centralized DB
Heterogeneity transparency?
Gives an impression that there is only one DBMS being used
when in actual fact there are several DBMS being used

Client/server is normally a 2-tier architecture
1. Tier-1 : Client
2. Tier-2 : DB server

More complex client/server or web-based systems
may require 3-tier architecture
1. Tier 1 : Client
2. Tier 2 : Application server
3. Tier 3 : DB server
ODBC (Open DB Connectivity) Standard



Is an interface by which application programs can access
and process SQL databases in a DBMS-independent manner
Any application that uses the ODBC interface will be able
to access any other DB without changing the program
coding
If you have an application program that uses ODBC
interface, you should be able to access an Oracle, Informix,
Access or other DB.
 END