Types of Fragmentation
A. Horizontal Fragmentation
Horizontal fragmentation consists of a subset of the tuples (row) of a relation. It contains from the tuple of the global fragment and then divided into different subset. In other words, it groups the tuples of a table in accordance with the values of one or more fields. This type of fragmentation should also confirm the rule of constructiveness.
This type of fragmentation is very useful in the distributed database, where every sub-set can contain data that has the general properties. Horizontal fragmentation was defined when a condition states that the existing tuples were sufficient. Each horizontal fragment must have all the columns of the original base table. The reconstruction of the original fragmentation by performing UNION.
1. Derived Horizontal Fragmentation
The process of fragmentation of a table based on the constraint defined on another table. Both of the tables are linked to each other with the help of the primary key and the foreign key and must establish owner-member relations. This fragmentation is used when we want to horizontally fragment a table that is not dependent on any other owner table.
2. Complete Horizontal Fragmentation
It generates a set of horizontal fragmentation, which includes every table of the original relations. Completeness is required for the reconstruction of relations so that every table belongs to at least one of the partitions.
3. Disjoint Horizontal Fragmentation
It generates a set of horizontal fragmentation in which no two fragments have common tables. In other words, every table of relation belongs to only one fragment.
B. Vertical Fragmentation
In vertical fragmentation, the available attributes from the global fragment will be divided into some subset of groups. The simplest form of vertical fragmentation is decomposition, where a unique row can be input into every fragment to ensure and enable the reconstruction process through a join operation. In other words, this type of fragmentation can be divided data into some tables in which the attributes interrelated each other.
Vertical fragmentation consists of a subset of the attributes of a relation. In order to maintain constructiveness in vertical fragmentation, each fragment should contain the primary key field(s) of the table. Vertical fragmentation can be used to enforce the privacy of data or important transactions.
Reconstruction of vertical fragmentation is performed by using FULL OUTER JOIN operation on fragmentation.
C. Mixed or Hybrid Fragmentation
Mixed or hybrid fragmentation consists of a horizontal fragment that is vertically fragmented or a vertical fragment that is horizontally fragmented. This is the most flexible fragmentation technique since it generates fragments with minimal extraneous information.
In the real-world case, the implementation of only one fragmentation technique (horizontal fragmentation or vertical fragmentation) is not sufficient because there were so many applications or queries that need more complex fragmentations that that.
This type of fragmentation is done by applying the horizontal fragmentation technique first and then followed by applying vertical fragmentation to one or more horizontal fragmentation that has been formed previously. However, reconstruction of the original table is often an expensive task. The reconstruction of hybrid fragmentation by performing UNION and FULL OUTER JOIN.
There are two alternative ways of hybrid fragmentation can be done:
1. At first, generate a set of horizontal fragments; then generate vertical fragments from one or more of the horizontal fragments.
2. At first, generate a set of vertical fragments; then generate horizontal fragments from one or more of the vertical fragments.
https://www.tutorialspoint.com/distributed_dbms/distributed_dbms_design_strategies.htm https://www.tutorialride.com/distributed-databases/fragmentation-in-distributed-system.htm http://dhafiq-san.blogspot.com/2010/12/fragmentasi-data-dalam-database.html https://www.tutorialride.com/distributed-databases/fragmentation-in-distributed-system.htm https://www.slideshare.net/abhilashalahigude/fragmentation-and-types-of-fragmentation-in-distributed-database