Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
33 views

Distributed Database-Chapter 3

The document discusses features and design issues of distributed databases. It describes distributed database management systems and their components. It also covers types of distributed databases including homogeneous and heterogeneous, and different architectures like client-server and peer-to-peer models.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
33 views

Distributed Database-Chapter 3

The document discusses features and design issues of distributed databases. It describes distributed database management systems and their components. It also covers types of distributed databases including homogeneous and heterogeneous, and different architectures like client-server and peer-to-peer models.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 26

DISTRIBUTED DATABASE

BY ASST PROF SHAKILA SHAIKH


FEATURES OF DISTRIBUTED DATABASES
• A distributed database is a collection of multiple interconnected databases, which are spread physically across
various locations that communicate via a computer network.

• Features

● Databases in the collection are logically interrelated with each other. Often they represent a single logical database.

● Data is physically stored across multiple sites. Data in each site can be managed by a DBMS independent of the
other sites.

● The processors in the sites are connected via a network. They do not have any multiprocessor configuration.

● A distributed database is not a loosely connected file system.

● A distributed database incorporates transaction processing, but it is not synonymous with a transaction processing
system.
DISTRIBUTED DATABASE MANAGEMENT SYSTEM
• A distributed database management system (DDBMS) is a centralized software system that manages a distributed
database in a manner as if it were all stored in a single location.

• Features

● It is used to create, retrieve, update and delete distributed databases.

● It synchronizes the database periodically and provides access mechanisms by the virtue of which the distribution
becomes transparent to the users.

● It ensures that the data modified at any site is universally updated.

● It is used in application areas where large volumes of data are processed and accessed by numerous users
simultaneously.

● It is designed for heterogeneous database platforms.

• It maintains confidentiality and data integrity of the databases


DESIGN ISSUES OF DISTRIBUTED DATABASES
• The following are the design issues related to distributed databases

1. Distributed Database Design

• • One of the main questions that is being addressed is how database and the applications that run against it should be placed across
the sites.

• • There are two basic alternatives to placing data: partitioned (or no-replicated) and replicated.

• • In the partitioned scheme the database is divided into a number of disjoint partitions each of which is placed at different site.
Replicated designs can be either fully replicated (also called fully duplicated) where entire database is stored at each site, or partially
replicated (or partially duplicated) where each partition of the database is stored at more than one site, but not at all the sites.

• • The two fundamental design issues are fragmentation, the separation of the database into partitions called fragments, and
distribution, the optimum distribution of fragments. The research in this area mostly involve mathematical programming in order to
minimize the combined cost of storing the database, processing transactions against it, and message communication among site.
DISTRIBUTED DIRECTORY MANAGEMENT

• A directory contains information (such as descriptions and locations) about data items in the
database. Problems related to directory management are similar in nature to the database placement
problem discussed in the preceding section.

• A directory may be global to the entire DDBS or local to each site; it can be centralized at one site or
distributed over several sites; there can be a single copy or multiple copies.
DISTRIBUTED QUERY PROCESSING

• Query processing deals with designing algorithms that analyze queries and convert them into a series of data
manipulation operations. The problem is how to decide on a strategy for executing each query over the network in
the most cost-effective way, however cost is defined.

• The factors to be considered are the distribution of data, communication cost, and lack of sufficient locally-available
information. The objective is to optimize where the inherent parallelism is used to improve the performance of
executing the transaction, subject to the abovementioned constraints.
DISTRIBUTED CONCURRENCY CONTROL
• Concurrency control involves the synchronization of access to the distributed database, such that the integrity of the
database is maintained. It is, without any doubt, one of the most extensively studied problems in the DDBS field.

• • The concurrency control problem in a distributed context is somewhat different that in a centralized framework. One not
only has to worry about the integrity of a single database, but also about the consistency of multiple copies of the database.
The condition that requires all values of multiple copies of every data item to converge to the same value is called mutual
consistency.

• Let us only mention that the two general classes are pessimistic, synchronizing the execution of the user request before the
execution starts, and optimistic, executing requests and then checking if the execution has compromised the consistency of
the database.

• Two fundamental primitives that can be used with both approaches are locking, which is based on the mutual exclusion of
access to data items, and time-stamping, where transactions executions are ordered based on timestamps.

• There are variations of these schemes as well as hybrid algorithms that attempt to combine the two basic mechanisms.
DISTRIBUTED DEADLOCK MANAGEMENT

• The deadlock problem in DDBSs is similar in nature to that encountered in operating


systems.

• The competition among users for access to a set of resources (data, in this case) can
result in a deadlock if the synchronization mechanism is based on locking. The
well-known alternatives of prevention, avoidance, and detection/recovery also apply
to DDBSs
RELIABILITY OF DISTRIBUTED DBMS

• It is important that mechanisms be provided to ensure the consistency of the database as well as to detect
failures and recover from them. The implication for DDBSs is that when a failure occurs and various sites
become either inoperable or inaccessible, the databases at the operational sites remain consistent and up to
date.

• Furthermore, when the computer system or network recovers from the failure, the DDBSs should be able
to recover and bring the databases at the failed sites up-to date. This may be especially difficult in the case
of network partitioning, where the sites are divided into two or more groups with no communication
among them.
REPLICATION

• If the distributed database is (partially or fully) replicated, it is necessary to implement


protocols that ensure the consistency of the replicas, i.e. copies of the same data item
have the same value.

• These protocols can be eager in that they force the updates to be applied to all the
replicas before the transactions completes, or they may be lazy so that the transactions
updates one copy (called the master) from which updates are propagated to the others
after the transaction completes
TYPES OF DISTRIBUTED DATABASES
Distributed databases can be broadly classified into homogeneous and heterogeneous distributed database
environments, each with further sub-divisions, as shown in the following illustration.
HOMOGENEOUS DISTRIBUTED DATABASES
• In a homogeneous distributed database, all the sites use identical DBMS and operating
systems.

• Its properties are −

● The sites use very similar software.

● The sites use identical DBMS or DBMS from the same vendor.

● Each site is aware of all other sites and cooperates with other sites to process user
requests.

● The database is accessed through a single interface as if it is a single database.


HOMOGENEOUS DISTRIBUTED DATABASES
• Types of Homogeneous Distributed Database

• There are two types of homogeneous distributed database −

• Autonomous − Each database is independent that functions on its own.


They are integrated by a controlling application and use message passing to
share data updates.

• Non-autonomous − Data is distributed across the homogeneous nodes and a


central or master DBMS co-ordinates data updates across the sites.
HETEROGENEOUS DISTRIBUTED DATABASES

• In a heterogeneous distributed database, different sites have different operating systems, DBMS products
and data models. Its properties are −

• Different sites use dissimilar schemas and software.

• The system may be composed of a variety of DBMSs like relational, network, hierarchical or object
oriented.

• Query processing is complex due to dissimilar schemas.

• Transaction processing is complex due to dissimilar software.

• A site may not be aware of other sites and so there is limited co-operation in processing user requests.
HETEROGENEOUS DISTRIBUTED DATABASES

• Types of Heterogeneous Distributed Databases

• Federated − Heterogeneous database systems are independent in nature and


integrated together so that they function as a single database system.

• Un-federated − Database systems employ a central coordinating module


through which the databases are accessed
DISTRIBUTED DATABASE ARCHITECTURES

• DDBMS architectures are generally developed depending on three parameters −

• Distribution − It states the physical distribution of data across the different sites.

• Autonomy − It indicates the distribution of control of the database system and the
degree to which each constituent DBMS can operate independently.

• Heterogeneity − It refers to the uniformity or dissimilarity of the data models, system


components and databases.
DISTRIBUTED DATABASE ARCHITECTURES

• Architectural Models

• Some of the common architectural models are −

• Client - Server Architecture for DDBMS

• Peer - to - Peer Architecture for DDBMS

• Multi - DBMS Architecture


DISTRIBUTED DATABASE ARCHITECTURES
• Client - Server Architecture for DDBMS

• This is a two-level architecture where the functionality is divided into servers and
clients. The server functions primarily encompass data management, query processing,
optimization and transaction management. Client functions include mainly user
interface. However, they have some functions like consistency checking and transaction
management.

• The two different client - server architectures are −

• Single Server Multiple Client

• Multiple Server Multiple Client (shown in the following diagram)


DISTRIBUTED DATABASE ARCHITECTURES
DISTRIBUTED DATABASE ARCHITECTURES: PEER-PEER

• In these systems, each peer acts both as a client and a server for imparting database services. The peers
share their resource with other peers and co-ordinate their activities.

• This architecture generally has four levels of schemas −

● Global Conceptual Schema − Depicts the global logical view of data.

● Local Conceptual Schema − Depicts logical data organization at each site.

● Local Internal Schema − Depicts physical data organization at each site.

● External Schema − Depicts user view of data.


DISTRIBUTED DATABASE ARCHITECTURES: MULTI -
DBMS ARCHITECTURE
• This is an integrated database system formed by a collection of two or more autonomous database systems.

• Multi-DBMS can be expressed through six levels of schemas −

● Multi-database View Level − Depicts multiple user views comprising of subsets of the integrated distributed
database.

● Multi-database Conceptual Level − Depicts integrated multi-database that comprises of global logical multi-database
structure definitions.

● Multi-database Internal Level − Depicts the data distribution across different sites and multi-database to local data
mapping.

● Local database View Level − Depicts public view of local data.

● Local database Conceptual Level − Depicts local data organization at each site.
DISTRIBUTED DATABASE ARCHITECTURES: MULTI -
DBMS ARCHITECTURE

• ● Local database Internal Level − Depicts physical data organization at each site.

• There are two design alternatives for multi-DBMS −

• ● Model with multi-database conceptual level.

• ● Model without multi-database conceptual level.


Conceptual And Internal Schema

• The internal schema uses a physical data model and


describes the complete details of data storage and access
paths for the database. Conceptual Schema: Conceptual
level has a conceptual schema, which describes the
structure of the whole database for a community of users.
• Ans: Refer the contents under lecture 3

• 3. Draw the diagram of client-server distributed database architecture and explain

• Ans: Refer the contents under lecture 4

• 4. Explain peer-peer distributed database architecture with the help of diagram.

• Ans: Refer the contents under lecture 5

• 5. Explain multi-DBMS architecture with diagram.

• Ans: Refer the contents under lecture 6

• Set of Questions for FA/IA/ESE

• 1. List the features of distributed database system. (5M)

• 2. State the difference between distributed database and centralized database. (5M)

• 3. Explain the design issues of distributed database. (10M)

• 4. Describe the types of distributed databases. (5M)

You might also like