1. Introduction
In this tutorial, we’ll first define cloud and distributed computing. Secondly, we’ll review how they function. Then we’ll discuss how they are structured. We’ll also consider some types of cloud and distributed computing. Finally, we’ll discuss the differences.
Cloud and distributed computing have found use in many industries. They both employ the use of communication techniques between many devices to either solve problems or provide services.
2. Cloud Computing
Cloud computing dates back to the 1960s with the emergence of remote computing. It encompasses the provision of computing services such as data storage, computing power, and applications over the Internet. The underlying principle behind cloud computing is to facilitate resource sharing over the Internet anytime and anyhow.
In cloud computing, a vendor hosts some computing resources on the Internet, while clients put in requests to use these resources. This request for services is usually paid, however, there are some free options currently available to the public.
For example, companies like Amazon host and rent out services through the Amazon Web Service (AWS) platform. Microsoft through Microsoft Azure also offers cloud computing services for application management.
2.1. Characteristics of Cloud Computing
The main characteristic of cloud computing is found in abstraction. In particular, the computing services accessed by clients are completely abstracted. Abstraction enables the key benefit of cloud computing, which is shared, ubiquitous access. Abstraction presents the essential features of cloud computing while hiding the background details from the user.
Another characteristic of cloud computing is on-demand self-service**.** On-demand self-service refers to the concept of allowing access to cloud computing services anytime, anywhere without interactions between the users and the vendors.
Elasticity is another property of cloud computing that refers to the ability to scale up and scale down as required. Scaling-up in this context means that the cloud computing platform can accommodate and increase or decrease the supply of services without affecting the performance.
Another aspect of cloud computing is measured usage. The use of the computing services available in cloud computing is usually measured. These measurements are available to both the vendors and clients and are used for reporting and billing.
2.2. Components of Cloud Computing
There are three main components to cloud computing which we’ll discuss in this article.
Infrastructure-as-a-Service (IaaS), is a component of cloud computing that provides access to computer infrastructure over the Internet. Here, infrastructure such as storage devices, servers, and networking resources are supplied to the clients who request them.
Alternatively, Software-as-a-Service (SaaS) offers software applications over the Internet to clients. Lastly, Platform-as-a-Service (PaaS), provides environments for development, testing, and deployments:
2.3. Types of Cloud Computing
The three main variants of cloud computing are public cloud, private cloud, and hybrid cloud models. As the name suggests, the public cloud is available over the Internet to any user. Private cloud on the other hand is tailored for clients who require greater control of the services they use on the cloud. While the hybrid cloud is a model that adopts both public and private cloud models. Users can use services in the public cloud and store data in the private cloud.
3. What Is Distributed Computing?
In contrast to cloud computing, distributed computing emerged in the 1970s with the emergence of LAN and Ethernet technology. Distributed computing refers to the interconnection of computer systems over a network, to share data, resources and accomplish computing tasks:
In distributed computing, several autonomous devices are connected over a network. Furthermore, these devices usually communicate and coordinate their activities through message passing.
The World Wide Web (WWW) is an excellent example of a distributed system. In WWW, many different servers and computing devices located all over the world are interconnected to provide connectivity to its users.
3.1. Characteristics of Distributed Computing
A distributed computing system is generally characterized by the following properties.
Firstly scalability ensures that the system can expand to accommodate more users when needed. Additionally, fault tolerance guarantees that the failure of a single node does not affect the operation of the entire system.
Resource sharing in distributed computing ensures that resources are shared amongst several different components. Furthermore, transparency allows the entire system to present itself as a single unit, concealing the fact that its resources are physically separate and located in multiple components.
3.2. Components of Distributed Computing
The three essential components of any distributed computing system; are primary system controller, system data store, and a database. The primary system controller is responsible for managing and controlling the processes and resources of the distributed system. On the other hand, the system data store is responsible for storing all shared data.
Additionally, the database is the overall storage center for the entire system. Here, we store tracking, process control, and auditing information.
3.3. Types of Distributed Computing
The different types of distributed computing adopt the basic properties of distributed computing. For instance, distributed information systems encompass several components that exist in different devices, usually located at different geographical locations. Distributed power systems.
Additionally, grid computing is another type of distributed computing where computing devices are grouped in different locations to solve tasks. Grid computing leverage the computing power of several devices to provide high performance. One other variant of distributed computing is found in distributed pervasive systems. These systems adopt the principles of ubiquitous computing to provide computing power anywhere at any time.
4. Differences
The major differences in the cloud and distributed computing can be summed up this way:
Property
Cloud Computing
Distributed Computing
Function
Provision of computing services over the Internet
Interconnection of devices over a network to share resources and accomplish a task.
Types
Private, public and hybrid cloud models
Distributed Systems, Distributed Pervasive Systems, Distributed Information systems, and Grid Computing
Characteristics
Measured services, rapid elasticity, and on demand self-service
Fault tolerance, resource sharing, scalability, and transparency
Components
IaaS, PaaS, SaaS
System controller, database and system store
5. Conclusion
In this tutorial, we’ve reviewed the differences between cloud computing and distributed. Firstly, we defined cloud computing, detailed some characteristics, and reviewed the different types of cloud computing. Secondly, we defined distributed computing and detailed the characteristics of distributed computing.
Lastly, we summarized the major differences between cloud and distributed computing models.