Estratto del documento

2020/2021

SERVERLESS COMPUTING FOR IOT

APPUNTI

CORSO LAUREA MAGISTRALE – CLOUD COMPUTING 1

Sommario

1. INTRODUZIONE ......................................................................................................................................... 3

2. CLOUD COMPUTING ................................................................................................................................. 4

3. AMAZON WEB SERVICES .......................................................................................................................... 7

3.1. Infrastruttura .................................................................................................................................... 7

3.1.1. Access to services ...................................................................................................................... 7

3.1.2. Computing ................................................................................................................................. 7

3.1.3. Storage/DB ................................................................................................................................ 7

3.1.4. Networking ................................................................................................................................ 8

3.1.5. Developer Tools ........................................................................................................................ 8

3.1.6. Migration ................................................................................................................................... 8

3.1.7. Management ............................................................................................................................. 8

3.1.8. Security ...................................................................................................................................... 8

3.1.9. Analitycs .................................................................................................................................... 8

3.1.10. AI ................................................................................................................................................ 8

3.1.11. Mobile ....................................................................................................................................... 8

3.1.12. IoT .............................................................................................................................................. 8

3.2. Microservizi ....................................................................................................................................... 9

4. INTERNET OF THINGS .............................................................................................................................. 10

4.1. Architecture .................................................................................................................................... 10

4.2. Resources and data ......................................................................................................................... 10

4.3. Fog Computing ................................................................................................................................ 11

4.4. MQTT ............................................................................................................................................... 11

5. VIRTUALIZZAZIONE ................................................................................................................................. 12

5.1. Virtualization ................................................................................................................................... 12

5.3. Container-based .............................................................................................................................. 12

5.4. Docker ............................................................................................................................................. 13

5.5. DevOps ............................................................................................................................................ 13

6. SERVERLESS COMPUTING ....................................................................................................................... 14

2

1. INTRODUZIONE

The evolution over the past 30 years is moving from HPC to HTC because the number of high demand

concurrent Internet users is growing rapidly.

High-performance computing (HPC): is a paradigm which aims to raw speed performance, also

measured by floating-point sped. They are mainly used for scientific, engineering and research

reasons, but are not suitable for today’s demand

High-throughput computing (HTC): is a paradigm which pays more attention to high-flux

computing, where the main applications are Internet searches and web services by millions of users

simultaneously. So, the performance goal is now high throughput (number of tasks completed per

unit of time)

In the years different computing paradigms have born:

 Centralized computing: is a paradigm where all resources are centralized in one physical

system. So, all resources (processors, memory and storage) are tightly coupled and fully

shared in one integrated OS

 Parallel computing: is a paradigm where all processors are either tightly coupled with a

centralized shared memory or instead loosely coupled with a distributed memory

 Distributed computing: is a paradigm composed of multiple autonomous computers (each

with its own private memory) that communicate through a computer network

 Cloud Computing: is an Internet cloud of resources which can be either a centralized or a

distributed system (datacenter), which can use a parallel, a distributed or both types of

computation

Degrees of parallelism:

 Bit-level parallelism = is based on incrementing the processor word size, reducing the

number of instructions required to perform an operation on variables whose sizes are

greater than the word size (4, 8, 16, 32, 64 bit)

 Instruction-level parallelism = the processor executes multiple instructions simultaneously

with technique such as pipelining or multithreading

 Data-level parallelism = the same task is executed on distributed data across processors

 Task-level parallelism = different tasks are executed on the same data

 Job-level parallelism = different independent jobs are executed across process

Any new technology may go through a hype cycle called Gartner hype cycle composed by 5 phases

which describes its expectations:

1. Technology Trigger = a new potential technology arrives and some early proofs-of-concept

appear

2. Peak of inflated expectations = the early publicity produces a high number of expectations

3. Period of disillusionment = when implementations start to fail and the interest starts to get

lower and lower

4. Period of enlightenment = more examples on how the new technology can benefit

enterprises arrive and become more widely understood

5. Period of productivity = the mainstream adoption starts to take off, its market will grow up

3

System models for distributed computing:

 Clusters = consists of interconnected stand-alone computers (loosely coupled, with their

own OS) which cooperate as a single integrated system thanks to a high-bandwidth

interconnection network

 Grid Computing = is a bigger infrastructure that couples computers and softwares or

middlewares. It is composed by workstations, servers, clusters and supercomputers, but it

can be accessed with personal computers, laptops and PDAs (it has a static resources

allocation while cloud has dynamic elastic allocation)

 P2P systems = it is a system where every node acts both as a client and as a server, providing

part of its resources to the system. So, there is no master nodes or any central coordination

and the nodes are free to leave or join when they want. We can define two networks in it:

the physical network (the actual physical interconnection of the devices) and the overlay

network (a virtual network based on how the nodes communicate with each other)

Programming models for distributed computing: MPI, mapreduce, hadoop

The quality of services in distributed systems are evaluated based on different metrics (also design

goals):

 Performance metrics = we have to think in a broader sense (senso più ampio), so the system

throughput is measured in MIPS, Tflops or TPS. Others are job response time and network

latency

 Scalability metrics = we want good scalable performance in different dimensions: size (more

resources), software (upgrading OS, compilers, adding libraries) and application (matching

the problem size with the resources size), Technology scalability is when the system can be

adapted to changes in construction technologies, while the time scalability refers to the

scalability of generation, for example when moving to next generation processors, we must

considerate the impact on the motherboard, the space scalability is related to packaging e

to energy concerns, heterogeneity refers to the use of hardware or software components

from different vendors. Scalability and OS images scalable performance they are often

estimated respect to the multiplicy of OS images in a distributed system.

 System Availability = we want a system that has a long mean time to failure and a short

mean time to repair. Un consiglio è quello di progettare un sistema senza un singol point of

failure (qualsiasi guasto hardware o software che tirerà giù l'intero sistema), adding

hardware redundancy, increasing component re

Anteprima
Vedrai una selezione di 4 pagine su 14
Serverless Computing for IoT Pag. 1 Serverless Computing for IoT Pag. 2
Anteprima di 4 pagg. su 14.
Scarica il documento per vederlo tutto.
Serverless Computing for IoT Pag. 6
Anteprima di 4 pagg. su 14.
Scarica il documento per vederlo tutto.
Serverless Computing for IoT Pag. 11
1 su 14
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher marsan94 di informazioni apprese con la frequenza delle lezioni di Serverless Computing for IoT e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Salerno o del prof Scarano Vittorio.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community