MAKAUT MODULE-1
DISTRIBUTED SYSTEMS
6TH SEM
MAKAUT LATEST SYLLABUS WISE
DEBKANTA MAITY
DEBKANTA STUDY ZONE
MAKAUTIAN’S FAVOURITE CHANNEL
Explain Distributed Data Processing.
Distributed Data Processing (DDP)
Distributed Data Processing is a method of processing data in which data
processing tasks are divided and carried out by multiple computers (nodes)
that are connected through a communication network.
Instead of relying on a single central system, each computer in the network handles
a portion of the data and processing, and the results are combined to produce
the final output.
Definition
Distributed Data Processing is a system where data is stored and processed
across different locations using multiple interconnected computers working
together.
Key Characteristics
• Multiple nodes: Processing is done by several computers.
• Data distribution: Data is stored at different locations.
• Parallel processing: Tasks are executed simultaneously.
• Communication network: Nodes communicate through a network.
• Resource sharing: Hardware, software, and data are shared.
• Fault tolerance: Failure of one node does not stop the entire system.
Advantages
• High performance: Faster processing due to parallel execution.
• Reliability: System continues even if one node fails.
• Scalability: Easy to add more nodes.
• Flexibility: Suitable for large and complex applications.
• Reduced load: Work is divided among multiple systems.
Disadvantages
• Complexity: Difficult to design and manage.
• Security issues: Data is spread across locations.
• Network dependency: Requires reliable communication.
• Cost: Higher setup and maintenance cost.
Example
• Banking systems (different branches process transactions locally)
• Airline reservation systems
• E-commerce platforms
Explain Centralized Data Processing.
Centralized Data Processing (CDP)
Centralized Data Processing is a system in which all data processing is
performed at a single central computer (server). All users and terminals are
connected to this central system, and every request is processed there.
Definition
Centralized Data Processing refers to a method where data storage, control, and
processing are handled by one central unit, and users access it remotely.
Key Characteristics
• Single central system: All processing is done at one location
• Centralized data storage: Data is stored in one place
• User terminals: Users access the system via clients or terminals
• Simple architecture: Easier to design and manage
• High control: Central authority manages the entire system
Advantages
• Easy management: System control is centralized
• Data consistency: No duplication of data
• Better security control: Easier to enforce policies
• Lower complexity: Simpler than distributed systems
• Cost-effective (initially): Less infrastructure required
Disadvantages
• Single point of failure: If the central system fails, everything stops
• Performance bottleneck: Heavy load slows down processing
• Limited scalability: Difficult to expand
• High dependency: All users depend on one system
• Network dependency: Requires constant connectivity to central server
Example
• Traditional banking systems (older mainframe-based systems)
• Payroll processing systems
• University result processing systems
Differences Between Distributed and Centralized Data Processing
Differentiate between centralized DBMS and DDBMS
Explain the need for distributed databases in modern organizations.
1. Handling Large Volumes of Data
Modern organizations generate huge amounts of data. Distributed databases
help store and manage data across multiple locations, avoiding overload
on a single system.
2. Improved Performance
Data processing is done at multiple nodes simultaneously (parallel
processing), which results in faster query execution and response time.
3. High Availability and Reliability
If one site fails, other sites continue to function. This ensures continuous
system availability and reduces downtime.
4. Geographical Distribution of Users
Organizations operate across different regions. Distributed databases allow
data to be stored closer to users, improving access speed.
5. Scalability
It is easy to add new nodes or locations as the organization grows, without
affecting the entire system.
6. Data Sharing and Resource Sharing
Multiple users and departments can access and share data
simultaneously, improving collaboration.
7. Local Autonomy
Each site can manage its own data and operations independently, while
still being part of the global system.
8. Reduced Communication Cost
Frequently used data can be stored locally, reducing the need for long-
distance data transfer.
9. Better Fault Tolerance
System can recover from failures easily because data is replicated across
multiple sites.
10. Support for Modern Applications
Applications like e-commerce, banking, cloud computing, and social
media require distributed systems for efficient operation.
Write down the advantages and disadvantages of Distributed Database System ?
Advantages
1. Improved Performance
Queries are processed at multiple sites using parallel processing, resulting in
faster response time.
2. High Reliability and Availability
If one node fails, other nodes continue to work, ensuring continuous system
operation.
3. Scalability
New nodes can be easily added to the system as the organization grows.
4. Data Localization
Data can be stored near the user location, which reduces access time and
improves efficiency.
5. Fault Tolerance
Data replication allows recovery from failures, making the system more robust.
6. Resource Sharing
Multiple users and sites can share data and resources effectively.
7. Flexibility and Modularity
System can be expanded or modified without affecting the entire database.
8. Reduced Network Traffic (for local queries)
Local queries can be handled locally, minimizing unnecessary data transfer.
Disadvantages
1. Complexity
Designing, implementing, and managing a distributed database is more
complex than a centralized system.
2. Security Issues
Data is distributed across multiple locations, increasing the risk of unauthorized
access.
3. Data Integrity and Consistency Problems
Maintaining consistency across multiple sites is difficult, especially during
updates.
4. Higher Cost
Requires more hardware, software, and maintenance, leading to increased
cost.
5. Network Dependency
System performance depends heavily on the communication network.
6. Concurrency Control Issues
Managing simultaneous access to data across multiple sites is challenging.
7. Difficult Backup and Recovery
Coordinating backup and recovery across different locations is complicated.
8. Synchronization Problems
Ensuring all copies of data are updated simultaneously can be difficult.
Explain how data replication improves performance and reliability in DDBMS.
Data Replication in DDBMS
Data replication means storing copies of the same data at multiple sites
(nodes) in a Distributed Database Management System.
How Data Replication Improves Performance
1. Faster Data Access
Users can access data from the nearest replica, reducing access time and
latency.
2. Reduced Query Response Time
Queries are processed locally instead of fetching data from a distant site,
leading to quicker results.
3. Load Balancing
Multiple replicas allow the system to distribute workload across different
nodes, preventing overload on a single server.
4. Parallel Processing
Different nodes can process queries simultaneously using replicated data,
improving overall system efficiency.
5. Reduced Network Traffic
Local access to replicated data reduces the need for long-distance data
transmission.
How Data Replication Improves Reliability
1. Fault Tolerance
If one node fails, other replicas are available, so the system continues to
function.
2. High Availability
Data is accessible even during failures or maintenance of some sites.
3. Data Backup and Recovery
Replicas act as backup copies, helping in quick recovery from data loss.
4. Disaster Recovery
In case of major failures (e.g., system crash, natural disaster), data can be
retrieved from other locations.
5. System Stability
Reduces the risk of complete system shutdown due to single point failure.
Explain the features of DDBS.
1. Data Distribution
Data is stored across multiple sites/locations instead of a single central
database.
2. Transparency
The system hides the complexity of distribution (like location, fragmentation,
replication), so users feel it as a single database system.
3. Data Replication
Copies of data are stored at different sites to improve availability and
reliability.
4. Local Autonomy
Each site can operate independently and manage its own data and
operations.
5. Scalability
The system can be easily expanded by adding new nodes without affecting
existing operations.
6. Reliability and Fault Tolerance
Failure of one site does not stop the entire system, ensuring continuous
operation.
7. Distributed Query Processing
Queries are processed across multiple nodes, enabling parallel processing
and faster results.
What is transparency in DDBMS? Explain its importance.
Transparency in DDBMS
Transparency in a Distributed Database Management System (DDBMS)
refers to the ability of the system to hide the complexities of data distribution
from users.
It makes the distributed database appear as a single, unified database, even
though the data is actually stored at multiple locations.
Types of Transparency
• Location Transparency: User doesn’t know where data is stored
• Replication Transparency: User is unaware of multiple copies of data
• Fragmentation Transparency: User doesn’t see how data is divided
• Concurrency Transparency: Multiple users can access data without
conflicts
• Failure Transparency: System continues despite failures
Importance of Transparency in DDBMS
1. Ease of Use
Users interact with the system like a centralized database without worrying
about distribution.
2. Simplifies Application Development
Developers do not need to handle complex details like data location or
replication.
3. Improves Productivity
Less complexity leads to faster development and efficient database usage.
4. Data Independence
Changes in data distribution (like moving data from one site to another) do
not affect users.
5. Better System Management
Database administrators can manage distribution without disturbing users.
6. Enhanced Security and Control
Internal details are hidden, reducing exposure to unauthorized access.
7. Fault Handling
Users are not affected by system failures, as the system manages it
internally.
1. Location Transparency
Definition
Location transparency means that users can access data without knowing its
physical location (which site or node stores it).
Explanation
• Data may be stored at different geographical locations.
• The system automatically finds and retrieves the required data.
• Users use the same query regardless of where data is stored.
Example
A user queries customer data without knowing whether it is stored in Kolkata or
Delhi server.
Importance
• Simplifies user interaction
• Supports easy data movement between sites
• Improves system flexibility
2. Fragmentation Transparency
Definition
Fragmentation transparency means users are unaware that the database is
divided into fragments (parts).
Explanation
• Data is split into smaller pieces (horizontal or vertical fragments).
• These fragments are stored at different locations.
• The system combines them automatically when needed.
Types of Fragmentation
• Horizontal Fragmentation: Rows are divided
• Vertical Fragmentation: Columns are divided
Example
Employee data split across departments, but user sees it as a single table.
Importance
• Simplifies query processing
• Improves performance
• Hides database design complexity
3. Replication Transparency
Definition
Replication transparency means users are unaware of multiple copies of the
same data stored at different sites.
Explanation
• Data is replicated to improve availability and reliability.
• System ensures consistency among all copies.
• Users access data as if only one copy exists.
Example
A product database stored in multiple servers, but user accesses it like a single
database.
Importance
• Improves data availability
• Ensures fault tolerance
• Enhances performance through local access
4. Transaction Transparency
Definition
Transaction transparency ensures that transactions are executed correctly
across multiple sites while maintaining consistency (ACID properties).
Explanation
• A transaction may involve multiple nodes.
• The system ensures:
◦ Atomicity: All or nothing execution
◦ Consistency: Database remains valid
◦ Isolation: Transactions do not interfere
◦ Durability: Changes are permanent
• Uses protocols like Two-Phase Commit (2PC).
Example
Bank transfer between two branches: debit and credit must both succeed or both
fail.
Importance
• Maintains data integrity
• Prevents partial updates
• Ensures reliable multi-site operations
Discuss how transparency improves user experience in distributed systems
Transparency in distributed systems plays a crucial role in improving user
experience by hiding the internal complexities of how the system operates. In a
distributed database, data is stored across multiple locations, possibly fragmented
or replicated, and processed by different nodes. However, due to transparency,
users interact with the system as if it were a single, centralized database. This
eliminates the need for users to know where the data is located, how it is divided,
or how many copies exist.
As a result, users can perform queries and transactions in a simple and consistent
manner without worrying about the underlying distribution. Transparency also
ensures that operations such as data retrieval, updates, and transactions are
handled efficiently and correctly by the system, even in the presence of failures or
concurrent access. This leads to reliable and seamless interaction, as users are not
affected by network issues, data movement, or system failures.
Furthermore, transparency reduces the complexity for application developers,
allowing them to design systems without handling distribution-related issues
manually. Overall, by providing a unified and simplified view of the system,
transparency enhances usability, efficiency, and reliability, thereby significantly
improving the user experience in distributed systems.
Explain different architectures of DDBMS (Client-Server, Peer-to-Peer, Multi-tier)
1. Client–Server Architecture
Definition
In this architecture, the system is divided into clients (users) and servers
(database systems). Clients send requests, and servers process those requests
and return results.
Structure
• Client: User interface, application programs
• Server: Database storage and DBMS software
Working
• Client sends a query (e.g., SQL request)
• Server processes the query and accesses the database
• Results are sent back to the client
Types
• Two-tier: Client directly communicates with database server
• Three-tier: Includes an application server between client and database
Advantages
• Centralized control of data
• Easy to manage and secure
• Efficient for small to medium systems
Disadvantages
• Server overload possible
• Limited scalability
• Single point of failure (in some cases)
2. Peer-to-Peer Architecture
Definition
In Peer-to-Peer (P2P) architecture, all nodes are equal and each node can act as
both a client and a server.
Structure
• No central server
• Each node stores part of the database and manages its own data
Working
• Any node can send requests to other nodes
• Data processing is shared among all nodes
• Nodes cooperate to execute queries
Advantages
• High reliability (no single point of failure)
• Better scalability
• Load is distributed among nodes
Disadvantages
• Complex to design and manage
• Security and consistency issues
• Difficult coordination among nodes
3. Multi-tier Architecture (Three-tier or N-tier)
Definition
In Multi-tier architecture, the system is divided into multiple layers (tiers), each
performing a specific function.
Structure
1. Presentation Layer (Client Tier): User interface
2. Application Layer (Middle Tier): Business logic, processing
3. Data Layer (Database Tier): Database servers
Working
• Client sends request to application server
• Application server processes logic and sends query to database
• Database server returns data to application server
• Application server sends result to client
Advantages
• Better scalability and flexibility
• Improved security (data layer is isolated)
• Easy maintenance and updates
• Suitable for large and complex systems
Disadvantages
• More complex architecture
• Higher cost of implementation
• Requires efficient network communication
Explain homogeneous and heterogeneous distributed database systems.
1. Homogeneous Distributed Database System
Definition
A homogeneous distributed database system is one in which all sites use the
same DBMS, data model, and operating system. The system appears as a
single unified database.
Explanation
• All nodes are similar in structure and functionality
• Communication and coordination are easier
• Data is distributed but managed uniformly
• Users do not notice any difference between sites
Characteristics
• Same DBMS software at all locations
• Same data format and schema
• High level of integration
• Easy data sharing
Advantages
• Simple to design and manage
• Easy query processing
• Better consistency control
• High level of transparency
Disadvantages
• Less flexibility
• Difficult to integrate different systems
• Not suitable for organizations using varied technologies
Example
A company using the same database system (like MySQL) across all its branches.
2. Heterogeneous Distributed Database System
Definition
A heterogeneous distributed database system is one in which different sites use
different DBMS, operating systems, or data models.
Explanation
• Nodes are different from each other
• Data may be stored in different formats
• Requires special software (middleware) for communication
• Integration is more complex
Characteristics
• Different DBMS (e.g., Oracle, MySQL, SQL Server)
• Different data models and schemas
• Partial or full autonomy of sites
• Requires translation between systems
Advantages
• High flexibility
• Can integrate existing systems
• Supports different technologies
Disadvantages
• Complex design and maintenance
• Difficult query processing
• Data inconsistency issues
• Lower transparency
Example
A multinational company where different branches use different database systems.
Discuss tightly coupled vs loosely coupled distributed systems.
Tightly Coupled Distributed Systems
Definition
A tightly coupled system is one in which multiple processors share a common
memory and are closely connected, behaving like a single unified system.
Explanation
• All processors work together with shared memory and clock
• Communication is fast because of direct memory access
• Typically used in parallel processing systems
Characteristics
• Shared memory
• Single operating system
• High degree of synchronization
• Low communication delay
Advantages
• Very high performance
• Fast communication between processors
• Easy data sharing due to shared memory
Disadvantages
• Limited scalability
• Failure of one component may affect entire system
• Expensive hardware setup
Loosely Coupled Distributed Systems
Definition
A loosely coupled system is one in which independent computers are
connected through a network, and each has its own memory and operating
system.
Explanation
• Nodes communicate via message passing
• Each system operates independently
• Common in distributed database systems and networks
Characteristics
• No shared memory
• Multiple operating systems
• Communication through network
• High autonomy of nodes
Advantages
• High scalability
• Better fault tolerance
• Flexible and cost-effective
• Easy to expand
Disadvantages
• Slower communication (network delay)
• Complex coordination
• Data consistency challenges
What is a global directory in DDBMS? Explain its role and importance.
Global Directory in DDBMS
Definition
A global directory (also called a data dictionary or system catalog) in a
Distributed Database Management System (DDBMS) is a centralized or
distributed repository that stores metadata about the entire distributed
database.
It contains information about data location, structure, fragmentation,
replication, and access details.
Role of Global Directory
The global directory plays a crucial role in managing and accessing distributed
data:
• It keeps track of where data is stored (location information)
• It maintains details about data fragments and their distribution
• It stores information about replicated data copies
• It helps in query processing by identifying the required data sites
• It provides schema information (tables, attributes, relationships)
• It assists in authorization and access control
Importance of Global Directory
The global directory is essential for the efficient functioning of a DDBMS:
• It enables location transparency, so users don’t need to know where data
resides
• It improves query optimization by directing queries to appropriate sites
• It ensures data consistency by managing replicated data information
• It supports efficient data retrieval and update operations
• It simplifies database administration and management
• It enhances system performance by reducing unnecessary data access
• It helps maintain security and integrity of the database system
Explain issues related to global directory such as consistency, availability, and
security.
1. Consistency Issues
Explanation
Consistency refers to keeping the global directory information accurate and up-
to-date across all sites.
Problem
• In distributed systems, metadata may be replicated at multiple locations
• When changes occur (e.g., data location, schema updates), all copies must
be updated
• Delay or failure in updates can lead to inconsistent directory information
Impact
• Wrong data location may be accessed
• Query processing errors
• Data inconsistency across sites
2. Availability Issues
Explanation
Availability means the global directory should be accessible whenever needed.
Problem
• If the directory is centralized, it becomes a single point of failure
• If the directory is distributed, network failures may make some parts
unavailable
Impact
• Queries cannot be processed without metadata
• System performance degrades
• Entire system may stop functioning in extreme cases
3. Security Issues
Explanation
The global directory contains sensitive metadata, so it must be protected from
unauthorized access.
Problem
• Distributed nature increases risk of attacks
• Unauthorized users may access information about data location and structure
• Possibility of data manipulation or corruption
Impact
• Breach of confidentiality
• Unauthorized data access
• Threat to system integrity
Differentiate between distribution transparency and replication transparency.
Explain security challenges in distributed database systems.
Security Challenges in Distributed Database Systems
1. Unauthorized Access
Multiple sites increase the risk of unauthorized users accessing data.
2. Data Transmission Security
Data travels over networks, making it vulnerable to interception or attacks.
3. Authentication Issues
Verifying users across different sites is complex.
4. Data Integrity Threats
Data may be altered or corrupted during transmission or updates.
5. Access Control Management
Difficult to enforce consistent access policies across all nodes.
6. Replication Vulnerabilities
Multiple copies of data increase the chances of data leakage.
7. Insider Threats
Local administrators at different sites may misuse privileges.
8. Network Attacks
Systems are exposed to attacks like hacking, spoofing, and denial-of-service.
Discuss issues related to distributed query processing and optimization.
Issues in Distributed Query Processing and Optimization
1. Data Distribution
Data is stored at multiple sites, making it difficult to locate and access efficiently.
2. Data Transfer Cost
High cost of transferring data across the network during query execution.
3. Query Decomposition
Breaking a global query into subqueries for different sites is complex.
4. Site Selection
Choosing the best site to execute parts of a query affects performance.
5. Join Operations Across Sites
Performing joins on data located at different sites is costly and slow.
6. Communication Overhead
Frequent communication between nodes increases delay.
7. Optimization Complexity
Finding the best execution plan is harder than in centralized systems.
8. Data Replication Handling
Selecting the best replica for query execution is challenging.
9. Concurrency Control
Managing simultaneous queries across multiple sites can cause conflicts.
"High reliability does not ensure correctness of the distributed system. "
comment critically .
The statement “High reliability does not ensure correctness of the distributed
system” is valid and highlights an important distinction in distributed systems.
Reliability refers to the system’s ability to continue functioning without failure,
even when some components fail. A highly reliable distributed system may use
techniques like replication, fault tolerance, and redundancy to ensure that
services remain available. However, correctness is concerned with whether the
system produces accurate and consistent results according to its
specifications.
A system can be reliable but still produce incorrect results due to issues such as
data inconsistency, improper synchronization, concurrency conflicts, or
faulty algorithms. For example, if replicated data is not properly synchronized,
different nodes may return different values, leading to incorrect outputs despite the
system being operational. Similarly, errors in transaction management (like
improper commit or rollback) can violate consistency, even though the system
does not crash.
Therefore, reliability ensures availability and continuous operation, but
correctness requires proper coordination, consistency control, and accurate
processing. Both are essential, but one does not guarantee the other.
Describe the reference architecture of Distributed Database Management system
The reference architecture of a Distributed Database Management System
(DDBMS) provides a structured framework that shows how different components
of the system interact to manage distributed data. It consists of multiple layers
that collectively handle user interaction, query processing, and data storage
across different sites. At the top level, users interact with the system through
applications or query interfaces, which are handled by the global query processor.
This component is responsible for interpreting queries and transforming them into
operations that can be executed on distributed data.
The system maintains a global schema that defines the overall logical structure of
the database, along with fragmentation and allocation information that determines
how data is distributed across sites. Beneath this, local DBMS components at
each site manage the actual storage and processing of data. These local systems
execute subqueries generated by the global query processor and return results.
Communication between sites is managed through a network that enables
coordination and data transfer.
Overall, the reference architecture ensures that despite the physical distribution of
data, the system operates as a unified database by coordinating query
processing, data access, and communication among multiple sites.
What are the components which are necessary for building a distributed database ?
Components Necessary for Building a Distributed Database
1. Multiple Sites (Nodes)
Independent computers where data is stored and processed.
2. Communication Network
Connects all sites and enables data transfer and coordination.
3. Distributed DBMS Software
Software that manages the distributed database and controls operations across
sites.
4. Global Schema
Defines the overall logical structure of the entire database.
5. Local DBMS
Each site has its own DBMS to manage local data.
6. Data Fragmentation Mechanism
Divides the database into smaller parts (fragments).
7. Data Allocation Mechanism
Decides where each fragment is stored.
8. Data Replication Mechanism
Maintains copies of data at multiple sites for reliability and performance.
9. Distributed Query Processor
Breaks global queries into subqueries and executes them across sites.
10. Transaction Management System
Ensures consistency and correctness of transactions (e.g., concurrency control,
commit protocols).
11. Global Directory (Data Dictionary)
Stores metadata about data location, structure, and distribution.
What are the fragmentation , replication and location transparencies ?
1. Fragmentation Transparency
Fragmentation transparency means that the user is unaware that the database is
divided into smaller parts (fragments). In a distributed system, data may be split
into horizontal (rows) or vertical (columns) fragments and stored at different sites.
However, the system automatically combines these fragments when a query is
made, so the user sees the data as a single unified table without knowing how it is
divided.
2. Replication Transparency
Replication transparency means that the user is not aware that multiple copies of
the same data exist at different locations. The system manages these replicas and
ensures consistency among them. Users interact with the database as if there is
only one copy of the data, even though several copies may be stored for
performance and reliability.
3. Location Transparency
Location transparency means that the user does not need to know where the data
is physically stored. Data may reside at different geographical sites, but users can
access it using the same query without specifying its location. The system
automatically identifies and retrieves the data from the appropriate site.
~ DEBKANTA MAITY
IMPORTANT LINKS ( DSZ )
Debkanta Study Zone – Official & Verified
Dear All,
These are the only official and verified links of Debkanta Study Zone (DSZ). Please avoid fake or
duplicate links and stay safe.
Official Admins
Debkanta Maity | Soumaditya Jamaddar | Sumit Mondal | Priyanshu Das
OFFICIAL YOUTUBE
[Link]
WHATSAPP CHANNEL
[Link]
WHATSAPP GROUPS
2023–2027 → Join
2024–2028 → Join
2025–2029 → Join
GATE & PLACEMENT → Join
#DSZOFFICIAL #DebkantaStudyZone #EducationFreeForAll