By Ganesh V.
Pawar
distributed database system consists of loosely coupled sites that share no physical component Appears to user as a single system Database systems that run on each site are independent of each other Processing maybe done at a site other than the initiator of request
All sites have identical software They are aware of each other and agree to
cooperate in processing user requests It appears to user as a single system
A distributed system connects three databases: hq, mfg, and sales An application can simultaneously access or modify the data in several databases in a single distributed environment.
single query from a Manufacturing client on local database mfg can retrieve joined data from the products table on the local database and the dept table on the remote hq database. For a client application, the location and platform of the databases are transparent.
For
example, if you are connected to database mfg but want to access data on database hq, creating a synonym on mfg for the remote dept table enables you to issue this query: SELECT * FROM dept In this way, a distributed system gives the appearance of native data access. Users on mfg do not have to know that the data they access resides on remote databases.
In a heterogeneous distributed database system, at least one of the databases uses different schemas and software.
A database system having different schema may cause a major problem for query processing. A database system having different software may cause a major problem for transaction processing.
Replication
System maintains multiple copies of data, stored in
different sites, for faster retrieval and fault tolerance.
Fragmentation
Relation is partitioned into several fragments stored in
distinct sites
Replication
and fragmentation can be combined
Relation is partitioned into several fragments: system
maintains several identical replicas of each such fragment.
employee-info schema has a relation employee-info schema = (designation, name, Employee-id, salary). It fragments the relation to put information in two tables for security concern.
Distributed database - A set of databases in a distributed system that can appear to applications as a single data source.
Distributed processing - The operations that occurs when an application distributes its tasks among different computers in a network. For example, a database application typically distributes front-end presentation tasks to client computers and allows a back-end database server to manage shared access to a database. Consequently, a distributed database application processing system is more commonly referred to as a client/server database application system.
Horizontal Fragmentation
Each
fragment, Ti , of table T contains a subset of the rows Each tuple of T is assigned to one or more fragments.
A bank account schema has a relation Account-schema = (branch-name, account-number, balance). It fragments the relation by location and stores each fragment locally: rows with branch-name = `Hillside` are stored in the Hillside in a fragment