Fragmentation independence refers to the ability of end users to store logically related information at different physical locations.
There are two types of fragmentation independence: vertical partitioning and horizontal partitioning.
Horizontal partitioning permits different rows of the same table to be stored at different remote sites. This is commonly done by organizations that maintain several branch offices, each with an identical set of table structures.
Vertical partitioning refers to the ability of a distributed system to fragment information such that the data columns from the same logical tables are maintained across the network. Oracle accomplishes this with Oracle views that hide specific columns and rows in a table.
When an organization is geographically dispersed, it may choose to store its databases
- on a central database server or
- to distribute them to local servers (or both).
A distributed database
is a single logical database that is spread physically across computers in multiple locations that are connected by a data communications network
. I emphasize that a distributed database is truly a database, not a loose collection of files. The distributed database is still centrally administered as a corporate resource while providing local flexibility and customization.
The network must allow the users to share the data; thus, a user (or program) at location X must be able to access (and perhaps update) data at location Y.
The sites of a distributed system may be spread over a large area (i.e., the United States or the world) or over a small area (i.e., a building or campus).
The computers may range from PCs, large-scale servers or even supercomputers. A distributed database requires multiple instances of a database management system (or several DBMSs), running at each remote site. The degree to which these different DBMS instances cooperate, or work in partnership, and whether there is a master site that coordinates requests involving data from multiple sites distinguish different types of distributed database environments.
It is important to distinguish between 1) distributed and 2) decentralized databases.
A decentralized database is also stored on computers at multiple locations. However, the computers are not interconnected by network and database software
that make the data appear to be in one logical database. Thus, users at the various sites cannot share data. A decentralized database is best regarded as a collection of independent databases, rather than having the geographical distribution of a single database.