Keywords in Distributed Database / Keywords defined in Distributed Database / Two Marks Questions with Answers in Distributed Database
Keywords and Definitions
Replication (in Database)
Storing identical copies of same relations (tables) in different sites in a distributed database is called Replication.
For example, a relation R is sent to several sites as R. At the end of replication in n different sites, the following will hold;
R in Site 1 = R in Site 2 = R in Site 3 = ... = R in Site n
Fragmentation (in Database)
Partitioning a relation (table) vertically or horizontally into several partitions and storing each partition in different site is called Fragmentation in distributed database.
For example, a relation R is horizontally fragmented into n fragments. At the end of Horizontal fragmentation, every fragment is sent to n sites as follows;
R = R1 U R2 U R3 U ... U Rn
Or, a relation R is vertically fragmented into n fragments, and sent to n sites as follows;
R = R1 R2 R3 ... Rn
When a site recovers from failure, the first job is to check its own log file to set right all those transactions that were executing during the failure. In this event, the recovering site checks for the transaction control messages like <commit T>, <abort T>, or <ready T>.
In this process, if any transaction have only <ready T> messages and no <commit T> or <abort T>, then the recovering site cannot decide the fate of that particular transaction on its own. It means, the site has to contact other sites for deciding the fate of the transaction. Such a transaction is called as In-doubt transaction.
The Purpose of Commit Protocol in Distributed Database
To ensure Atomicity. That is, a distributed transaction would mean a single transaction which is executed at various sites simultaneously. At the end of the execution of that transaction, all sites must perform a commit or abort without any conflicts. Failing which would lead to an inconsistent database.