You are on page 1of 31

Cloud computing, fog

computing and big data


Integration of IoT with cloud computing and big data

1
Cloud Computing
The on-demand distribution of IT resources over
the Internet with pay-as-you-go pricing is known
as cloud computing.

Rather than purchasing, operating, and


maintaining physical data centers and servers,
you can use a cloud provider like Amazon Web
Services to get technology services like
processing power, storage, and databases on
an as-needed basis (AWS).

2
Who is using cloud
computing?

Data backup, disaster recovery, email,


virtual desktops, software
development and testing, big data
analytics, and customer-facing web
apps are just a few of the use cases
that organizations of all types, sizes,
and industries are embracing the
cloud for.

3
Benefits of Cloud Computing

1. Trade fixed expense for variable expense


2. Benefit from massive economies of scale
3. Stop guessing capacity
4. Increase speed and agility
5. Stop spending money running and maintaining data centers
6. Go global in minutes

4
Types of Cloud Computing
● Infrastructure as a Service (IaaS)
● Platform as a Service (PaaS)
● Software as a Service (SaaS)

5
Integration of IoT with cloud
computing and big data
Hospital localization system

6
Overview

The technology attempts to improve overall hospital management efficiency by


increasing user comfort and optimizing system performance based on the number
of people present and their flow through the hospital.

This solution is perfect for hospitals to adapt management of existing buildings to


reduce management costs, reduce energy consumption, improve quality of life,
improve safety, and simplify maintenance.

7
Solution Architecture

8
AWS cloud services used
● S3
● MongoDB Atlas
● DynamoDB
● SQS
● SES
● ECR
● EKS
● Cognito

9
Ingestion

Implements the data tidying logic for data (position and plants) received from the
IoT devices

10
Digestion

Splits data in function of their types storing them into the Plants Data repository
and into the Position Data repository; moreover precalculates some KPIs

11
KPI Calculation

Implements the logic for computing the KPIs and the DSS parameters needed by
the DSS-Calculation for the evaluation of the DSS rule

12
KPI Calculation ML

Implements the logic for computing the Machine-Learning based KPIs and
computes the additional DSS parameters based on the latter

13
DSS Calculation

Evaluates the DSS rules on the DSS parameters triggering the mail/dashboard
notifications

14
Dashboard

Implements and exposes the web services consumed by the web application for:
● managing the buildings structure (i.e. building data, floors, rooms) and the
assets (e.g. motors, equipments, etc...);
● managing the users and their privileges;
● producing the data models for the dashboards construction (e.g. histograms,
line charts, radial, etc...

14
Base concept

The base concept on which the architecture is based is the STS (Sample
Timestamp).

The STS divides the time into sixty seconds size sampling periods and, for each of
them, a queue is defined (STSi Queue); the latter will contain the tided data
frames that lie into the STS.

16
What is fog computing?
Fog computing is a decentralized computing infrastructure in which data, compute, storage and applications are
located somewhere between the data source and the cloud. The fog metaphor comes from the meteorological term for a
cloud close to the ground, just as fog concentrates on the edge of the network.

How does fog computing work?


Fog networking complements -- doesn't replace -- cloud computing; fogging enables short-term analytics at the
edge, while the cloud performs resource-intensive, longer-term analytics. Although edge devices and sensors are where
data is generated and collected, they sometimes don't have the compute and storage resources to perform advanced
analytics and machine learning tasks. Though cloud servers have the power to do this, they are often too far away to
process the data and respond in a timely manner.
How and why is fog computing used?
There are any number of potential use cases for fog computing. One increasingly common use case for fog
computing is traffic control. Because sensors -- such as those used to detect traffic -- are often connected to cellular
networks, cities sometimes deploy computing resources near the cell tower. These computing capabilities enable real-
time analytics of traffic data, thereby enabling traffic signals to respond in real time to changing conditions.

Some cities are considering how an autonomous vehicle might operate with the same computing resources used to
control traffic lights. Such a vehicle might, for example, function as an edge device and use its own computing capabilities
to relay real-time data to the system that ingests traffic data from other sources. The underlying computing platform can
then use this data to operate traffic signals more effectively.
Basic Components of Fog Computing
There are multiple ways of implementing a
fog computing system. The common
components across these architectures
are explained below.
1.Physical & virtual nodes (end devices)
End devices serve as the points of contact to the real world, be it application servers, edge routers, end devices such as
mobile phones and smartwatches, or sensors. These devices are data generators and can span a large spectrum of technology.
This means they may have varying storage and processing capacities and different underlying software and hardware.

2. Fog nodes
Fog nodes are independent devices that pick up the generated information. Fog nodes fall under three categories: fog
devices, fog servers, and gateways. These devices store necessary data while fog servers also compute this data to decide the
course of action. Fog devices are usually linked to fog servers. Fog gateways redirect the information between the various fog
devices and servers. This layer is important because it governs the speed of processing and the flow of information. Setting up
fog nodes requires knowledge of varied hardware configurations, the devices they directly control, and network connectivity.

3. Monitoring services
Monitoring services usually include application programming interfaces (APIs) that keep track of the system’s performance
and resource availability. Monitoring systems ensure that all end devices and fog nodes are up and communication isn’t stalled.
Sometimes, waiting for a node to free up may be more expensive than hitting the cloud server. The monitor takes care of such
scenarios. Monitors can be used to audit the current system and predict future resource requirements based on usage.
4. Data processors
Data processors are programs that run on fog nodes. They filter, trim, and sometimes even reconstruct faulty data that flows from
end devices. Data processors are in charge of deciding what to do with the data — whether it should be stored locally on a fog server or sent
for long-term storage in the cloud. Information from varied sources is homogenized for easy transportation and communication by these
processors.

This is done by exposing a uniform and programmable interface to the other components in the system. Some processors are intelligent
enough to fill the information based on historical data if one or more sensors fail. This prevents any kind of application failure.

5. Resource manager
Fog computing consists of independent nodes that must work in a synchronized manner. The resource manager allocates and
deallocates resources to various nodes and schedules data transfer between nodes and the cloud. It also takes care of data backup,
ensuring zero data loss.

Since fog components take up some of the SLA commitments of the cloud, high availability is a must. The resource manager works with the
monitor to determine when and where the demand is high. This ensures that there is no redundancy of data as well as fog servers.

6. Security tools
Since fog components directly interact with raw data sources, security must be built into the system even at the ground level.
Encryption is a must since all communication tends to happen over wireless networks. End users directly ask the fog nodes for data in some
cases. As such, user and access management is part of the security efforts in fog computing.

7. Applications
Applications provide actual services to end-users. They use the data provided by the fog computing system to provide quality service
while ensuring cost-effectiveness. It is important to note that these components must be governed by an abstraction layer that exposes a
common interface and a common set of protocols for communication. This is usually achieved using web services such as APIs.
What are the benefits of fog computing?
Like any other technology, fog computing has its pros and cons. Some of the advantages to fog computing include the following:

•Bandwidth conservation. Fog computing reduces the volume of data that is sent to the cloud, thereby reducing bandwidth consumption and
related costs.

•Improved response time. Because the initial data processing occurs near the data, latency is reduced, and overall responsiveness is
improved. The goal is to provide millisecond-level responsiveness, enabling data to be processed in near-real time.

•Network-agnostic. Although fog computing generally places compute resources at the LAN level -- as opposed to the device level, which is the
case with edge computing -- the network could be considered part of the fog computing architecture. At the same time, though, fog computing is
network-agnostic in the sense that the network can be wired, Wi-Fi or even 5G.

What are the disadvantages of fog computing?


Of course, fog computing also has its disadvantages, some of which include the following:

•Physical location. Because fog computing is tied to a physical location, it undermines some of the "anytime/anywhere" benefits associated
with cloud computing.

•Potential security issues. Under the right circumstances, fog computing can be subject to security issues, such as Internet Protocol (IP)
address spoofing or man in the middle (MitM) attacks.

•Startup costs. Fog computing is a solution that utilizes both edge and cloud resources, which means that there are associated hardware costs.

•Ambiguous concept. Even though fog computing has been around for several years, there is still some ambiguity around the definition of fog
computing with various vendors defining fog computing differently.
Examples of Fog Computing
The use of automated guided vehicles (AGV) on industrial shop floors provide an excellent scenario that explains how fog
computing functions. In this scenario, a real-time geolocation application using MQTT will provide the edge compute needed to track
the AGVs movement across the shop floor.

The geolocation app works by querying data from the sensors attached to the AGV as it navigates an area. The sensor maintains
a connection with a broker and the broker is notified in intervals about the location of the AGV. The notification message is sent via
periodic MQTT messages as the AGV continues its movement. The regular updates from the AGV can then be used for diverse
purposes including tracking the location of inventories or materials being transported across specified zones.

Thus, the option of processing data close to the edge decreases latency and brings up diverse use cases where fog computing
can be used to manage resources. One such example is its application in energy management. Here, a real-time energy
consumption application deployed across multiple devices can track the individual energy consumption rate of each device.

Sensors within the device periodically notify the broker about the amount of energy being consumed via periodic MQTT
messages. Once a device is consuming excessive energy, the notification triggers the app to offload some of the overloaded
device’s tasks to other devices consuming less energy.
Fog computing vs. Cloud computing
Cloud computing: The delivery of on-demand computing services is known as cloud computing. We may use
applications to store and process power over the Internet. Without owning any computing infrastructure or data center,
anyone can rent access to anything from applications to storage from a cloud service provider.
It is a pay-as-you-go service.
By using cloud computing services and paying for what we use, we can avoid the complexity of owning and maintaining
infrastructure.
Cloud computing service providers can benefit from significant economies of scale by providing similar services to
customers.

Fog computing is a decentralized computing infrastructure or process in which computing resources are located
between a data source and a cloud or another data center. Fog computing is a paradigm that provides services to user
requests on edge networks.
Devices at the fog layer typically perform networking-related operations such as routers, gateways, bridges, and hubs.
The researchers envision these devices to perform both computational and networking tasks simultaneously.
Although these tools are resource-constrained compared to cloud servers, the geological spread and decentralized
nature help provide reliable services with coverage over a wide area. Fog is the physical location of computing devices
much closer to users than cloud servers.
Difference between Fog Computing and Cloud Computing:
Information:
In fog computing, data is received from IoT devices using any protocol.
Cloud computing receives and summarizes data from different fog nodes.

Structure:
Fog has a decentralized architecture where information is located on different nodes at the source closest to the user.
There are many centralized data centers in the Cloud, making it difficult for users to access information on the networking area at
their nearest source.

Protection:
Fog is a more secure system with different protocols and standards, which minimizes the chances of it collapsing during networking.
As the Cloud operates on the Internet, it is more likely to collapse in case of unknown network connections.

Component:
Fog has some additional features in addition to the features provided by the components of the Cloud that enhance its storage and
performance at the end gateway.
Cloud has different parts such as frontend platform (e.g., mobile device), backend platform (storage and servers), cloud delivery, and
network (Internet, intranet, intercloud).
Accountability:
Here, the system's response time is relatively higher compared to the Cloud as fogging separates the data and then sends it to the Cloud.

Cloud service does not provide any isolation in the data while transmitting the data at the gate, increasing the load and thus making the system
less responsive.

Flexibility in Network Bandwidth:


Large amounts of data are transferred from hundreds or thousands of edge devices to the Cloud, requiring fog-scale processing and storage.

For example, commercial jets generate 10 TB for every 30 minutes of flight. Fog computing sends selected data to the cloud for historical
analysis and long-term storage.

Wide geographic reach:


Fog computing provides better quality of services by processing data from devices that are also deployed in areas with high network density.

On the other hand, Cloud servers communicate only with IP and not with the endless other protocols used by IoT devices.

Real-time analysis:
Fog computing analyzes the most time-sensitive data and operates on the data in less than a second, whereas cloud computing does not
provide round-the-clock technical support.

Operating Expenses:
The license fee and on-premises maintenance for cloud computing are lower than fog computing. Companies have to buy edge device routers.
Conclusion
The demand for information is increasing the overall networking channels. And to deal with this, services
like fog computing and cloud computing are used to quickly manage and disseminate data to the end of the
users.
However, fog computing is a more viable option for managing high-level security patches and minimizing
bandwidth issues. Fog computing allows us to locate data on each node on local resources, thus making
data analysis more accessible.
Thank you for your attention!
References

1. Overview of Amazon Web Services, Amazon Web Services, 2022


2. Cloud computing - statistics on the use by enterprises, Eurostat, 2022
3. What is Fog Computing? - Definition from IoTAgenda, IoT Agenda, 2022
4. What is Fog Computing? Definition and FAQs | HEAVY.AI, Heavy.ai, 2022
5. What Is Fog Computing? Components, Examples, and Best Practices |
Toolbox, Toolbox, 2021
6. Brandon Butler, What is fog computing? Connecting the cloud to things,
Network World, 2022

17

You might also like