0% found this document useful (0 votes)
14 views9 pages

Overview of Distributed Database Systems

Uploaded by

charndeeo
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views9 pages

Overview of Distributed Database Systems

Uploaded by

charndeeo
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd

Distributed Database

System
Introduction

 A distributed database is basically a database that is


not limited to one system, it is spread over different
sites, i.e, on multiple computers or over a network of
computers. A distributed database system is located
on various sites that don’t share physical components.
This may be required when a particular database
needs to be accessed by various users globally. It
needs to be managed such that for the users it looks
like one single database.
Architecture
Features

• It is used to create, retrieve, update and delete distributed databases.


• It synchronizes the database periodically and provides access mechanisms
by the virtue of which the distribution becomes transparent to the users.
• It ensures that the data modified at any site is universally updated.
• It is used in application areas where large volumes of data are processed
and accessed by numerous users simultaneously.
• It is designed for heterogeneous database platforms.
• It maintains confidentiality and data integrity of the databases.
Types
 1. Homogeneous Database:
In a homogeneous database, all different sites store database
identically. The operating system, database management system,
and the data structures used – all are the same at all sites. Hence,
they’re easy to manage.
 2. Heterogeneous Database:
In a heterogeneous distributed database, different sites can use
different schema and software that can lead to problems in query
processing and transactions. Also, a particular site might be
completely unaware of the other sites. Different computers may use
a different operating system, different database application. They
may even use different data models for the database. Hence,
translations are required for different sites to communicate.
Distributed Data Storage

 There are 2 ways in which data can be stored on different sites. These
are:
 1. Replication –
In this approach, the entire relationship is stored redundantly at 2 or
more sites. If the entire database is available at all sites, it is a fully
redundant database. Hence, in replication, systems maintain copies of
data.
 This is advantageous as it increases the availability of data at different
sites. Also, now query requests can be processed in parallel.
However, it has certain disadvantages as well. Data needs to be
constantly updated. Any change made at one site needs to be recorded
at every site that relation is stored or else it may lead to inconsistency.
This is a lot of overhead. Also, concurrency control becomes way more
complex as concurrent access now needs to be checked over a number
of sites.
Distributed Data Storage
 2. Fragmentation –
In this approach, the relations are fragmented (i.e., they’re divided into
smaller parts) and each of the fragments is stored in different sites where
they’re required. It must be made sure that the fragments are such that they
can be used to reconstruct the original relation (i.e, there isn’t any loss of
data).
Fragmentation is advantageous as it doesn’t create copies of data,
consistency is not a problem.

 Fragmentation of relations can be done in two ways:

• Horizontal fragmentation – Splitting by rows –


The relation is fragmented into groups of tuples so that each tuple is
assigned to at least one fragment.
• Vertical fragmentation – Splitting by columns –
The schema of the relation is divided into smaller schemas. Each fragment
must contain a common candidate key so as to ensure a lossless join.
Factors Encouraging DDBMS
 The following factors encourage moving over to DDBMS −
• Distributed Nature of Organizational Units − Most organizations in the current times are
subdivided into multiple units that are physically distributed over the globe. Each unit requires
its own set of local data. Thus, the overall database of the organization becomes distributed.
• Need for Sharing of Data − The multiple organizational units often need to communicate
with each other and share their data and resources. This demands common databases or
replicated databases that should be used in a synchronized manner.
• Support for Both OLTP and OLAP − Online Transaction Processing (OLTP) and Online
Analytical Processing (OLAP) work upon diversified systems which may have common data.
Distributed database systems aid both these processing by providing synchronized data.
• Database Recovery − One of the common techniques used in DDBMS is replication of data
across different sites. Replication of data automatically helps in data recovery if database in
any site is damaged. Users can access data from other sites while the damaged site is being
reconstructed. Thus, database failure may become almost inconspicuous to users.
• Support for Multiple Application Software − Most organizations use a variety of
application software each with its specific database support. DDBMS provides a uniform
functionality for using the same data among different platforms.
Adversities of Distributed Databases
 Following are some of the adversities associated with distributed
databases.
• Need for complex and expensive software − DDBMS demands
complex and often expensive software to provide data transparency and
co-ordination across the several sites.
• Processing overhead − Even simple operations may require a large
number of communications and additional calculations to provide
uniformity in data across the sites.
• Data integrity − The need for updating data in multiple sites pose
problems of data integrity.
• Overheads for improper data distribution − Responsiveness of
queries is largely dependent upon proper data distribution. Improper
data distribution often leads to very slow response to user requests.

Common questions

Powered by AI

Data fragmentation helps maintain data consistency by preventing the replication of data, which reduces the risk of inconsistency due to concurrent modifications at different locations . Fragmentation ensures that each part of the data is stored only where needed, minimizing redundancy. The two types of fragmentation are horizontal fragmentation, where data is split into rows with each row assigned to at least one fragment, and vertical fragmentation, where data is divided by columns, maintaining a candidate key to ensure a lossless join .

Maintaining confidentiality and data integrity in distributed databases is critical to ensure that sensitive information is protected and transactions are reliably executed across different sites . In heterogeneous platforms, achieving this involves implementing secure data transmission protocols, robust authentication systems, and encryption techniques to protect data across diverse systems. Data integrity is maintained by utilizing consistency controls that ensure all data modifications are correctly propagated and reconciled across varying schemas and systems, despite the differences in their underlying architectures. The challenge lies in coordinating these safeguards across platforms while maintaining efficient data access and usability.

In homogeneous distributed databases, all sites store data identically using the same operating systems, database management systems, and data structures, making it easier to manage and providing a uniform environment for query processing . In contrast, heterogeneous distributed databases can use different schemas and software, potentially leading to challenges in query processing and data integrity, as different systems may have varied data models, requiring translations for communication . These differences mean that while homogeneous systems facilitate consistency and simplify query operations, heterogeneous systems may suffer from slow response times and increased complexity in maintaining data integrity due to the need for comprehensive translations and synchronizations .

Database replication plays a crucial role in data recovery by ensuring that copies of data are available across multiple sites, so if one site is damaged, data can still be accessed from another site . This redundancy allows the system to continue operating without interruption, making the database failure almost inconspicuous to users as replication enables seamless transition and access to the replicated data while the damaged site is being repaired or reconstructed . By maintaining constant availability, replication mitigates disruptions and ensures operational continuity in distributed databases.

Organizations are encouraged to adopt distributed database management systems due to the distributed nature of organizational units that require local data access across multiple global locations . The need for data sharing among various organizational units also drives adoption, as distributed databases can provide synchronized access to shared resources. Additionally, support for both OLTP (Online Transaction Processing) and OLAP (Online Analytical Processing) necessitates the use of DDBMS to handle common and diversified data across systems. Replication for database recovery and support for multiple application software are further factors, as they aid in maintaining system reliability and uniform data access across diverse platforms .

Improper data distribution can significantly affect the responsiveness of user queries because it can lead to inefficient data retrieval paths and increased latency. In a distributed database, data should ideally be placed according to access patterns and locality of use to minimize the distance over which data needs to be moved during query processing . If data is not optimally distributed, queries might require accessing data from remote locations, leading to increased communication overhead and slower response times . Proper data distribution is critical to ensuring efficient query processing and maintaining fast and responsive systems.

Distributed database systems support both Online Transaction Processing (OLTP) and Online Analytical Processing (OLAP) by maintaining synchronized datasets that are accessible across diversified systems . This enables efficient transactional operations in OLTP, handling a large number of short online transactions simultaneously, while also supporting the complex query processing required for OLAP. The benefit of this dual support is that it allows organizations to seamlessly integrate operational and analytical tasks, facilitating real-time data processing and analysis, which leads to more informed decision-making and improved organizational agility .

Replication in distributed databases presents significant challenges due to the need for constant updates across all sites where data is stored to maintain consistency. Any modifications at one site must be reliably propagated to all other sites, introducing substantial overhead and complexity . This necessity complicates concurrency control because it requires ensuring that concurrent data access across multiple sites does not lead to conflicts or inconsistencies. While replication increases data availability and allows parallel processing of queries, it demands robust synchronization mechanisms to keep data consistent, thereby increasing the complexity of managing these systems .

The architecture of distributed databases is designed to ensure that despite being physically spread over multiple locations, the system provides a unified database interface to the users. This is achieved through the use of synchronization mechanisms that periodically update and maintain the database to appear as one cohesive unit . By hiding the complexities of distribution and managing the data such that all modifications at any site are reflected universally, distributed databases create transparency for the users, who perceive it as a single database system .

Distributed databases face several adversities, particularly related to the complexity and cost of the software required to ensure data transparency and coordination across multiple sites . Such software must handle data synchronization, replication, and query processing across different locations, often necessitating expensive and sophisticated technologies . Additionally, response times in distributed databases can suffer due to incorrect data distribution, which may lead to inefficient data retrieval and slow query processing if the distribution does not align with user queries or data access patterns . These issues highlight the significant processing overhead and require careful planning and optimization to mitigate .

You might also like