0% found this document useful (0 votes)
367 views

What Is A Distributed System - GeeksforGeeks

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

What Is A Distributed System - GeeksforGeeks

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

Trending Now DSA Web Tech Foundational Courses Data Science Practice Problem Python

What is a Distributed System?


Last Updated : 11 Feb, 2024

Distributed System is a collection of autonomous computer systems that are


physically separated but are connected by a centralized computer network that is
equipped with distributed system software. The autonomous computers will
communicate among each system by sharing resources and files and performing the
tasks assigned to them.

Types of Distributed Systems:

There are many models and architectures of distributed systems in use today.

Client-server systems, the most traditional and simple type of distributed system,
involve a multitude of networked computers that interact with a central server for
data storage, processing or other common goal.
Peer-to-peer networks distribute workloads among hundreds or thousands of
computers all running the same software.
Cell phone networks are an advanced distributed system, sharing workloads
among handsets, switching systems and internet-based devices.

So, The most common forms of distributed systems today operate over the internet,
handing off workloads to dozens of cloud-based virtual server instances that are
created as needed, and then terminated when the task is complete.

Example of Distributed System:


Any Social Media can have its Centralized Computer Network as its Headquarters and
computer systems that can be accessed by any user and using their services will be
the Autonomous Systems in the Distributed System Architecture.

Distributed System Software: This Software enables computers to coordinate their


activities and to share the resources such as Hardware, Software, Data, etc.
Database: It is used to store the processed data that are processed by each
Node/System of the Distributed systems that are connected to the
Centralized network.

As we can see that each Autonomous System has a common Application that can
have its own data that is shared by the Centralized Database System.
To Transfer the Data to Autonomous Systems, Centralized System should be having
a Middleware Service and should be connected to a Network.
Middleware Services enable some services which are not present in the local
systems or centralized system default by acting as an interface between the
systems or centralized system default by acting as an interface between the
Centralized System and the local systems. By using components of Middleware
Services systems communicate and manage data.
The Data which is been transferred through the database will be divided into
segments or modules and shared with Autonomous systems for processing.
The Data will be processed and then will be transferred to the Centralized system
through the network and will be stored in the database.

Characteristics of Distributed System:

Resource Sharing: It is the ability to use any Hardware, Software, or Data anywhere
in the System.
Openness: It is concerned with Extensions and improvements in the system (i.e.,
How openly the software is developed and shared with others)
Concurrency: It is naturally present in Distributed Systems, that deal with the same
activity or functionality that can be performed by separate users who are in remote
locations. Every local system has its independent Operating Systems and
Resources.
Scalability: It increases the scale of the system as a number of processors
communicate with more users by accommodating to improve the responsiveness
of the system.
Fault tolerance: It cares about the reliability of the system if there is a failure in
Hardware or Software, the system continues to operate properly without degrading
the performance the system.
Transparency: It hides the complexity of the Distributed Systems to the Users and
Application programs as there should be privacy in every system.
Heterogeneity: Networks, computer hardware, operating systems, programming
languages, and developer implementations can all vary and differ among dispersed
system components.

Advantages of Distributed System:

Applications in Distributed Systems are Inherently Distributed Applications.


Information in Distributed Systems is shared among geographically distributed
users.
Resource Sharing (Autonomous systems can share resources from remote
locations).
It has a better price performance ratio and flexibility.
It has shorter response time and higher throughput.
It has higher reliability and availability against component failure.
It has extensibility so that systems can be extended in more remote locations and
It has extensibility so that systems can be extended in more remote locations and
also incremental growth.

Disadvantages of Distributed System:

Relevant Software for Distributed systems does not exist currently.


Security possess a problem due to easy access to data as the resources are shared
to multiple systems.
Networking Saturation may cause a hurdle in data transfer i.e., if there is a lag in the
network then the user will face a problem accessing data.
In comparison to a single user system, the database associated with distributed
systems is much more complex and challenging to manage.
If every node in a distributed system tries to send data at once, the network may
become overloaded.

Applications Area of Distributed System:

Finance and Commerce: Amazon, eBay, Online Banking, E-Commerce websites.


Information Society: Search Engines, Wikipedia, Social Networking, Cloud
Computing.
Cloud Technologies: AWS, Salesforce, Microsoft Azure, SAP.
Entertainment: Online Gaming, Music, youtube.
Healthcare: Online patient records, Health Informatics.
Education: E-learning.
Transport and logistics: GPS, Google Maps.
Environment Management: Sensor technologies.

Challenges of Distributed Systems:

While distributed systems offer many advantages, they also present some challenges
that must be addressed. These challenges include:

Network latency: The communication network in a distributed system can introduce


latency, which can affect the performance of the system.
Distributed coordination: Distributed systems require coordination among the
nodes, which can be challenging due to the distributed nature of the system.
Security: Distributed systems are more vulnerable to security threats than
centralized systems due to the distributed nature of the system.
Data consistency: Maintaining data consistency across multiple nodes in a
distributed system can be challenging.
Conclusion:
Distributed systems are becoming increasingly popular due to their high availability,
scalability, and fault tolerance. However, they also present some challenges that must
be addressed. By understanding the characteristics and challenges of distributed
systems, developers can design and implement effective distributed systems that
meet the needs of their users.

Note: This article is a part of “Analysis of Monolithic and Distributed Systems”

Suggest improvement

Previous Next

Share your thoughts in the comments Add Your Comment

Similar Reads
Design Principles of Distributed File
Message Passing in Distributed System
System

Load Balancing Approach in Distributed Mechanism for building Distributed file


System system

File Accessing Models in Distributed Wait For Graph Deadlock Detection in


System Distributed System

Deadlock Avoidance in Distributed Features of Good Message Passing in


System Distributed System

Causal Ordering of Messages in


Goals of Distributed System
Distributed System
D devasisha…

Article Tags : Distributed System

A-143, 9th Floor, Sovereign Corporate


Tower, Sector-136, Noida, Uttar
Pradesh - 201305

Company Explore

About Us Hack-A-Thons

Legal GfG Weekly Contest

Careers DSA in JAVA/C++

In Media Master System Design

Contact Us Master CP

Advertise with us GeeksforGeeks Videos

GFG Corporate Solution Geeks Community

Placement Training Program

Languages DSA

Python Data Structures

Java Algorithms

C++ DSA for Beginners

PHP Basic DSA Problems

GoLang DSA Roadmap

SQL Top 100 DSA Interview Problems

R Language DSA Roadmap by Sandeep Jain

Android Tutorial All Cheat Sheets

Tutorials Archive
Tutorials Archive

Data Science & ML HTML & CSS

Data Science With Python HTML

Data Science For Beginner CSS

Machine Learning Tutorial Web Templates

ML Maths CSS Frameworks

Data Visualisation Tutorial Bootstrap

Pandas Tutorial Tailwind CSS

NumPy Tutorial SASS

NLP Tutorial LESS

Deep Learning Tutorial Web Design

Django Tutorial

Python Tutorial Computer Science

Python Programming Examples Operating Systems

Python Projects Computer Network

Python Tkinter Database Management System

Web Scraping Software Engineering

OpenCV Tutorial Digital Logic Design

Python Interview Question Engineering Maths

DevOps Competitive Programming

Git Top DS or Algo for CP

AWS Top 50 Tree

Docker Top 50 Graph

Kubernetes Top 50 Array

Azure Top 50 String

GCP Top 50 DP

DevOps Roadmap Top 15 Websites for CP

System Design JavaScript

High Level Design JavaScript Examples

Low Level Design TypeScript

UML Diagrams ReactJS

Interview Guide NextJS

Design Patterns AngularJS

OOAD NodeJS
OOAD NodeJS

System Design Bootcamp Lodash

Interview Questions Web Browser

Preparation Corner School Subjects

Company-Wise Recruitment Process Mathematics

Resume Templates Physics

Aptitude Preparation Chemistry

Puzzles Biology

Company-Wise Preparation Social Science

English Grammar

World GK

Management & Finance Free Online Tools

Management Typing Test

HR Management Image Editor

Finance Code Formatters

Income Tax Code Converters

Organisational Behaviour Currency Converter

Marketing Random Number Generator

Random Password Generator

More Tutorials GeeksforGeeks Videos

Software Development DSA

Software Testing Python

Product Management Java

SAP C++

SEO - Search Engine Optimization Data Science

Linux CS Subjects

Excel

@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved

You might also like