Chapter 7
Chapter 7
Distributed Databases
• Heterogeneous and Homogeneous Databases
• Distributed Data Storage
• Distributed Transactions
• Commit Protocols
• Availability
• Distributed Query Processing
Distributed Database System
Aratkillo Tesfaye 1
Aratkillo Yonas 2
Kidistsilassie Zekarias 3
Kidistsilassie Abebe 4
AratKillo Ayele 5
Kidistsilassie Getahun 6
Kidistsilassie Yared 7
deposit1 = branch_name, customer_name, tuple_id (employee_info )
account_number balance tuple_id
A-305 500 1
A-226 336 2
A-177 205 3
A-402 10000 4
A-155 62 5
A-408 1123 6
A-639 750 7
deposit2 = account_number, balance, tuple_id (employee_info )
Advantages of Fragmentation
• Horizontal:
– allows parallel processing on fragments of a relation
– allows a relation to be split so that tuples are located where
they are most frequently accessed
• Vertical:
– allows tuples to be split so that each part of the tuple is stored
where it is most frequently accessed
– tuple-id attribute allows efficient joining of vertical fragments
– allows parallel processing on a relation
• Vertical and horizontal fragmentation can be mixed.
– Fragments may be successively fragmented to an arbitrary
depth.
Data Transparency
• Data transparency: Degree to which system
user may remain unaware of the details of
how and where the data items are stored in
a distributed system
• Consider transparency issues in relation to:
– Fragmentation transparency
– Replication transparency
– Location transparency
Distributed Transactions
• Transaction may access data at several sites.
• Each site has a local transaction manager responsible for:
– Maintaining a log for recovery purposes
– Participating in coordinating the concurrent execution of the
transactions executing at that site.
• Each site has a transaction coordinator, which is responsible for:
– Starting the execution of transactions that originate at the site.
– Distributing subtransactions at appropriate sites for execution.
– Coordinating the termination of each transaction that originates at the
site, which may result in the transaction being committed at all sites or
aborted at all sites.
Transaction System Architecture
System Failure Modes
• Failures unique to distributed systems:
– Failure of a site.
– Loss of messages
• Handled by network transmission control protocols such as TCP/IP
– Failure of a communication link
• Handled by network protocols, by routing messages via alternative links
– Network partition
• A network is said to be partitioned when it has been split into two or
more subsystems that lack any connection between them
– Note: a subsystem may consist of a single node