Important Considerations
Care with a distributed database must be taken to ensure the following:
- The distribution is transparent — users must be able to interact with the system as if it were one logical system. This applies to the system's performance, and methods of access among other things.
- Transactions are transparent — each transaction must maintain database integrity across multiple databases. Transactions must also be divided into sub-transactions, each sub-transaction affecting one database system.
There are mainly two approaches to store a relation r in a distributed database system:
- A) Replication
- B) Fragmentation
A) Replication: In replication, the system maintains several identical replicas of the same relation r in different sites.
-
- Data is more available in this scheme.
- Parallelism is increased when read request is served.
- Increases overhead on update operations as each site containing the replica needed to be updated in order to maintain consistency.
B) Fragmentation: The relation r is fragmented into several relations r1, r2, r3....rn in such a way that the actual relation could be reconstructed from the fragments and then the fragments are scattered to different locations. There are basically two schemes of fragmentation:
-
- Horizontal fragmentation - splits the relation by assigning each tuple of r to one or more fragments.
- Vertical fragmentation - splits the relation by decomposing the schema R of relation r.
Read more about this topic: Distributed Database
Famous quotes containing the word important:
“A childs self-image is more like a scrapbook than a single snapshot. As the child matures, the number and variety of images in that scrapbook may be far more important than any individual picture pasted inside it.”
—Lawrence Kutner (20th century)