Distributed Database Systems

An Overview of the Application of Distributed Database Systems

Pasidalee Dissanayake
LinkIT

--

Photo by geralt on Pixabay

Storing data at a centralized location and managing them would be much easier of course. But would it be convenient for the user? What if the central server failed?

When handling large volumes of data operated in several locations, what do you think is the best way possible to manipulate them? Let’s take a look at distributed database systems.

The concept of distributed database system provides solutions to manage large volumes of data that are employed in a variety of data-driven applications.

What is a distributed database system?

A distributed database system is a single logical database that is physically distributed among several computers in various locations and connected by a data communication network that may employ telephone lines, fiber optics, or microwave signals.

Let’s consider a real-world example to understand the use of distributed databases.

An organization is usually divided into several logical sections such as departments, divisions, and groups, and very likely the branches of the organization are distributed throughout a country or different countries physically.

So, each unit of the organization will be maintaining data relevant to its local operations. Likewise, each section, branch, or department may be working with the same or different data that belongs to the same company.

In this matter, a distributed system act as a bridge to connect the distributed database systems and make them available as one logical database to all its users despite the physical location of data.

Image Source: https://www.tutorialride.com/images/distributed-databases/distributed-system.jpeg

How does a distributed database system differ from a centralized database system?

In a centralized database, all of an organization’s data is stored on a single computer, known as a central processor or server located in one location. Then the data is accessed by remote users via communication networks.

Advantages of Distributed Databases

  • Increased reliability and availability. Even when a single site fails, the other database nodes connected to the network will continue to operate. In such a case, only the data that originated at the failed site would not be accessible. This could be overcome through data replication which will be discussed in later articles.
  • Fast response and improved performance. As a result of distributing a large database over numerous sites, some user queries at a given site may only need to access their smaller database stored locally. This improves database performance by speeding up query processing.
  • Interconnection of existing databases. When an organization already has numerous databases and the need to execute global applications emerges, the distributed database typically provides a logical answer by integrating and linking the local databases.
  • Easier expansion of database system. When the necessity of expanding the database system by adding more data arises, increasing the size of databases or adding more database nodes is much easier.

Disadvantages of Distributed Databases

Due to the distribution of data over several locations,

  • Increased Software cost and complexity
  • Increased communication overheads
  • Difficulties in maintaining data integrity and consistency

could be encountered.

Even though a distributed database system has a lot of capabilities and advantages, there are added responsibilities that come with a distributed system.

The main responsibility is that a distributed system should exactly behave like a non-distributed system. To a user, it should appear as one single database despite the physical distribution of the data and the complexities in a distributed system must be hidden.

For that, a distributed system must implement and maintain several features.

  • In a distributed database system, each site’s activities must be self-contained and not reliant on other sites. Local data security, integrity, and storage representation must be within the authority of the local site. This ensures the local autonomy of a site.
  • Not a single site must rely on a central site or a master site. All sites must be treated equally. Even when a single site fails other sites must be able to continue their operation.
  • The user does not need to know where the data is physically stored. The system should behave as if all the data are stored at the local site. This ensures location transparency.
  • Data fragmentation is breaking up the database into several logical units. This is done in two ways.

Horizontal fragmentation — splitting the database into subsets of rows

Vertical fragmentation — splitting the database into subsets of columns

After fragmenting, the fragments are distributed among multiple sites.

Therefore, when ensuring fragmentation transparency, the system must behave as if the database is not fragmented in any way.

i.e. data fragmentation will be discussed in detail in future articles.

  • Data replication is the process of duplicating relations from one location to another to increase availability. The database system behaves as if the data is not replicated when replication transparency is maintained.

i.e. data replication will be discussed in detail in future articles.

  • Distributed query processing and distributed transaction management must be implemented in a way that data integrity and data consistency are protected.

You may wonder, what is the difference between decentralized databases and distributed databases?

Well, decentralized databases are stored on multiple computers at different locations. But unlike distributed databases, the computers are not connected via a network. Therefore, the data stored in local databases cannot be shared among different sites.

Summary

In this article, I have walked you through the basic concepts of Distributed Database Systems. Given the benefits, drawbacks, and complexities of distributed database systems, it’s easy to see why mostly the firms with many offices or storefronts in different geographic regions use a distributed database system.

See you soon with another article! ❤

--

--

Pasidalee Dissanayake
LinkIT
Writer for

Undergraduate at Faculty of Information Technology, University of Moratuwa