Introduction-DC
Introduction-DC
Computing
What is Distributed Computing?
Perspective:
• Distributed Computing: Looks at distributed systems from the
perspective of solving computational problems efficiently by dividing
them into smaller tasks that can be executed concurrently on multiple
computers.
• Distributed Systems: Studies the challenges and principles involved in
building and maintaining distributed systems, such as dealing with
failures, concurrency, and lack of a global clock.
Differences between distributed
computing and distributed systems
Emphasis:
• Distributed Computing: Emphasizes the development of distributed
algorithms and programming models to harness the power of multiple
computers for solving complex problems.
• Distributed Systems: Focuses on the design and implementation of the
underlying infrastructure and middleware that enables the coordination
and communication between components in a distributed system.
Applications:
• Distributed Computing: Finds applications in areas like parallel
processing, grid computing, and cloud computing, where the goal is to
leverage the collective computing power of multiple machines.
• Distributed Systems: Has a wider range of applications, including client-
server architectures, peer-to-peer networks, and service-oriented
architectures, where the focus is on enabling the sharing of resources
and services among networked computers.
Why are DCs are gaining popularity
Banking networks
• Transparency
• Openness
• Scalability
• Issue:
– It is difficult to achieve since it is hard to distinguish
between a dead resource and a painfully slow resource.
• Leader election
• Un-reliability of communication
• Mutual Exclusion
• Replica management
• Termination detection
Why is it hard to design them?
• Synchronous/Asynchronous
• Time complexity:
– For synchronous systems, no. of rounds
– For asynchronous systems, different
definitions are there.
Redefining File System Design : GFS
• Types of reads
– Data Analysis Programs reading large repositories
– Large streaming reads (read once)
– Small random reads (in the forward direction)