Distributed Database Chapter 2 Modified
Distributed Database Chapter 2 Modified
Chapter 2
5
Centralized DBMS Architecture
•A centralized DBMS is interfaced with two other components:
➡ the communication subsystem - permits interfacing the DBMS
with other subsystems in order to communicate with
applications
➡ the operating system - provides the interface between the
DBMS and computer resources (processor, memory, disk
drives, etc.).
•The functions performed by a DBMS can be layered: the layers
are the
✤ interface,
✤ control,
✤ compilation,
✤ execution,
✤ data access, and
✤ consistency management 6
Centralized DBMS Architecture(cont…)
7
Centralized DBMS Architecture(cont…)
• The interface layer manages the interface to the applications.
• The control layer controls the query by adding semantic integrity
predicates and authorization predicates.
• The query processing (or compilation) layer maps the query into an
optimized sequence of lower-level operations.
• The execution layer directs the execution of the access plans, including
transaction management and synchronization of algebra operations
• The data access layer manages the data structures that implement the files,
indices, etc.
• The consistency layer manages concurrency control and logging for
update requests.
8
Architectural Models for DDBMSs
• Architectural models for DDBMS can be characterized with respect to
three different dimensions:
➡ the autonomy of local systems,
➡ their distribution, and
➡ their heterogeneity.
9
Architectural Models for DDBMSs(Autonomy)
•Autonomy refers to the distribution of control, not of data.
➡ It indicates the degree to which individual DBMSs can operate
independently.
•Dimensions of autonomy can be specified as:
➡ Design autonomy: Ability of a component DBMS to decide on issues
related to its own design.
➡ Communication autonomy: Ability of a component DBMS to decide
whether and how to communicate with other DBMSs.
➡ Execution autonomy: Ability of a component DBMS to execute local
operations in any manner it wants to.
10
Architectural Models for DDBMSs(Autonomy) cont..
•Dimensions of autonomy are covered in three different aspects:
➡Tight integration: a single-image of the entire database is
available to any user
➡Semiautonomous systems: Consist of DBMSs that can
operate independently and determine what parts of their own
database will be accessible to users of other DBMSs.
➡Total isolation: Individual systems are stand-alone DBMSs
that know neither of the existence of other DBMSs nor how
to communicate with them.
11
Architectural Models for DDBMSs(Distribution)
•The distribution dimension of the taxonomy deals with the
physical distribution of data over multiple sites.
•Two classes of distribution are:
➡ Client/server distribution: Concentrâtes data management
duties at servers while the clients focus on providing the
application environment including the user interface.
➡ Peer-to-peer distribution (or full distribution): There is no
distinction of client machines versus servers.
✦ Each machine has full DBMS functionality and can
communicate with other machines to execute queries and
transactions 12
Architectural Models for DDBMSs(Heterogeneity)
16
Architectural Alternatives (Client/server distributed DBMS) cont.…
•Two simple types of client/server architecture:
➡ multiple client/single server : the database is stored only on
the server that also hosts the software to manage it.
➡ multiple client/multiple server :
✦ two alternative management strategies:
✓ either each client manages its own connection to the
appropriate server or
✓ each client knows of only its “home server” which then
communicates with other servers as required
17
Architectural Alternatives (Client/server distributed DBMS) cont.…
• Three types of servers in client/server architecture:
➡ client servers run the user interface (e.g., web servers),
➡ application servers run application programs, and
➡ database servers run database management functions.
• Data Base Server Approach: An extension of the client/server
architecture, with application servers connected to one database server via
a communication network.
18
Architectural Alternatives (Client/server distributed DBMS) cont.…
• Distributed Data Base Servers Approach:
➡ Introduces multiple database servers and multiple application servers
➡ Each application server is dedicated to one or a few applications, while
database servers operate in the multiple server fashion
19
Architectural Alternatives (Peer-to-peer distributed DBMS)
• In peer-to-peer architecture:
➡ there is no differentiation between the functionality of each site in
the system.
➡ there is inherent heterogeneity of every aspect of the sites and their
autonomy
➡ the physical data organization on each machine may be different:
✦ local internal schema (LIS) - an individual internal schema
definition at each site.
✦ global conceptual schema (GCS) - The enterprise view of the
data, which is global and describes the logical structure of the
data at all the sites.
✦ local conceptual schema (LCS) - handles data fragmentation and
replication at each site
✦ external schemas (ESs) – supports user applications and user
access to the database 20
Architectural Alternatives (Peer-to-peer distributed DBMS)cont.…
Peer-to-peer Datalogical DDBS Architecture:
22
Architectural Alternatives (Peer-to-peer distributed DBMS)cont.…
• Two first major components of peer-to-peer DDBMS are:
➡ User processor
➡ Data processor
• User processor consists of four elements:
➡ user interface handler - interprets user commands and formats the
result data as it is sent to the user.
➡ semantic data controller - uses the integrity constraints and
authorizations (defined as part of GCS) to check if the user query can be
processed.
➡ global query optimizer and decomposer - determines an execution
strategy to minimize a cost function, and translates the global queries
into local ones using GCS, LCS and global directory
➡ distributed execution monitor (or distributed transaction manager)-
coordinates distributed execution of the user request.
23
Architectural Alternatives (Peer-to-peer distributed DBMS)cont.…
•Data processor consists of three elements:
➡ local query optimizer - acts as the access path selector
responsible for choosing the best access path to access
any data item
➡ local recovery manager - responsible for making sure that the
local database remains consistent even when failures occur
➡ run-time support processor - physically accesses the database
according to the physical commands in the schedule generated
by the query optimizer
24
Architectural Alternatives (Multidatabase System Architecture)
• In Multidatabase systems (MDBS), the individual DBMSs (whether
distributed or not) are fully autonomous and have no concept of
cooperation.
• Distributed DBMS vs. Distributed Multi-DBMS:
➡ In distributed DBMS, the GCS defines the conceptual view of the
entire database;
✦ in distributed MDBMS, it represents only the collection of some
of the local databases that each local DBMS wants to share.
➡ Global database in the latter is equal to the union of local
databases,
✦ whereas in the former it is only a (possibly proper) subset of the
same union.
25
Architectural Alternatives (Multidatabase System Architecture) cont…
• Distributed DBMS vs. Distributed Multi-DBMS:
➡ Difference between the design of the GCS in multi-DBMSs and distributed DBMSs:
✦ in the former the mapping is from LCS to a GCS. In the latter, however,
mapping is in the reverse direction.
• Datalogical Multi-DBMS Architecture :
26
Architectural Alternatives (Multidatabase System Architecture) cont.…
27