35
Basis for Distributed Database Technology Database System Technology (DST) controlled access to structured data aims towards centralized (single site) computing Computer Networking Technology (CNT) facilitates distributed computing goes against centralized computing Distributed Database Technology = DST + CNT aims to achieve integration without centralization

Basis for Distributed Database Technology

  • Upload
    milt

  • View
    46

  • Download
    0

Embed Size (px)

DESCRIPTION

Basis for Distributed Database Technology. Database System Technology (DST) controlled access to structured data aims towards centralized (single site) computing Computer Networking Technology (CNT) facilitates distributed computing goes against centralized computing - PowerPoint PPT Presentation

Citation preview

Basis for Distributed Database Technology

Database System Technology (DST) controlled access to structured data aims towards centralized (single site) computing

Computer Networking Technology (CNT) facilitates distributed computing goes against centralized computing

Distributed Database Technology = DST + CNTaims to achieve integration without centralization

What is distributed?

Processing LogicFunctionDataControl

All the above modes of distribution are necessary and important for distributed database technology

Distributed database system

A distributed database is a collection of multiple, logically interrelated databases distributed over a computer network.

A distributed database management system (DDBMS) is a software system that permits the management of the distributed databases and makes the distribution transparent to the users.

What is not a DDBMS?

A DDBMS is not a “collection of files” that can be stored at each node of a computer network.

A multiprocessor system based DBMS (parallel database system) is not a DDBMS.

A DDBMS is not a system wherein data resides only at one node.

Aims of Distributed DBMS - Transparent Management of Distributed & Replicated Data

Transparency refers to separation of the higher-level semantics of a system from lower-level implementation details.From data independence in centralized DBMS to fragmentation transparency in DDBMS.Who should provide transparency? - DDBMS!

Aims of Distributed DBMS - Reliability through Distributed Transactions

Distributed DBMS can use replicated components to eliminate single point failure.The users can still access part of the distributed database with “proper care” even though some of the data is unreachable.Distributed transactions facilitate maintenance of consistent database state even when failures occur.

Aims of Distributed DBMS - Improved Performance

Since each site handles only a portion of a database, the contention for CPU and I/O resources is not that severe. Data localization reduces communication overheads.Inherent parallelism of distributed systems may be exploited for inter-query and intra-query parallelism.Performance models are not sufficiently developed.

Aims of Distributed DBMS - Easier System Expansion

Ability to add new sites, data, and users over time without major restructuring.Huge centralized database systems (mainframes) are history (almost!).PC revolution (Compaq buying Digital, 1998) will make natural distributed processing environments.New applications (such as, supply chain) are naturally distributed - centralized systems will just not work.

Complicating Factors

Data may be replicated in a distributed environment. Therefore, DDBMS is responsible for (i) choosing one of the stored copies of the requested data, and (ii) making sure that the effect of an update is reflected on each and every copy of that data item.Maintaining consistency of distributed/replicated data.Since each site cannot have instantaneous information on the actions currently carried out in other sites, the synchronization of transactions at multiple sites is harder than centralized system.and Complexity, Cost, Distribution of control, Security,...

Problem Areas

Distributed Database DesignDistributed Query ProcessingDistributed Directory ManagementDistributed Concurrency ControlDistributed Deadlock ManagementReliability of Distributed DatabasesOperating Systems SupportHeterogeneous Databases

Relationship among Problems

Directory Management

Deadlock Management

Concurrency Control

ReliabilityDistributed DB DesignQuery Processing

Transparency and Architecture issues in DDBMSs

Top-Down DDBMS Architecture - ClassicalGlobal Schema

Fragmentation Schema

Allocation Schema

Local Mapping Schema I

DBMS I

Local Mapping Schema I

DBMS I

Local Database ILocal Database 2

Site 1Site 2

Other sites

Site IndependentSchemas

Top-Down DDBMS Architecture - Classical

Global SchemaGlobal Schema: a set of global relations as if database were not distributed at allFragmentation SchemaFragmentation Schema: global relation is split into “non-overlapping” (logical) fragments. 1:n mapping from relation R to fragments Ri.

Allocation SchemaAllocation Schema: 1:1 or 1:n (redundant) mapping from fragments to sites. All fragments corresponding to the same relation R at a site j constitute the physical image Rj. A copy of a fragment is denoted by Rj

i.

Local Mapping SchemaLocal Mapping Schema: a mapping from physical images to physical objects, which are manipulated by local DBMSs.

Global Relations, Fragments and Physical ImagesR

GlobalRelation

R33

R32

R22

R21

R12

R11

R3

R2

R1

R2

(Site2)

R1

(Site 1)

R3

(Site3)

Physical Images

Fragments

•Separating concepts of fragmentation and allocation

•Explicit control of redundancy

•Independence from local databases

Allows for:

•Fragmentation Transparency

•Location Transparency

•Local Mapping Transparency

Rules for Data Fragmentation

Completeness: Completeness: All the data of the global relation must be mapped into fragments.Reconstruction: Reconstruction: It must always be possible to reconstruct each global relation from its fragments.Disjointedness: Disjointedness: It is convenient if the fragments are disjoint so that the replication of data can be controlled explicitly.

Types of Data Fragmentation

Vertical Fragmentation

Horizontal Fragmentation

Vertical Fragmentation

•Projection on relation (subset of attributes)

•Reconstruction by join

•Updates require no tuple migration

Horizontal Fragmentation

•Selection on relation (subset of tuples)

•Reconstruction by union

•Updates may requires tuple migration

Mixed Fragmentation

•A fragment is a Select-Project query on relation.

Levels of Distribution Transparency

Fragmentation TransparencyFragmentation Transparency: Just like using global relations.Location TransparencyLocation Transparency: Need to know fragmentation schema; but need not know where fragments are located. Applications access fragments (no need to specify sites where fragments are located).Local Mapping TransparencyLocal Mapping Transparency: Need to know both fragmentation and allocation schema; no need to know what the underlying local DBMSs are. Applications access fragments explicitly specifying where the fragments are located.No TransparencyNo Transparency: Need to know local DBMS query languages, and write applications using functionality provided by the Local DBMS

Why is support for transparency difficult?

There are tough problems in query optimization and transaction management that need to be tackled (in terms of system support and implementation) before fragmentation transparency can be supported.Less distribution transparency the more the end-application developer needs to know about fragmentation and allocation schemes, and how to maintain database consistency.Higher levels of distribution transparency require appropriate DDBMS support, but makes end-application developers work easy.

Some Aspects of top-down architecture

Distributed database technology is an “add-on” technology, most users already have populated centralized DBMSs. Whereas top down design assumes implementation of new DDBMS from scratch.In case of OODBMs, top-down architecture makes sense because most OODBMs are going to be built from scratch.In many application environments, such as semi-structured databases, continuous multimedia data, the notion of fragment is difficult to define. Current relational DBMS products provide for some form of location transparency (such as, by using nicknames).

Bottom up Architecture - Present & Future

Possible ways in which multiple databases may be put together for sharing by multiple DBMSs.The DBMSs are characterized according to•Autonomy - degree to which individual DBMSs can operate independently. Tightly coupled - integrated (A0), Semiautonomous -federated (A1), Total Isolation - multidatabase systems(A2)•Distribution - no distribution - single site (D0), client-server - distribution of DBMS functionality (D1), full distribution - peer to peer distributed architecture(D2)•Heterogeneity - homogeneous (H0) or heterogeneous (H1)

Distributed DBMS Implementation AlternativesDistribution

Heterogeneity

Autonomy

(A0,D2,H0)

(A2,D2,H1)

Architectural Alternatives

(A0,D0,H0): multiple DBMSs that are logically integrated at single site - composite systems.(A0,D0,H1): multiple database managers that are heterogeneous but provide integrated view to the user.(A0,D1,H0): client-server based DBMS.(A0,D2,H0): Classical distributed database system architecture.(A1,D0,H0): Single site, homogeneous, federated database systems - not realistic.(A1,D0,H1): heterogeneous federated DBMS, having common interface over disparate cooperating specialized database systems.

Architectural Alternatives

(A1,D1,H1): heterogeneous federated database systems with components of the systems placed at different sites.(A2,D0,H0): homogeneous multidatabase systems at a single site.(A2,D0,H1): heterogeneous multidatabase systems at a single site.(A2,D1,H1) & (A2,D2,H1): distributed heterogeneous multidatabase systems. In case of client-server environments it creates a three layer architecture. Interoperability is the major issue. Autonomy, distribution, heterogeneity are orthogonal issues.

Client/Server Database Systems

Distinguish and divide the functionality to be provided into two classes: server functions and client functions. That is, two level architecture. Made popular by relational DBMS implementations.DBMS client: user interface, application, consistency checking of queries, and caching and managing locks on cached data. DBMS Server: handles query optimization, data access and transaction management.Typical scenarios: multiple clients/single server; multiple client/multiple servers (dedicated home-server or any server)

Client/Server Reference ArchitectureUser Interface Application Program

Client DBMS

System

Communication softwareOpe

ratin

g Sy

stem

Recovery Manager

Transaction Manager

Query Optimizer

Semantic Data Controller

Communication softwareO

pera

ting

Runtime Support Processor

SQL Queries Result Relation

Database

Distributed Database Reference Architecture

GCS

ES1 ES2 ESn

LCS1 LCS2 LCSn

LIS1 LIS2 LISn

Components of Distributed DBMSUser

User Interface Handler

Semantic Data Controller

Global Query Optimizer

Global Execution Monitor

Local Query Processor

Local Recovery Manager

Runtime Support Processor

Global Conceptual Schema

External Schema

Local Conceptual Schema

Local Internal Schema

GD/D

System Log

Database

User RequestsSystem Responses

User Processor

Data Processor

MDBS Architecture With Global Schema

GCS

GES1 GES2 GES3

LCS1 LCSn

LIS1 LISn

LES11 LES12 LES13 LESn1 LESn2 LESn3

MDBS Architecture without Global Schema

ES1 ES2 ESn

LCS1 LCS2 LCSn

LIS1 LIS2 LISn

MultidatabaseLayer

Local DatabaseSystem Layer

Components of MDBSUser

Query Processor

Transaction Manager

Scheduler

Recovery Manager

Runtime Support Processor

User Requests

Query Processor

Transaction Manager

Scheduler

Recovery Manager

Runtime Support Processor

Database Database

Multi-DBMS Layer

System Responses

Global Directory Issues

Directory is itself a database that contains meat-data about the actual data stored in the database. It includes the support for fragmentation transparency for the classical DDBMS architecture.Directory can be local or distributed.Directory can be replicated and/or partitioned.Directory issues are very important for large multi-database applications, such as digital libraries.

Impact of new technologies

Internet and WWW Semi-structured data, multimedia data Keyword based search - browsing versus querying What does integration mean?

Applied technologies Workflow systems Data warehousing & Data mining What is the role of distributed database technology?

Research Issues - DDBMS Technology

Evaluation of state of the art data replication strategies.On-line distributed relational database redesign.Distributed object-oriented database systems - design (fragmentation, allocation), query processing (methods execution, transformation), transaction processingWWW and Internet - transparency issues, implementation strategies (architecture, scalability), On-line transaction processing, On-line analytical processing (data warehousing , data mining), query processing (STRUDEL, WebSQL), commit protocols

Research Issues - Applications

Workflow systems - High throughput (supply chain, Amazon,..) short, sweet, and robust versus ad-hoc (office automation) problem solving.Electronic commerce - reliable high throughput, distributed transactions.Distributed multimedia - QoS, real-time delivery, design and data allocation, MPEG-4 aspects.