0% found this document useful (0 votes)
6 views25 pages

Introduction to Distributed Systems

Distributed systems are computing environments where components are spread across multiple devices on a network, allowing for efficient task completion by splitting workloads. They enhance reliability and fault tolerance, can scale in real-time, and have become more accessible due to advancements in software as a service (SaaS). These systems are essential for handling complex computing tasks in various applications, including blockchain and scientific simulations.

Uploaded by

Jeff Miano
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)
6 views25 pages

Introduction to Distributed Systems

Distributed systems are computing environments where components are spread across multiple devices on a network, allowing for efficient task completion by splitting workloads. They enhance reliability and fault tolerance, can scale in real-time, and have become more accessible due to advancements in software as a service (SaaS). These systems are essential for handling complex computing tasks in various applications, including blockchain and scientific simulations.

Uploaded by

Jeff Miano
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

9/23/22, 2:57 PM What Are Distributed Systems?

An Introduction | Splunk

Support   

Products  Solutions  Why Splunk?  Resources 


Free Splunk

DATA INSIDER

What Are Distributed


Systems?

SPLUNK PRODUCTS Splunk for Blockchain | Analyst Report: Monitoring the Blockchain

A distributed system is a computing environment in


which various components are spread across multiple
computers (or other computing devices) on a network.
These devices split up the work, coordinating their Ready to learn more about
Splunk?
efforts to complete the job more efficiently than if a
single device had been responsible for the task.

Skip to main content 

[Link] distributed system is a,been responsible for the task. 1/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Distributed systems are an important development for


Support   
IT and computer science as an increasing number of
Products  Solutions  related
Why Splunk?  jobs are so massive
Resources  and complex that it would Free Splunk

be impossible for a single computer to handle them
alone. But distributed computing offers additional
advantages over traditional computing environments.
Distributed systems reduce the risks involved with
having a single point of failure, bolstering reliability and
fault tolerance. Modern distributed systems are
generally designed to be scalable in near real-time; also,
you can spin up additional computing resources on the
fly, increasing performance and further reducing time to
completion.

Historically, distributed computing was expensive,


complex to configure and difficult to manage. But
thanks to software as a service (SaaS) platforms that
offer expanded functionality, distributed computing has
become more streamlined and affordable for
businesses large and small. As a result, all types of
computing jobs — from database management to video
games — use distributed computing. In fact, many
types of software, such as cryptocurrency systems,
scientific simulations, blockchain technologies andReady
AI to learn more about
Splunk?
platforms, wouldn’t be possible at all without these
platforms.

Skip to main content 

[Link] distributed system is a,been responsible for the task. 2/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

In this article, we’ll explore the operation of such


Support   
systems, the challenges and risks of these platforms,
Products  Solutions  and the
Why Splunk?  myriad benefits
Resources  of distributed computing. Free Splunk

Ready to learn more about


Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 3/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

What Are Distributed Systems: Support   

Products  Solutions 
Contents
Why Splunk? Resources  
Free Splunk

In This Article Additional Resources
Elements of Distributed  Observability Success
Systems Stories

Challenges and Benefits


 Installing and Managing
of Distributed Systems Splunk Stream in a
Distributed
Distributed Systems Use Environment
Cases  Data Insider home

The Bottom Line: The


future of computing is
built around distributed
systems

More Resources

Ready to learn more about


Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 4/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Elements of Distributed Support   

Products  Solutions 
Systems
Why Splunk? Resources  
Free Splunk

How does a distributed system work?


Distributed systems have evolved over time, but today’s
most common implementations are largely designed to
operate via the internet and, more specifically, the
cloud. A distributed system begins with a task, such as
rendering a video to create a finished product ready for
release.

The web application, or distributed applications,


managing this task — like a video editor on a client
computer — splits the job into pieces. In this simple
example, the algorithm gives one frame of the video to
each of a dozen different computers (or nodes) to
complete the rendering. Once the frame is complete,
the managing application gives the node a new frame to
work on. This process continues until the video is
finished and all the pieces are put back together.

A system like this doesn’t have to stop at just 12 nodes


Ready to learn more about
Splunk?
— the job may be distributed among hundreds or even
thousands of nodes, turning a task that might have
taken days for a single computer to complete into one
that is finished in a matter of minutes.
Skip to main content 

[Link] distributed system is a,been responsible for the task. 5/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Support   

Products  Solutions  Why Splunk?  Resources 


Free Splunk

Splunk for
Blockchain &
Distributed
Systems
Get The Report ›

Analyst report: See how Splunk


enables monitoring for Blockchain Ready to learn more about
& Distributed Systems Splunk?

Skip to main content 


What are the types of distributed systems?
[Link] distributed system is a,been responsible for the task. 6/25
9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

There are many models and architectures of distributed


Support   
systems in use today.
Products  Solutions  Why Splunk?  Resources 
Free Splunk
• 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.

• Cell phone networks are an advanced type of


distributed system that share workloads among
handsets, switching systems and internet-based
devices.

• Peer-to-peer networks, in which workloads are


distributed among hundreds or thousands of
computers all running the same software, are
another example of a distributed system
architecture.

• The most common forms of distributed systems in


the enterprise today are those that operate over the
web, handing off workloads to dozens of cloud-
based virtual server instances that are created as
needed, then terminated when the task is complete.
Ready to learn more about
Splunk?

What are key characteristics of a distributed


system?
Skip to main content 

[Link] distributed system is a,been responsible for the task. 7/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Distributed systems are commonly defined by the


Support   
following key characteristics and features:
Products  Solutions  Why Splunk?  Resources 
Free Splunk
• Scalability: The ability to grow as the size of the 
workload increases is an essential feature of
distributed systems, accomplished by adding
additional processing units or nodes to the network
as needed.

• Concurrency: Distributed system components run


simultaneously. They’re also characterized by the
lack of a “global clock,” when tasks occur out of
sequence and at different rates.

• Availability/fault tolerance: If one node fails, the


remaining nodes can continue to operate without
disrupting the overall computation.

• Transparency: An external programmer or end user


sees a distributed system as a single computational
unit rather than as its underlying parts, allowing
users to interact with a single logical device rather
than being concerned with the system’s
architecture.

• Heterogeneity: In most distributed systems, theReady to learn more about


Splunk?
nodes and components are often asynchronous,
with different hardware, middleware, software and
operating systems. This allows the distributed
Skip to main content 

[Link] distributed system is a,been responsible for the task. 8/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

systems to be extended with the addition of new


Support   
components.
Products Solutions Why Splunk? Resources
• Replication: Free Splunk
   
Distributed systems enable shared 
information and messaging, ensuring consistency
between redundant resources, such as software or
hardware components, improving fault tolerance,
reliability and accessibility.

What is distributed tracing?


Distributed tracing, sometimes called distributed
request tracing, is a method for monitoring applications
— typically those built on a microservices architecture
— which are commonly deployed on distributed
systems. Distributed tracing is essentially a form of
distributed computing in that it’s commonly used to
monitor the operations of applications running on
distributed systems.

Ready to learn more about


Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 9/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

In software development and operations, tracing is


Support   
used to follow the course of a transaction as it travels
Products  Solutions  through
Why Splunk?  an application
Resources  — an online credit card Free Splunk

transaction as it winds its way from a customer’s initial
purchase to the verification and approval process to
the completion of the transaction, for example. A
tracing system monitors this process step by step,
helping a developer to uncover bugs, bottlenecks,
latency or other problems with the application.

Distributed tracing is necessary because of the


considerable complexity of modern software
architectures. A distributed tracing system is designed
to operate on a distributed services infrastructure,
where it can track multiple applications and processes
simultaneously across numerous concurrent nodes and
computing environments.

Without distributed tracing, an application built on a


microservices architecture and running on a system as
large and complex as a globally distributed system
environment would be impossible to monitor
effectively.
Ready to learn more about
(Learn about best practices for distributed tracing.)Splunk?

What are patterns in a distributed system?


Skip to main content 

[Link] distributed system is a,been responsible for the task. 10/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

A software design pattern is a programming language


Support   
defined as an ideal solution to a contextualized
Products  Solutions  programming
Why Splunk?  problem.
Resources  Patterns are reusable solutions Free Splunk

to common problems that represent the best practices
available at the time, and while they don’t provide
finished code, they provide replication capabilities and
offer guidance on how to solve a certain issue or
implement a needed feature.

When thinking about the challenges of a distributed


computing platform, the trick is to break it down into a
series of interconnected patterns; simplifying the
system into smaller, more manageable and more easily
understood components helps abstract a complicated
architecture. Patterns are commonly used to describe
distributed systems, such as command and query
responsibility segregation (CQRS) and two-phase
commit (2PC). Different combinations of patterns are
used to design distributed systems, and each approach
has unique benefits and drawbacks.

Ready to learn more about


Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 11/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Benefits, Challenges and Risks Support   

Products  Solutions 
of Distributed
Why Splunk? Resources
Systems
 
Free Splunk

What are the benefits of distributed systems?


Distributed systems offer a number of advantages over
monolithic, or single, systems, including:

• Greater flexibility: It is easier to add computing


power as the need for services grows. In most cases
today, you can add servers to a distributed system
on the fly.

• Reliability: A well-designed distributed system can


withstand failures in one or more of its nodes
without severely impacting performance. In a
monolithic system, the entire application goes down
if the server goes down.

• Enhanced speed: Heavy traffic can bog down single


servers when traffic gets heavy, impacting
performance for everyone. The scalability of
distributed databases and other distributed
Ready to learn more about
systems makes them easier to maintain and also
Splunk?
sustain high-performance levels.

• Geo-distribution: Distributed content delivery is


both intuitive for any internet user, and vital for
Skip to main content  global organizations.
[Link] distributed system is a,been responsible for the task. 12/25
9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Support   

Products  Solutions  What


Why Splunk?  are some challenges
Resources  of distributed Free Splunk
systems? 

Distributed systems are considerably more complex


than monolithic computing environments, and raise a
number of challenges around design, operations and
maintenance. These include:

• Increased opportunities for failure: The more


systems added to a computing environment, the
more opportunity there is for failure. If a system is
not carefully designed and a single node crashes,
the entire system can go down. While distributed
systems are designed to be fault tolerant, that fault
tolerance isn’t automatic or foolproof.

• Synchronization process challenges: Distributed


systems work without a global clock, requiring
careful programming to ensure that processes are
properly synchronized to avoid transmission delays
that result in errors and data corruption. In a
complex system — such as a multiplayer video
game — synchronization can be challenging, Ready to learn more about
Splunk?
especially on a public network that carries data
traffic.

• Imperfect scalability: Doubling the number of


Skip to main content  nodes in a distributed system doesn’t necessarily
[Link] distributed system is a,been responsible for the task. 13/25
9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

double performance. Architecting an effective


Support   
distributed system that maximizes scalability is a
Products  Solutions  Why Splunk?complex
 undertaking
Resources  that needs to take into Free Splunk

account load balancing, bandwidth management
and other issues.

• More complex security: Managing a large number


of nodes in a heterogeneous or globally distributed
environment creates numerous security challenges.
A single weak link in a file system or larger
distributed system network can expose the entire
system to attack.

• Increased complexity: Distributed systems are


more complex to design, manage and understand
than traditional computing environments.

What are the risks of distributed systems?


The challenges of distributed systems as outlined
above create a number of correlating risks. These
include:

• Security: Distributed systems are as vulnerableReady


to to learn more about
Splunk?
attack as any other system, but their distributed
nature creates a much larger attack surface that
exposes organizations to threats.
Skip to main content 

[Link] distributed system is a,been responsible for the task. 14/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

• Risk of network failure: Distributed systems are Support   


beholden to public networks in order to transmit
Products  Solutions  Why Splunk?and
 receive data.
Resources  If one segment of the internet
Free Splunk

becomes unavailable or overloaded, distributed
system performance may decline.

• Governance and control issues: Distributed


systems lack the governability of monolithic, single-
server-based systems, creating auditing and
adherence issues around global privacy laws such
as GDPR. Globally distributed environments can
impose barriers to providing certain levels of
assurance and impair visibility into where data
resides.

• Cost control: Unlike centralized systems, the


scalability of distributed systems allows
administrators to easily add additional capacity as
needed, which can also increase costs. Pricing for
cloud-based distributed computing systems are
based on usage (such as the number of memory
resources and CPU power consumed over time). If
demand suddenly spikes, organizations can face a
massive bill.
Ready to learn more about
Splunk?

How do you apply access control in


distributed systems?
Skip to main content 

[Link] distributed system is a,been responsible for the task. 15/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Administrators use a variety of approaches to manage


Support   
access control in distributed computing environments,
Products  Solutions  ranging
Why Splunk?  from traditional
Resources  access control lists (ACLs) to Free Splunk

role-based access control (RBAC).

One of the most promising access control mechanisms


for distributed systems is attribute-based access
control (ABAC), which controls access to objects and
processes using rules that include information about
the user, the action requested and the environment of
that request. Administrators can also refine these types
of roles to restrict access to certain times of day or
certain locations.

Distributed Systems Use Cases

How are distributed systems used?


Ready to learn more about
Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 16/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Distributed systems are used when a workload is too


Support   
great for a single computer or device to handle. They’re
Products  Solutions  also helpful
Why Splunk?  in situations
Resources  when the workload is subject Free Splunk

to change, such as e-commerce traffic on Cyber
Monday. Today, virtually every internet-connected web
application that exists is built on top of some form of
distributed system.

Some of the most common examples of distributed


systems:

• Telecommunications networks (including cellular


networks and the fabric of the internet)

• Graphical and video-rendering systems


• Scientific computing, such as protein folding and
genetic research

• Airline and hotel reservation systems


• Multiuser video conferencing systems
• Cryptocurrency processing systems (e.g. Bitcoin)
• Peer-to-peer file-sharing systems (e.g. BitTorrent)
• Distributed community compute systems (e.g. Splunk?
Ready to learn more about

Folding@Home)

• Multiplayer video games


Skip to main content 

[Link] distributed system is a,been responsible for the task. 17/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

• Global, distributed retailers and supply chain Support   


management (e.g. Amazon)
Products  Solutions  Why Splunk?  Resources 
Free Splunk

What are different types of distributed


deployments?
Distributed deployments can range from tiny, single
department deployments on local area networks toReady to learn more about
Splunk?
large-scale, global deployments. In addition to their size
and overall complexity, organizations can consider
deployments based on:
Skip to main content 

[Link] distributed system is a,been responsible for the task. 18/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

• The size and capacity of their computer network Support   

Products Solutions
• The amount
Why Splunk?
of data they’ll consume
Resources
   
Free Splunk

• How frequently they run processes and whether
they'll be scheduled or ad hoc

• The number of users accessing the system


• Capacity of their data center
• The necessary data fidelity and availability
requirements

Based on these considerations, distributed


deployments are categorized as departmental, small
enterprise, medium enterprise or large enterprise.

While there are no official taxonomies delineating what


separates a medium enterprise from a large enterprise,
these categories represent a starting point for planning
the needed resources to implement a distributed
computing system. Distributed systems can also evolve
over time, transitioning from departmental to small
enterprise as the enterprise grows and expands.

Ready to learn more about


Splunk?
Why do we need distributed systems now?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 19/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

Modern computing wouldn’t be possible without


Support   
distributed systems. They’re essential to the operations
Products  Solutions  of wireless
Why Splunk?  networks,
Resources  cloud computing services and the
Free Splunk

internet. If distributed systems didn’t exist, neither
would any of these technologies.

But do we still need distributed systems for enterprise-


level jobs that don’t have the complexity of an entire
telecommunications network? In most cases, the
answer is yes. Distributed systems provide scalability
and improved performance in ways that monolithic
systems can’t, and because they can draw on the
capabilities of other computing devices and processes,
distributed systems can offer features that would be
difficult or impossible to develop on a single system.

This includes things like performing an off-site server


and application backup — if the master catalog doesn’t
see the segment bits it needs for a restore, it can ask
the other off-site node or nodes to send the segments.
Virtually everything you do now with a computing
device takes advantage of the power of distributed
systems, whether that’s sending an email, playing a
game or reading this article on the web. Ready to learn more about
Splunk?

Skip to main content 


Splunk for
Blockchain &
[Link] distributed system is a,been responsible for the task. 20/25
9/23/22, 2:57 PM
Blockchain & What Are Distributed Systems? An Introduction | Splunk

Distributed Support   
Systems
Get The Report ›
Products  Solutions  Why Splunk? Resources  
Free Splunk
Analyst report: See how Splunk 
enables monitoring for Blockchain
& Distributed Systems

Monitor Function-as-a-Service with end-to-end visibility


in Splunk Observability Cloud

Monitor Function-as-a-Service with end-to-end visibility in S…


S…

Ready to learn more about


Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 21/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

The Bottom Line: Distributed Support   

Products  Solutions 
systems
Why Splunk?
are driving the future
Resources  
Free Splunk

of computing

Distributed systems are well-positioned to dominate


computing as we know it for the foreseeable future, and
almost any type of application or service will
incorporate some form of distributed computing. The
need for always-on, available-anywhere computing is
driving this trend, particularly as users increasingly turn
to mobile devices for daily tasks. Looking ahead,
distributed systems are certain to cement their
importance in global computing as enterprise
developers increasingly rely on distributed tools to
streamline development, deploy systems and
infrastructure, facilitate operations and manage
applications.

More Resources
Ready to learn more about
 Observability Success Stories Splunk?

 Operational Intelligence: An Introduction


 Business Analytics 101
Skip to main content 

[Link] distributed system is a,been responsible for the task. 22/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

 A Primer on Risk Management


Support   
 What is the MITRE ATT&CK Framework?
Products  Solutions  Why Splunk?  Resources 
Free Splunk
 Root Cause Analysis (RCA): A Beginner's Guide

Related Articles

DATA INSIDER DATA INSIDER DATA INSIDER

AI and What is What Is


Machine Predictive Application
Learning: An Maintenance? Performance
Introduction An Monitoring?
Introduction

Ready to learn more about


Splunk?

CONTACT
Skip to main content  COMPANY PRODUCTS SPLUNK

[Link] distributed system is a,been responsible for the task. 23/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

About Splunk Free Trials & Contact


Support   
Downloads Sales 
Careers
Products  Solutions  Why Splunk?  Resources 
Free Splunk
Pricing Contact 
Global Impact
Support 
View All
Leadership
Products
Newsroom SPLUNK
MOBILE

Partners SPLUNK
SITES

Splunk Policy .conf


Positions
Documentatio
Splunk
Investor
Protects
Relations
Splunk
Training &
Ventures
Certification
Supplier
T-Shirt Store
Central

Videos
Why Splunk?

View All
Resources
Ready to learn more about
Splunk?

Skip to main content 

[Link] distributed system is a,been responsible for the task. 24/25


9/23/22, 2:57 PM What Are Distributed Systems? An Introduction | Splunk

splunk logo
Support   

Products  Solutions  Why Splunk?  Resources  © 2005 - 2022 Splunk Inc. All rights reserved.
Free Splunk
Legal Privacy Sitemap Website Terms of Use 

Ready to learn more about


Splunk?

[Link] distributed system is a,been responsible for the task. 25/25

You might also like