- Federated database system
A federated database system is a type of
meta- database management system (DBMS) which transparently integrates multiple autonomous database systems into a single federated database. The constituentdatabase s are interconnected via acomputer network , and may be geographically decentralized. Since the constituent database systems remain autonomous, a federated database system is a contrastable alternative to the (sometimes daunting) task of merging together several disparate databases.A federated database (or virtual database) is the fully-integrated, logical composite of all constituentdatabase s in a federated database system.McLeod and Heimbigner"cite conference | author = McLeod and Heimbigner | title=A Federated architecture for information management | booktitle = ACM Transactions on Information Systems Vol 3, Issue 3 | year =1985 | pages = 253-278 | url= http://delivery.acm.org/10.1145/10000/4233/p253-heimbigner.pdf?key1=4233&key2=2467280811&coll=GUIDE&dl=GUIDE&CFID=24352949&CFTOKEN=82196277] were one of the first papers to define a Federated Database Architecture "define the architecture and interconnect databases that minimize central authority yet supports partial sharing and coordination among database systems"
Through
data abstraction , federated database systems can provide a uniformfront-end user interface , enabling users and clients to store and retrievedata in multiple noncontiguousdatabase s with a singlequery --even if the constituent databases areheterogeneous . To this end, a federated database system must be able to decompose thequery into subqueries for submission to the relevant constituent DBMS's, after which the system must composite theresult set s of the subqueries. Because various database management systems employ differentquery language s, federated database systems can applywrapper s to the subqueries to translate them into the appropriatequery language s.Among other surveys "cite conference | author=Sheth and Larson | title=Federated Database Systems for Managing Distributed, Heterogenous, and Autonomous Databases | booktitle = ACM Computing Surveys Vol 22, No.3 | year=1990 | pages= 183-236 | url=http://data-integration-cs-79003.googlegroups.com/web/1990-fedDB-survey-sheth.pdf?gda=cx8nLUwAAADJabUam3aHn7J0OLYbm0SDXYFBc7zSIEr2au_QCKRbqGG1qiJ7UbTIup-M2XPURDTKVFcNSULXvZWrs9qkRizFvhoESPU8LSjFM5QznOJPNg&hl=en] defines Federated Databases as a collection of cooperating component systems which are autonomous and are possibly heterogenous. The three important components of an FDBS as pointed out in is autonomy, heterogeneity and distribution. Another dimension which has also been considered is the Networking Environment
Computer Network , e.g. many DBSs over a LAN or many DBSs over a WAN update related functions of participating DBSs (e.g no updates, nonatomic transitions,Atomic updates).FDBS Architecture
A DBMS can be classified as either centralized or distributed. A centralized system manages a single database while distributed manages multiple databases. A component DBS in a DBMS may be centralized or distributed. A multiple DBS (MDBS) can be classified into two types depending on the autonomy of the component DBS as federated and non federated. A nonfederated database system is an integration of component DBMS that are not autonomous. A federated database system consists of component DBS that are autonomous yet participate in a federation to allow partial and controlled sharing of their data.
Federated architectures differ based on levels of integration with the component database systems and the extent of services offered by the federation. A FDBS can be categorized as loosely or tightly coupled systems.
*Loosely Coupled require component databases to construct their own federated
schema . A user will typically access other component database systems by using a multidatabase language but this removes any levels of location transparency, forcing the user to have direct knowledge of the federatedschema . A user imports the data they require from other component databases and integrates it with their own to form a federatedschema .
*Tightly coupled system consists of component systems that use independent processes to construct and publicize an integrated federatedschema .Multiple DBS of which FDBS are a specific type can be characterized along three dimensions: Distribution, Heterogeneity and Autonomy. Another characterization could be based on the dimension of networking For e.g. single databases or multiple databases in a LAN or WAN.
Distribution
Distribution of data in an FDBS is due to the existence of a multiple DBS before an FDBS is built. Data can be distributed among multiple DB which could be stored in a single computer or multiple computers. These computers could be geographically located in different places but interconnected by a network. The benefits of data distribution help in increased availability and reliability as well as improved access times.
Heterogeneities in databases arise due to several factors. Some of them occur due to differences in structures, semantics of data, the constraints supported or
query language. Differences in structure occur when twodata model s provide different primitives such as object oriented (OO) models that support specialization and inheritance andrelational model s that do not. Differences due to constrains occur when two models support two different constrains. For example the set type inCODASYL schema may be partially modelled as a referential integrity constraint in a relationship schema.CODASYL supports insertion and retention that are not captured by referential integrity alone. Thequery language supported by a DBMSs can also contribute to heterogeneity between other component DBMSs. For example differences inquery languages with samedata model s or different versions ofquery languages could contribute heterogeneity.Semantic heterogeneities arise when there is a disagreement about meaning, interpretation or intended use of
data . At the schema and data level, some of the possible classification of Heterogeneities that occur are
*Naming Conflicts e.g.Database s using different names to represent the same concept.
*Domain Conflicts orData Representation conflicts e.g.Database s using different values to represent same concept.
*Precision Conflicts e.g.Database s using same data values from domains of different cardinalities for samedata .
*Metadata Conflicts e.g. same concepts are represented atschema level and instance level.
*Data Conflicts e.g. Missing attributes
*Schema Conflicts e.g. Table versus table conflict which includes naming conflicts, data conflicts etc.In creating a federated schema, one has to resolve such heterogeneities before integrating the component DB schemas.
chema matching, schema mapping
Dealing with incompatible data types or query syntax is not the only obstacle to a concrete implementation of an FDBS. In systems that are not planned top-down, a generic problem lies in matching semantically equivalent, but differently named parts from different schemas (=data models) (tables, attributes). A pairwise mapping between "n" attributes would result in mapping rules (given equivalence mappings) - a number that quickly gets too large for practical purposes. A common way out is to provide a global schema that comprises the relevant parts of all member schemas and provide mappings in the form of
database view s. Two principal solutions can be realized, depending on the direction of the mapping:
# Global as View (GaV): the global schema is defined in terms of the underlying schemas
# Local as View (LaV): the local schemas are defined in terms of the global schemaBoth are explained in more detail in the articleData integration .Alternate approaches to the schema matching problem and a classification of the same are explained in more detail in the articleSchema Matching Autonomy
Fundamental to the difference between an MDBS and an FDBS is the concept of autonomy. It is important to understand the aspects of autonomy for component databases and how they can be addressed when a component DBS participates in an FDBS. There are four kinds of autonomies addressed
* Design Autonomy which refers to ability to choose its design irrespective of data, query language or conceptualization, functionality of the system implementation.
Heterogeneities in an FDBS are primarily due to design autonomy.
* Communication autonomy refers to the general operation of the DBMS to communicate with other DBMS or not.
* Execution autonomy allows a component DBMS to control the operations requested by local and external operations.
* Association autonomy gives a power to component DBS to disassociate itself from a federation which means FDBS can operate independently of any single DBS.The ANSI/X3/SPARC Study Group outlined a three level data description architecture, the components of which are the conceptual schema, internal schema and external schema of databases. The three level architecture is however inadequate to describing the architectures of an FDBS. It was therefore extended to support the three dimensions of the FDBS namely Distribution, Autonomy and Heterogeneity. The five level schema architecture is explained below.
Concurrency control
The "Heterogeneity" and "Autonomy" requirements pose special challenges concerning
concurrency control in an FDBS, which is crucial for the correct execution of its concurrent transactions (see alsoGlobal concurrency control ). Achievingglobal serializability , the major correctness criterion, under these requirements has been characterized as very difficult and unsolved.Commitment ordering , introduced in 1991, has provided a general solution for this issue (SeeGlobal serializability ; SeeCommitment ordering also for the architectural aspects of the solution).Five Level Schema Architecture for FDBSs
The five level schema architecture includes the following:-
* Local Schema is the conceptual concept expressed in primary data model of component DBMS.
* Component Schema is derived by translating local schema into a model called the canonical data model or common data model. They are useful when semantics missed in local schema are incorporated in the component. They help in integration of data for tightly coupled FDBS.
* Export Schema represents a subset of a component schema that is available to the FDBS. It may include access control information regarding its use by specific federation user. The export schema help in managing flow of control of data.
* Federated Schema is an integration of multiple export schema. It includes information on data distribution that is generated when integrating export schemas.
* External Schema defines a schema for a user/applications or a class of users/applications.External links
* [http://citeseer.ist.psu.edu/cache/papers/cs/9149/http:zSzzSzwww.bm.ust.hkzSz~zhaozSzDSS96.pdf/schema-coordination-in-federated.pdf] (Schema coordination in federated database management: a comparison with schema integration)
* [http://www.computing.dcu.ie/~dalenk/publications/PhD%20Transfer%20talk.ppt] (Storage of Behaviour of Object Database)
* [http://www.ibm.com/developerworks/db2/library/techarticle/dm-0504zikopoulos/] (DB2 and Federated Databases)
* [http://www.vldb.org/conf/1991/P489.PDF] (Tutorial on Federated Database)
*http://www.dcs.bbk.ac.uk/~lucas/talks/SCSIS_RD_200507.pps GaV and LaV explained
*http://www.ibm.com/developerworks/db2/library/techarticle/0304lurie/0304lurie.html Issues of where to perform the join aka "pushdown" and other performance characteristics
*http://www.ibm.com/developerworks/db2/library/techarticle/0307lurie/0307lurie.html Worked example federating Oracle, Informix, DB2, and Excelee also
Schema Matching Virtual Octopus Database Enterprise Information Integration References
Wikimedia Foundation. 2010.