Presentation is loading. Please wait.

Presentation is loading. Please wait.

Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Distributed Query Processing  Distributed Transaction.

Similar presentations


Presentation on theme: "Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Distributed Query Processing  Distributed Transaction."— Presentation transcript:

1 Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Distributed Query Processing  Distributed Transaction Management  Building Distributed Database Systems (RAID)  Mobile Database Systems  Privacy, Trust, and Authentication  Peer to Peer Systems

2 Useful References B. Bhargava and John Riedl, The Raid Distributed Database System, IEEE Trans on Software Engineering, 15(6), June 1989. B. Bhargava and John Riedl, A Model for Adaptable Systems for Transaction Processing, IEEE Transactions on Knowledge and Data Engineering, 1(4), Dec 1989. B. Bhargava, Building Distributed Database Systems. Y. Zhang and B. Bhargava, WANCE: Wide area network communication emulation systems, IEEE workshop on Parallel and Distributed Systems, 1993. E. Mafla, and B. Bhargava, Communication Facilities for Distributed Transaction Processing Systems, IEEE Computer, 24(8), 1991. B. Bhargava, Y. Zhang, and E. Mafla, Evolution of a communication system for distributed transaction processing in RAID, Computing Systems, 4(3), 1991.

3 1.LOCUS (UCLA)File system OS 2.TABS (Camelot) (CMU)Data servers OS 3.RAID (Purdue)Database level (server) 4.SDD-1 (Computer Corp. of America)Transaction manager Data manager 5.System – R* (IBM)Database level 6.ARGUS (MIT)Guardian (server) Implementations

4 User Transaction Parser Action Driver (ensure transaction atomicity across sites) Action Driver (interpret transactions) Action Driver (ensure serializability) compiled transactions compiled transactions compiled transactions abort or commit Concurrency Controler Atomic Controller site j, k, l,… Action Driver (interpret transactions) log//diff file Database after commit updates read only.................... Architecture of RAID System

5 RAID Transactions Query Language DBMS Atomicity Controller Atomicity Controller Atomicity Controller Concurrency Controller completed transactions

6 RAID Distributed System RAID supports reliability transactions stable storage buffer pool management DBOS other applications OS DBMS other applications OS RAID

7 Local Database User Process (UI and AD) TM Process (AM, AC, CC, RC) Remote RAID Sites (2 messages) Transaction Management in one Server

8 Server CPU Time (second) ServerACCC Transactionusersystemusersystem Select one tuple0.040.140.040.06 select eleven tuples0.040.080.02 Insert twenty tuples0.200.160.120.13 Update one tuple0.040.100.02 ServerADAM Transactionusersystemusersystem Select one tuple0.340.900.00 select eleven tuples0.541.480.00 Insert twenty tuples1.233.100.140.71 Update one tuple0.340.760.040.58 CPU time used by RAID servers in executing transactions

9 Transaction1 site2 sites3 sites4 sites Select one tuple0.3 0.4 Select eleven tuples0.4 Insert twenty tuples0.6 0.8 Update one tuple0.4 RAID Elapsed Time for Transactions in seconds

10 Message († multicast dest = 5) Length Bytes Raidcomm V.1  s Raidcomm V.2  s Raidcomm V.3  s SendNull4424621113683 MultiNull †44121801120782 Send Timestamp4825101157668 Send Relation Descriptor 7626521407752 Send Relation Descriptor † 72123301410849 Send Relation15638642665919 Send Write Relation160393027181102 Performance Comparison of the Communication Libraries

11 Raid Slides Time (ms) 50 100 150 ADACRCCCAM Raidcomm V.1 Raidcomm V.2 Raidcomm V.3

12 Raid Slides Experiences with RAID Distributed Database Unix influences must be factored out. Communications software costs dominate everything else. Server based systems can provide modularity and efficiency. Concurrent execution in several server types is hard to achieve. Need very tuned system to conduct experiments. Data is not available from others for validation. Expensive research direction, but is respected and rewarded.

13 Raid Slides LAYERS Transaction –Transparent to errors –RPC – executed within transaction Communication –Datagram as basic unit –RPC – user level IPC (provides atomicity/reliability) –Broadcast Input/Output System –Lower level I/O (reading and writing raw data) –Stable storage (log, UNDO, REDO) –Upper level I/O (reliable read/write)

14 Raid Slides SSStable storage: special I/O for log, backup info. LMMLow level memory management: simple physical memory services. UMMUpper level memory management: virtual memory, if desired; buffer pools. COCommunication: semi-reliable datagrams (at most once?) ; broadcast. LIOLow-level I/O: interface to hardware I/O. UIOUpper-level I/O: read/write protocol, permitting replication and providing location independence; includes logging. TRTransactions management: BeginTrans, EndTrans, and Abort verbs; provides concurrency control; must have ‘hooks’ in read/write system calls. RPCRemote procedure call support: reliable RPC. PCPartition control: provides virtual fail-proof network to upper layers (also handles site failure/recovery). Description of Symbols

15 Raid Slides UIO LIOSS TR LMMUMMCO RPC PC Dependency graph for proposed layered, distributed system

16 Raid Slides uniquetwotentwentyhundredthousand 509264615 6131536923 7031768746 815880424 909359707 10031932455 11161620832 1211679719 1319319639 1410441872 1512484931 The THOUSAND Relation Some example tuples from the thousand relation

17 Raid Slides Single-Site RAID TransactionInterpretCommitWrite Select one tuple2.10.40.0 Select eleven tuples3.40.40.0 Insert twenty tuples3.81.42.8 Update one tuple1.90.51.5 Execution times in 1-site RAID (in seconds)

18 Raid Slides Two-Site RAID TransactionInterpretCommitWrite Select one tuple1.90.40.0 Select eleven tuples3.60.50.0 Insert twenty tuples3.51.43.4 Update one tuple1.80.51.6 Execution times in 2-site RAID (in seconds)

19 Raid Slides Three-Site RAID TransactionInterpretCommitWrite Select one tuple2.00.40.0 Select eleven tuples3.40.40.0 Insert twenty tuples4.11.45.1 Update one tuple1.70.42.2 Execution times in 3-site RAID (in seconds)

20 Raid Slides Four-Site RAID TransactionInterpretCommitWrite Select one tuple2.20.40.0 Select eleven tuples3.70.40.0 Insert twenty tuples3.91.56.9 Update one tuple1.80.42.7 Execution times in 4-site RAID (in seconds)


Download ppt "Outline  Introduction  Background  Distributed DBMS Architecture  Distributed Database Design  Distributed Query Processing  Distributed Transaction."

Similar presentations


Ads by Google