dd1
dd1
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.
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.
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.
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.
The relation is fragmented into groups of tuples so that each tuple is assigned to at least
one fragment.
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.
A distributed database system is a type of database management system that stores data across
multiple computers or sites that are connected by a network. In a distributed database system,
each site has its own database, and the databases are connected to each other to form a single,
integrated system.
The main advantage of a distributed database system is that it can provide higher availability
and reliability than a centralized database system. Because the data is stored across multiple
sites, the system can continue to function even if one or more sites fail. In addition, a distributed
database system can provide better performance by distributing the data and processing load
across multiple sites.
There are several different architectures for distributed database systems, including:
Peer-to-peer architecture: In this architecture, each site in the distributed database system is
connected to all other sites. Each site is responsible for managing its own data and coordinating
transactions with other sites.
Federated architecture: In this architecture, each site in the distributed database system
maintains its own independent database, but the databases are integrated through a middleware
layer that provides a common interface for accessing and querying the data.
1. Centralized Database:
Advantages:
Since all data is stored at a single location only thus it is easier to access and coordinate
data.
The centralized database has very minimal data redundancy since all data is stored in a
single place.
Disadvantages:
If any kind of system failure occurs in the centralized system then the entire data will be
destroyed.
2. Distributed Database:
A distributed database is basically a type of database which consists of multiple databases
that are connected with each other and are spread across different physical locations. The
data that is stored in various physical locations can thus be managed independently of other
physical locations. The communication between databases at different physical locations is
thus done by a computer network.
Advantages:
This database can be easily expanded as data is already spread across different physical
locations.
Disadvantages:
This database is very costly and is difficult to maintain because of its complexity.
In this database, it is difficult to provide a uniform view to users since it is spread across
different physical locations.
It is a database that
consists of multiple
It is a database that is
databases which are
stored, located as
1. Definition connected with each other
well as maintained at
and are spread across
a single location only.
different physical
locations.
The management,
The management,
modification, and
modification, and backup
backup of this
Management of this database are very
3. database are easier as
of data difficult as it is spread
the entire data is
across different physical
present at the same
locations.
location.
Basis of Centralized
S.NO. Comparison database Distributed database
A centralized
This database is very
7. Cost database is less
expensive.
costly.
A centralized
A distributed database is
database is less
more efficient than a
efficient as data
centralized database
finding becomes
because of the splitting up
9. Efficient quite complex
of data at several places
because of the storing
which makes data finding
of data and
simple and less time-
information at a
consuming.
particular place.
nodes to do work.
Clusterpoint
Basis of Centralized
S.NO. Comparison database Distributed database
FoundationDB.
Or