Вы находитесь на странице: 1из 10

chapter13.

ppt

Septem ber 98

Department: Unit Name: Unit Code: Adopted by:

Computer Science. Database Management Systems CSC 304 Obuhuma James

Distributed and Mobile DBMSs


Reference: Connolly, T. M. and Begg, C. E., Database Systems: A Practical Approach to Design, Implementation, and Management, 5th Edition, Addison Wesley: 2010.

Pearson Education 2009

Pearson Education 2009

Objectives
Main concepts of distributed DBMSs (DDBMSs) Differences between DDBMSs and distributed processing. Advantages and disadvantages of distributed databases. Main issues associated with distributed database design. How fragmentation should be carried out. The importance of allocation and replication.
Pearson Education 2009 3

Objectives
Levels of transparency that should be provided by DDBMS. Main concepts associated with database replication. Main concepts associated with mobile DBMSs.

Pearson Education 2009

DDBMS concepts
Distributed Database
A logically interrelated collection of shared data (and a description of this data), physically distributed over a computer network.

DDBMS concepts
Collection of logically-related shared data. Data split into fragments. Fragments may be replicated. Fragments/replicas allocated to sites. Sites linked by a communications network. Data at each site is under control of a DBMS. DBMSs handle local applications autonomously. Each DBMS participates in at least one global application.
5 Pearson Education 2009 6

Distributed DBMS
Software system that permits the management of the distributed database and makes the distribution transparent to users.

Pearson Education 2009

chapter13.ppt

Septem ber 98

Distributed DBMS

Distributed processing
A centralized database that can be accessed over a computer network.

Pearson Education 2009

Pearson Education 2009

Advantages of DDBMSs
Reflects organizational structure Improved shareability and local autonomy Improved availability Improved reliability Improved performance Economics Modular growth.
Pearson Education 2009 9

Disadvantages of DDBMSs
Complexity Cost Security Integrity control more difficult Lack of standards Lack of experience Database design more complex.
Pearson Education 2009 10

Types of DDBMS
Homogeneous DDBMS
All sites use same DBMS product. Much easier to design and manage. Approach provides incremental growth and allows increased performance.

Multidatabase system (MDBS)


DDBMS in which each site maintains complete autonomy. DBMS that resides transparently on top of existing database and file systems and presents a single database to its users. Allows users to access and share data without requiring physical database integration. Unfederated MDBS (no local users) and federated MDBS.
Pearson Education 2009 12

Heterogeneous DDBMS
Sites may run different DBMS products, with possibly different underlying data models. Occurs when sites have implemented their own databases and integration is considered later. Translations required. Typical solution: gateways.
Pearson Education 2009 11

chapter13.ppt

Septem ber 98

Taxonomy of DBMSs

Distributed database design


Three key issues:
Fragmentation, Allocation, Replication.

Pearson Education 2009

13

Pearson Education 2009

14

Distributed database design


Fragmentation
Relation may be divided into a number of subrelations, which are then distributed.

Fragmentation
Definition and allocation of fragments carried out strategically to achieve:
Locality of Reference. Improved Reliability and Availability. Improved Performance. Balanced Storage Capacities and Costs. Minimal Communication Costs.

Allocation
Each fragment is stored at site with optimal distribution.

Replication
Copy of fragment may be maintained at several sites.
15

Involves analyzing most important applications, based on quantitative/qualitative information.


Pearson Education 2009

Pearson Education 2009

16

Fragmentation
Quantitative information may include:
frequency with which an application is run; site from which an application is run; performance criteria for transactions applications.

Why fragment?
Usage: Applications work with views rather than entire relations. Efficiency: Data is stored close to where it is most frequently used.
and
Data that is not needed by local applications is not stored.

Qualitative information may include transactions that are executed by application, type of access (read or write), and predicates of read operations.

Parallelism: With fragments as unit of distribution, transaction can be divided into several subqueries that operate on fragments. Security: Data not required by local applications is not stored and so not available to unauthorized users.
17
Pearson Education 2009

Pearson Education 2009

18

chapter13.ppt

Septem ber 98

Why fragment? - Disadvantages


Performance, Integrity.

Correctness rules for fragmentation


Three correctness rules:
Completeness, Reconstruction, Disjointness.

Pearson Education 2009

19

Pearson Education 2009

20

Correctness rules for fragmentation


Completeness
If relation R is decomposed into fragments R1, R2, ... Rn, each data item that can be found in R must appear in at least one fragment.

Correctness rules for fragmentation


Disjointness If data item di appears in fragment Ri, then it should not appear in any other fragment. Exception: vertical fragmentation, where primary key attributes must be repeated to allow reconstruction. For horizontal fragmentation, data item is a tuple. For vertical fragmentation, data item is an attribute.
21
Pearson Education 2009

Reconstruction Must be possible to define a relational operation that will reconstruct R from the fragments. Reconstruction for horizontal fragmentation is Union operation and Join for vertical.
Pearson Education 2009

22

Types of fragmentation
Four types of fragmentation:
Horizontal, Vertical, Mixed, Derived.

Horizontal and vertical fragmentation

Other possibility is no fragmentation:


If relation is small and not updated frequently, may be better not to fragment relation.
Pearson Education 2009

23

Pearson Education 2009

24

chapter13.ppt

Septem ber 98

Mixed fragmentation

Horizontal fragmentation
Consists of a subset of the records of a table. Defined using WHERE clause in SQL SELECT. For example:
DC1: SELECT * FROM DVDCopy WHERE dCenterNo=D001; DC2: SELECT * FROM DVDCopy WHERE dCenterNo=D002; DC3: SELECT * FROM DVDCopy WHERE dCenterNo=D003; DC4: SELECT * FROM DVDCopy WHERE dCenterNo=D004;

Pearson Education 2009

25

Pearson Education 2009

26

Vertical fragmentation
Consists of a subset of the columns of a table. Defined using SELECT clause of SQL SELECT. For example:
S1: SELECT staffNo, position, salary FROM Staff; S2: SELECT staffNo, name, eMail, dCenterNo FROM Staff;

Mixed fragmentation
Consists of a horizontal fragment that is vertically fragmented, or a vertical fragment that is horizontally fragmented. For example, from above example:
SELECT * FROM S2 WHERE dCenterNo = D001; SELECT * FROM S2 WHERE dCenterNo = D002; SELECT * FROM S2 WHERE dCenterNo = D003; SELECT * FROM S2 WHERE dCenterNo = D004;

Pearson Education 2009

27

Pearson Education 2009

28

Derived horizontal fragmentation


A horizontal fragment that is based on horizontal fragmentation of a parent relation. Ensures that fragments that are frequently joined together are at same site. For example:
DR1: SELECT dr.* FROM DVDRental dr, DC1 WHERE dr.DVDNo = DC1.DVDNo; DR2: SELECT dr.* FROM DVDRental dr, DC2 WHERE dr.DVDNo = DC2.DVDNo; DR3: SELECT dr.* FROM DVDRental dr, DC3 WHERE dr.DVDNo = DC3.DVDNo; DR4: SELECT dr.* FROM DVDRental dr, DC4 WHERE dr.DVDNo = DC4.DVDNo;
Pearson Education 2009

Data allocation
Centralized: Consists of single database and DBMS stored at one site with users distributed across the network. Partitioned: Database partitioned into disjoint fragments, each fragment assigned to one site. Complete Replication: Consists of maintaining complete copy of database at each site. Selective Replication: Combination of partitioning, replication, and centralization.
29
Pearson Education 2009

30

chapter13.ppt

Septem ber 98

Comparison of data allocation strategies

Distributed database design methodology


1. 2. 3. 4. 5.

Use normal methodology to produce a design for the global relations. Examine topology of system to determine where databases will be located. Analyze most important transactions and identify appropriateness of horizontal/vertical fragmentation. Decide which tables are not to be fragmented. Examine tables on 1 side of relationships and determine a suitable fragmentation schema. Tables on many side may be suitable for derived fragmentation.
32

Pearson Education 2009

31

Pearson Education 2009

Transparencies in a DDBMS
Distribution Transparency
Fragmentation Transparency Location Transparency Replication Transparency Local Mapping Transparency Naming Transparency

Transparencies in a DDBMS
Transaction Transparency
Concurrency Transparency Failure Transparency

Performance Transparency DBMS Transparency

Pearson Education 2009

33

Pearson Education 2009

34

Distribution transparency
Distribution transparency allows user to perceive database as single, logical entity. If DDBMS exhibits distribution transparency, user does not need to know:
data is fragmented (fragmentation transparency), location of data items (location transparency), otherwise call this local mapping transparency.

Transaction transparency
Ensures that all distributed transactions maintain distributed databases integrity and consistency.
In IBMs Distributed Relational Database Architecture (DRDA), four types of transactions:
Remote request Remote unit of work Distributed unit of work Distributed request.
Pearson Education 2009

With replication transparency, user is unaware of replication of fragments.

Pearson Education 2009

35

36

chapter13.ppt

Septem ber 98

IBMs DRBA

Concurrency transparency
All transactions must execute independently and be logically consistent with results obtained if transactions executed one at a time, in some arbitrary serial order. Same fundamental principles as for centralized DBMS. DDBMS must ensure both global and local transactions do not interfere with each other. Similarly, DDBMS must ensure consistency of all subtransactions of global transaction.

Pearson Education 2009

37

Pearson Education 2009

38

Concurrency transparency
Replication makes concurrency more complex. If a copy of a replicated data item is updated, update must be propagated to all copies. Could propagate changes as part of original transaction, making it an atomic operation. However, if one site holding copy is not reachable, then transaction is delayed until site is reachable. Could limit update propagation to only those sites currently available. Remaining sites updated when they become available again. Could allow updates to copies to happen asynchronously, sometime after the original update. Delay in regaining consistency may range from a few seconds to several hours.
Pearson Education 2009

Failure transparency
DDBMS must ensure atomicity and durability of global transaction. Means ensuring that subtransactions of global transaction either all commit or all abort. Thus, DDBMS must synchronize global transaction to ensure that all subtransactions have completed successfully before recording a final COMMIT for global transaction. Must do this in presence of site and network failures.

39

Pearson Education 2009

40

Failure transparency Two-phase Commit


Two phases: a voting phase and a decision phase. Coordinator asks all participants whether they are prepared to commit transaction.
If one participant votes abort, or fails to respond within a timeout period, coordinator instructs all participants to abort transaction. If all vote commit, coordinator instructs all participants to commit.

Failure transparency Two-phase Commit

All participants must adopt global decision. If participant votes abort, free to abort transaction immediately If participant votes commit, must wait for coordinator to broadcast global-commit or global-abort message.
Pearson Education 2009

41

Pearson Education 2009

42

chapter13.ppt

Septem ber 98

Performance transparency
DDBMS must perform as if it were a centralized DBMS.
DDBMS should not suffer any performance degradation due to distributed architecture. DDBMS should determine most cost-effective strategy to execute a request.

Performance transparency
DQP produces execution strategy optimized with respect to some cost function. Typically, costs associated with a distributed request include:
I/O cost; CPU cost; communication cost.

Must consider fragmentation, replication, and allocation schemas. Distributed QP maps data request into ordered sequence of operations on local databases. DQP has to decide:
which fragment to access; which copy of a fragment to use; which location to use.
Pearson Education 2009

43

Pearson Education 2009

44

Performance transparency - Example


Member(memberNo, mCity) DVDCopy(DVDNo, catalogNo) Rental(memberNo, DVDNo) SELECT dc.DVDNo FROM DVDCopy dc, Rental r, Member m WHERE dc.DVDNo=r.DVDNo AND r.memberNo=m.memberNo AND dc.catalogNo = 634817 AND m.mCity = Chicago; Each record is 20 characters long. 1000 members in Chicago; 200 000 rentals of War of the Worlds (634817). Computation time negligible compared to communication time.
Pearson Education 2009

Performance transparency - Example


Strategy (1) Move DVDCopy table to Seattle and process query there.
(2) Move Member and Rental tables to New York and process query there. (3) Join Member & Rental at Seattle, select records for Chicago members, and for each of these in turn, check at New York for an associated catalogNo = 634817. (4) Select DVD copies with catalogNo = 634817 at New York and for each one found, check at Seattle for a rental involving a member living in Chicago. (5) Join Member and Rental tables at Seattle, select Chicago members, project result over DVDNo, and move this result to New York for matching with catalogNo = 634817. (6) Select DVD copies with catalogNo = 634817 at New York and move the result to Seattle for matching with rentals associated with Chicago members. 41 seconds 2 seconds 11.12hours 33.3mins

100000 records in Seattle 1000000 records in NY 1000000 records in Seattle

Time
33.3 mins 1.17hours

45

Pearson Education 2009

46

Dates 12 rules for a DDBMS


0. Fundamental Principle
To the user, a distributed system should look exactly like a nondistributed system.

Dates 12 rules for a DDBMS


7. 8. 9. 10. 11. 12. Distributed Query Processing Distributed Transaction Processing Hardware Independence Operating System Independence Network Independence Database Independence

1. 2. 3. 4. 5. 6.

Local Autonomy No Reliance on a Central Site Continuous Operation Location Independence Fragmentation Independence Replication Independence
47

Last four rules are ideals.

Pearson Education 2009

Pearson Education 2009

48

chapter13.ppt

Septem ber 98

Replication servers
Replication
Process of generating and reproducing multiple copies of data at one or more sites. Provides users with access to current data where and when they need it. Provides number of benefits, including improved performance when centralized resources get overloaded, increased reliability and data availability, and support for mobile computing and data warehousing. 49

Replication servers
Synchronous updates to replicated data are part of enclosing transaction.
If one or more sites that hold replicas are unavailable transaction cannot complete. Large number of messages required to coordinate synchronization.

Asynchronous - target database updated after source database modified.


Delay in regaining consistency may range from few seconds to several hours or even days.
50

Pearson Education 2009

Pearson Education 2009

Replication - functionality
At basic level, has to be able to copy data from one database to another (synch or asynchronous). Other functions include:
Scalability. Mapping and Transformation. Object Replication. Specification of Replication Schema. Subscription mechanism. Initialization mechanism.

Replication data ownership


Ownership relates to which site has privilege to update the data. Main types of ownership are:
Master/slave (or asymmetric replication), Workflow, Update-anywhere (or peer-to-peer or symmetric replication).

Pearson Education 2009

51

Pearson Education 2009

52

Replication Master/Slave Ownership


Asynchronously replicated data is owned by one (master) site, and can be updated by only that site. Using publish-and-subscribe metaphor, master site makes data available. Other sites subscribe to data owned by master site, receiving read-only copies. Potentially, each site can be master site for nonoverlapping data sets, but update conflicts cannot occur.
Pearson Education 2009

Replication Workflow Ownership


Avoids update conflicts, while providing more dynamic ownership model. Allows right to update replicated data to move from site to site. However, at any one moment, only ever one site that may update that particular data. Example is order processing system, which follows steps, such as order entry, credit approval, invoicing, shipping, and so on.
Pearson Education 2009

53

54

chapter13.ppt

Septem ber 98

Replication Update Anywhere Ownership


Creates peer-to-peer environment where multiple sites have equal rights to update replicated data. Allows local sites to function autonomously, even when other sites are not available. Shared ownership can lead to conflict scenarios and have to detect conflict and resolve it.

Mobile databases
Witnessing increasing demands on mobile computing to provide support for growing number of mobile workers. Such a workforce require to work as if in the office but in reality they are working from remote location places. With rapid expansion of cellular, wireless, and satellite comms, soon be possible for mobile users to access any data, anywhere, at any time. However, , business etiquette, practicalities, security, and costs may still limit communication (eg. cant get online connection for as long as want, whenever you want). Mobile databases offer a solution for some of these restrictions. 56

Pearson Education 2009

55

Pearson Education 2009

Mobile databases
Mobile database A database that is portable and physically separate from a centralized database server but is capable of communicating with that server from remote sites allowing the sharing of corporate data. Components of a mobile database environment include:
corporate database server and DBMS that manages and stores the corporate data and provides corporate applications; remote database and DBMS that manages and stores the mobile data and provides mobile applications; mobile database platform that includes laptop, PDA, or other Internet access devices; two-way communication links between the corporate and mobile DBMS.
Pearson Education 2009

Mobile database environment

57

Pearson Education 2009

58

Mobile DBMSs
Additional functionality required of mobile DBMSs includes ability to:
communicate with centralized database server through modes such as wireless or Internet access; replicate data on centralized database server and mobile device; synchronize data on centralized database server and mobile device; capture data from various sources such as the Internet; manage data on the mobile device; analyze data on a mobile device; create customized mobile applications. 59

Pearson Education 2009

10

Вам также может понравиться