Home  >  Article  >  Database  >  What are the types of transparency in DDBMS?

What are the types of transparency in DDBMS?

青灯夜游
青灯夜游Original
2019-01-22 14:22:525987browse

Transparency is one of the advantages of distributed database systems (DDBMS), so what is transparency in DDBMS? This article will introduce you to transparency in DDBMS and introduce the types of transparency. I hope it will be helpful to you.

What are the types of transparency in DDBMS?

What is transparency in DDBMS?

Transparency is a property of distributed databases that is used to hide the internal details of a DDBMS distribution from users and does not allow users to view the internal details of the distribution.

The reason transparency is important is usability. The more transparent our systems are, the less cognitive load there is on users. In other words: transparency simplifies the system's API.

For example: A DDBMS designer may choose to fragment a table, copy the fragments and store them in different sites. However, since users do not understand these details, they find distributed databases easy to use, just like any centralized database.

Types of transparency in DDBMS

DDBMS can provide various levels of transparency, which are mainly divided into four main types of transparency:

● Distribution transparency

● Transaction transparency

● Performance transparency;

● DBMS transparency.

Here's an introduction:

Distribution Transparency

##Distribution transparency allows users to treat the database as a single logical entity. If a BMS is added to display distributed transparency, the user does not need to know whether the data is a detail (fragment transparency) or the location of the data item (local transparency).

Distribution transparency can also be divided into the following levels:

1. Fragmentation transparency:

Fragmentation is the highest level of distribution transparency. If the DDBMS provides fragmentation transparency, the user does not need to know that the data is fragmented, therefore, database access is based on the global schema.

Users can access any table in a non-fragmented manner. Information that the table is segmented and the location of the segments across multiple sites is hidden from the user.

SQL views work in a similar way, where the user is unaware of the fact that the user is viewing a view of a table and not the original table.

2. Position transparency:

Position is the middle level of distribution transparency. With location transparency, users can query any table or fragment of a table as if they were stored locally in the user's site, but without having to know the location of the data.

The fact that its tables or fragments of them are stored at a remote site in a distributed database system should be completely disregarded by end users. The address and access mechanism of the remote site are completely hidden.

To incorporate location transparency, the DDBMS should have access to updated and accurate data dictionaries and DDBMS catalogs containing details of data location.

3. Replication transparency:

Hide database replication from users through replication transparency. Users can access any table as the original table.

When a user updates data, it is updated and reflected in all tables across multiple sites. This is hidden from the user and is called concurrency transparency. Replicating a copy makes it easier for users to continue querying in the event of a site failure without being aware of the failure, which is called failure transparency.

4. Local mapping transparency:

It is the lowest level of distribution transparency. With local mapping transparency, the user needs to specify the fragment name and location of the data item, taking into account any duplication that may exist.

Obviously, this is a more complex and time-consuming query for the user than the first one. Systems that provide this level of tr_sparency are unlikely to be accepted by end users.

Transaction Transparency

Transaction transparency in a DDBMS environment ensures that all distributed transactions maintain the integrity and consistency of the distributed database. Distributed transactions access data stored in a remote location. Each transaction is divided into several sub-transactions, each corresponding to a site that must be visited; the sub-transactions are represented by agents.

DDBMS must also ensure the atomicity of each sub-transaction. Fragmentation, allocation and replication schenlas complicate transaction transparency in distributed DBMS.

Performance Transparency

Performance transparency requires that the DDBMS perform like a centralized DBMS. In a distributed environment, the system should suffer any performance degradation due to the distributed architecture, such as the presence of a network. Performance transparency also requires the DDBMS to determine the most cost-effective strategy for executing requests.

In a centralized DBMS, the query processor (QP) must evaluate each data request and find the optimal execution strategy, which consists of an ordered sequence of operations on the database. In a distributed environment, the Distributed Query Processor (DQP) maps data requests to an ordered sequence of operations on a local database. Added complexity takes into account fragmentation, copying and allocation patterns.

DQP must decide:

● Which fragment should be accessed?

● If a fragment is copied, which fragment copy should be used?

● The location used.

DQP produces an execution policy optimized for some cost function. Typically, the costs associated with distributed requests include:

● The access time (I/O) cost involved in accessing physical data on disk;

● Performing on data in main memory The CPU time cost incurred during operation;

● The communication cost associated with transmitting data over the network.

The first two factors are the only factors considered in a centralized system. In a distribution environment, DDBMS must consider communication costs, which may be the most dominant factor in WANs with bandwidths of several kilobytes/second. In this case, optimization may ignore I/O and CPU costs. However, the bandwidth of a LAN is comparable to that of a disk, so optimization should not completely ignore I/O and CPU costs in this case.

DBMS transparency.

DBMS transparency hides the knowledge that the local DBMS may be different and therefore only works with heterogeneous DDBMS. It is one of the hardest forms of transparency to provide.

The above is the entire content of this article, I hope it will be helpful to everyone's study. For more exciting content, you can pay attention to the relevant tutorial columns of the PHP Chinese website! ! !

The above is the detailed content of What are the types of transparency in DDBMS?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn