Webeks.net - freelance programming
freelance programming - php, Joomla, Zend ...
Home

Decentralized database

Written by Miha

Database in general can be described as a pair: data (D) and index (I). We distinguish four types of database access:

 

  • read (r)
  • add (a)
  • update (u)
  • delete (d)

Decentralized database types - based on data and index location

DB0 - central database

Located within one computer system. We have only one copy of data and index.

DB1 - replicated  database

Central database is copied on multiple computers. We have to assure consistency - it means that all copies are identical DBi = DBj. This type is good if reading (r) is main operation on the database. Problem emerges when users change contents of database (add, update or delete). In this case local indexes and data on all locations have to be renewed (if we update only index has to be renewed).

DB2 - central database with subsets

Subsets contain their own data of specified location. Other data can be found in central DB when need for that emerges.

DB3 - central database with intersecting subsets

DB3 works like DB2. The main difference is when data is being changed. In DB2 we only have to renew at one location. In DB3 we have to know locations where particular data is stored and renew those locations as well - data consistency is very hard to maintain. DB3 type is highly avoided.

DB4 - central index with subsets

We don't have central data anymore, only index stays central.

DB5 - central index with intersecting subsets

Same as above DB4 type. However same data can appear on multiple locations. When reading we get multiple locations where data is stored. When changing we have to update data on all locations, central and local indexes as well.

DB6 - partitioned database

Database without central data or index. In this type is impossible to plan search procedures that would be consistent and defined in advance.
Change data is simple (done only in one place) when we found its location.

DB7 - intersecting database

Same as DB6 - we don't have central data or index. We have however additional problems because data can be stored at different locations (when changing we have to update them all).

 

Other possible classifications

Horizontal decentralization

Data structure (entity model) is the same at all locations. Data is being organized in same manner. Subsets are only distinguished in contents.

Scheme decentralization

Various data structure on different locations that are based on same logical entity model.

Reorganized decentralization

Related to horizontal decentralization. Subsets have the same attributes dictionary but they are differently ordered. This type is typical for independently developed information systems - problem domain is the same. Contents are identical but their structure is not compatible.

Vertical decentralization

Subsets differentiate in data structure and it is not necessary they can be united in unified entity model. This type is typical for different subsystem integration in uniform system.

Hybrid decentralization

Data is vertical and horizontal decentralized.

Non-compatible decentralization

This can be a result of badly coordinated information system development.

 


blog comments powered by Disqus