Transparencies in DDBMS
Distributed Database Management System (DDBMS) :
A distributed database is essentially a database that’s not limited to at least one system, it covers different sites, i.e, on multiple computers or over a network of computers. A distributed database system is found on various sites that don’t share physical components. This may be required when a specific database must be accessed by various users globally. It must be managed such for the users. It’s like one single database.
What is transparency?
Transparency in DDBMS refers to the transparent distribution of information to the user from the system. It helps in hiding the information that is to be implemented by the user. Let’s say, for example, in a normal DBMS, data independence is a form of transparency that helps in hiding changes in the definition & organization of the data from the user. But, they all have the same overall target. That means to make use of the distributed database the same as a centralized database.
In Distributed Database Management System, there are four types of transparencies, which are as follows –
- Transaction transparency
- Performance transparency
- DBMS transparency
- Distribution transparency
- Transaction transparency-
This transparency makes sure that all the transactions that are distributed preserve distributed database integrity and regularity. Also, it is to understand that distribution transaction access is the data stored at multiple locations. Another thing to notice is that the DDBMS is responsible for maintaining the atomicity of every sub-transaction (By this, we mean that either the whole transaction takes place directly or doesn’t happen in the least). It is very complex due to the use of fragmentation, allocation, and replication structure of DBMS.
- Performance transparency-
This transparency requires a DDBMS to work in a way that if it is a centralized database management system. Also, the system should not undergo any downs in performance as its architecture is distributed. Likewise, a DDBMS must have a distributed query processor which can map a data request into an ordered sequence of operations on the local database. This has another complexity to take under consideration which is the fragmentation, replication, and allocation structure of DBMS.
- DBMS transparency-
This transparency is only applicable to heterogeneous types of DDBMS (Databases that have different sites and use different operating systems, products, and data models) as it hides the fact that the local DBMS may be different. This transparency is one of the most complicated transparencies to make use of as a generalization.
- Distribution transparency-
Distribution transparency helps the user to recognize the database as a single thing or a logical entity, and if a DDBMS displays distribution data transparency, then the user does not need to know that the data is fragmented.
Distribution transparency has its 5 types, which are discussed below –
- Fragmentation transparency-
In this type of transparency, the user doesn’t have to know about fragmented data and, due to which, it leads to the reason why database accesses are based on the global schema. This is almost somewhat like users of SQL views, where the user might not know that they’re employing a view of a table rather than the table itself.
- Location transparency-
If this type of transparency is provided by DDBMS, then it is necessary for the user to know how the data has been fragmented, but knowing the location of the data is not necessary.
- Replication transparency-
In replication transparency, the user does not know about the copying of fragments. Replication transparency is related to concurrency transparency and failure transparency. Whenever a user modifies a data item, the update is reflected altogether in the copies of the table. However, this operation shouldn’t be known to the user.
- Local Mapping transparency-
In local mapping transparency, the user needs to define both the fragment names, location of data items while taking into account any duplications that may exist. This is a more difficult and time-taking query for the user in DDBMS transparency.
- Naming transparency-
We already know that DBMS and DDBMS are types of centralized database system. It means that each item in this database must consist of a unique name. It further means that DDBMS must make sure that no two sites are creating a database object with the same name. So to solve the problem of naming transparency, there are two ways, either we can create a central name server to create the unique names of objects in the system, or, differently, is to add an object starting with the identifier of the creator site.