Browse Definitions :

distributed computing

What is distributed computing?

Distributed computing is a model in which components of a software system are shared among multiple computers or nodes. Even though the software components may be spread out across multiple computers in multiple locations, they're run as one system. This is done to improve efficiency and performance. The systems on different networked computers communicate and coordinate by sending messages back and forth to achieve a defined task.

Distributed computing can increase performance, resilience and scalability, making it a common computing model in database and application design.

How distributed computing works

Distributed computing networks can be connected as local networks or through a wide area network if the machines are in a different geographic location. Processors in distributed computing systems typically run in parallel.

In enterprise settings, distributed computing generally puts various steps in business processes at the most efficient places in a computer network. For example, a typical distribution has a three-tier model that organizes applications into the presentation tier (or user interface), the application tier and the data tier. These tiers function as follows:

  1. User interface processing occurs on the PC at the user's location
  2. Application processing takes place on a remote computer
  3. Database access and processing algorithms happen on another computer that provides centralized access for many business processes

In addition to the three-tier model, other types of distributed computing include client-server, n-tier and peer-to-peer:

  • Client-server architectures. These use smart clients that contact a server for data, then format and display that data to the user.
  • N-tier system architectures. Typically used in application servers, these architectures use web applications to forward requests to other enterprise services.
  • Peer-to-peer architectures. These divide all responsibilities among all peer computers, which can serve as clients or servers.
How distributed computing works
An example of how networks, servers and computers are structured in distributed computing.

Benefits of distributed computing

Distributed computing includes the following benefits:

  • Performance. Distributed computing can help improve performance by having each computer in a cluster handle different parts of a task simultaneously.
  • Scalability. Distributed computing clusters are scalable by adding new hardware when needed.
  • Resilience and redundancy. Multiple computers can provide the same services. This way, if one machine isn't available, others can fill in for the service. Likewise, if two machines that perform the same service are in different data centers and one data center goes down, an organization can still operate.
  • Cost-effectiveness. Distributed computing can use low-cost, off-the-shelf hardware.
  • Efficiency.Complex requests can be broken down into smaller pieces and distributed among different systems. This way, the request is simplified and worked on as a form of parallel computing, reducing the time needed to compute requests.
  • Distributed applications. Unlike traditional applications that run on a single system, distributed applications run on multiple systems simultaneously.

Grid computing, cloud computing and distributed computing

Grid computing is a computing model involving a distributed architecture of multiple computers connected to solve a complex problem. In the grid computing model, servers or PCs run independent tasks and are linked loosely by the internet or low-speed networks. Individual participants can enable some of their computer's processing time to solve complex problems.

SETI@home is one example of a grid computing project. Although the project's first phase wrapped up in March 2020, for more than 20 years, individual computer owners volunteered some of their multitasking processing cycles -- while concurrently still using their computers -- to the Search for Extraterrestrial Intelligence (SETI) project. This computer-intensive problem used thousands of PCs to download and search radio telescope data.

Grid computing and distributed computing are similar concepts that can be hard to tell apart. Generally, distributed computing has a broader definition than grid computing. Grid computing is typically a large group of dispersed computers working together to accomplish a defined task. Conversely, distributed computing can work on numerous tasks simultaneously. Some may also define grid computing as just one type of distributed computing. In addition, while grid computing typically has well-defined architectural components, distributed computing can have various architectures, such as grid, cluster and cloud computing.

Cloud computing is also similar in concept to distributed computing. Cloud computing is a general term for anything that involves delivering hosted services over the internet. These services, however, are divided into three main types: infrastructure as a service (IaaS), platform as a service (PaaS) and software as a service (SaaS). Cloud computing is also divided into private and public clouds. A public cloud sells services to another party, while a private cloud is a proprietary network that supplies a hosted service to a limited number of people, with specific access and permissions settings. Cloud computing aims to provide easy, scalable access to computing resources and IT services.

Cloud and distributed computing both focus on spreading a service or services to a number of different machines; however, cloud computing typically offers a service like a specific software or storage for organizations to use on their own tasks. Meanwhile, distributed computing involves distributing services to different computers to aid in or around the same task.

Learn more about distributed computing and how edge object storage helps improve distributed systems.  

This was last updated in August 2022

Continue Reading About distributed computing

  • network interface card (NIC)

    A network interface card (NIC) is a hardware component, typically a circuit board or chip, installed on a computer so it can ...

  • User Datagram Protocol (UDP)

    User Datagram Protocol (UDP) is a communications protocol primarily used to establish low-latency and loss-tolerating connections...

  • Telnet

    Telnet is a network protocol used to virtually access a computer and provide a two-way, collaborative and text-based ...

  • advanced persistent threat (APT)

    An advanced persistent threat (APT) is a prolonged and targeted cyber attack in which an intruder gains access to a network and ...

  • Mitre ATT&CK framework

    The Mitre ATT&CK (pronounced miter attack) framework is a free, globally accessible knowledge base that describes the latest ...

  • timing attack

    A timing attack is a type of side-channel attack that exploits the amount of time a computer process runs to gain knowledge about...

  • employee resource group (ERG)

    An employee resource group is a workplace club or more formally realized affinity group organized around a shared interest or ...

  • employee training and development

    Employee training and development is a set of activities and programs designed to enhance the knowledge, skills and abilities of ...

  • employee sentiment analysis

    Employee sentiment analysis is the use of natural language processing and other AI techniques to automatically analyze employee ...

Customer Experience
  • customer profiling

    Customer profiling is the detailed and systematic process of constructing a clear portrait of a company's ideal customer by ...

  • customer insight (consumer insight)

    Customer insight, also known as consumer insight, is the understanding and interpretation of customer data, behaviors and ...

  • buyer persona

    A buyer persona is a composite representation of a specific type of customer in a market segment.