Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and...

30
Mobile and Cloud Computing Seminar MTAT.03.280 Spring 2019 Satish Srirama [email protected]

Transcript of Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and...

Page 1: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Mobile and Cloud Computing Seminar

MTAT.03.280

Spring 2019

Satish [email protected]

Page 2: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Course Purpose

• To have a platform to discuss the research developments of Mobile & Cloud Lab

• Introduce students to newest concepts and advances in the respective research fields

• To give students a feel of theses topics available from Mobile & Cloud Lab

• Preliminary platform for the students to understand their prospective Master/Bachelor theses better

• Help students in preparing proper technical reports

• Help students in making proper presentations

2/12/2019 Satish Srirama 2/31

Page 3: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

To pass the course

• Write a report on a chosen topic

– At least 6 pages of ACM double column format

• Peer review the work of your colleagues

• Give an oral presentation on the topic

• Demonstrate their work

• Participate actively in all the seminars

2/12/2019 Satish Srirama 3/31

Page 4: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Course grading

• We will have two intermediate presentations and a final presentation

• We will grade all three presentations, Peer Review and Final Report

– We set 3 ratings: Good (+1), Neutral (0) and Bad (-1)

• To pass the course one should score >= 2 in total

• Intermediate and final Presentations are graded for Presentation, Progress and Punctuality

2/12/2019 4/31Satish Srirama

Page 5: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Course schedule

• Tuesday 16.15 - 18.00, Ülikooli 17 - 218

• Schedule of the sessions

https://courses.cs.ut.ee/2019/mcsem/spring

2/12/2019 Satish Srirama 5/31

Page 6: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Related Courses

• MTAT.08.027 Basics of Cloud Computing (3 ECTS)

– Wednesday 12:15 – 14:00 (J. Liivi 2 - 405)

• LTAT.06.008 - Cloud Computing (6 ECTS)

– Spring 2020

• LTAT.06.009 - Mobile Computing and Internet of Things (6 ECTS)

– Fall 2019

2/12/2019 Satish Srirama 6/38

Page 7: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

http://mc.cs.ut.ee

Satish Srirama 7/31

Page 8: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

RESEARCH AT MOBILE & CLOUD LAB

2/12/2019 Satish Srirama 8

Page 9: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Cloud Computing

• Computing as a utility– Utility services e.g. water, electricity, gas etc– Consumers pay based on their usage

• Cloud Computing characteristics – Illusion of infinite resources– No up-front cost– Fine-grained billing (e.g. hourly)

• Gartner: “Cloud computing is a style of computing where massively scalable IT-related capabilities are provided ‘as a service’ across the Internet to multiple external customers”

2/12/2019 Satish Srirama 9/31

Page 10: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Cloud based Research

• Dynamic deployment of applications on multiple clouds – Standardization efforts from CloudML[REMICS EU FP7; Srirama et al, Cloud 2016; Viil and Srirama, JSC 2018]

• Auto-scaling & Resource provisioning– Taking advantage of cloud heterogeneity– Cloud cost models of fine-grained billing (e.g. hourly) [Srirama and Ostovar,

CloudCom 2014; IJCC 2018]

Configuration cost of new instances

Cost of new instances

Cost of killed instances

Cost of retained instances

Page 11: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Directions for Future

Generation Cloud

Computing

• Virtualizing GPUs, and non-traditional (e.g. neuromorphic) architectures

• Approximate computing: performance, cost, and accuracy trade-offs

• Programming abstractions, models, and languages for scalable elastic computing

• Decentralised scalable distributed algorithms for edge, hybrid, inter

Clouds

• Multi-tenancy in mobile cloud• Incentive models for Mobile Clouds

and independent Fog providers• Containers in Fog/Edge computing• QoS aware application deployment

on Fog nodes

• Edge analytics for real-time stream data processing

•C

on

tin

uo

us

de

live

ry f

or

Edge

, Big

d

ata,

an

d s

erv

erl

ess

co

mp

uti

ng

•M

ult

i-p

arad

igm

an

d c

lou

d-n

ativ

e

de

sign

pat

tern

s •

Ite

rati

ve C

lou

d a

pp

licat

ion

e

nh

ance

me

nt

A Manifesto for Future Generation Cloud Computing: Research Directions for the Next Decade

[Buyya and Srirama et al, ACM CSUR 2019]

11/192/12/2019

Page 12: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Further Cloud related topics

• Resource management and scheduling in cloud– Static VM provisioning policies

• Allocate a fixed set of physical resources to VMs using bin-packing algorithms

– Dynamic policies• Capable of handling load variations through live VM migrations and other load balancing techniques

• Serverless computing– Function as a service– EU H2020 RADON (Rational decomposition and orchestration for serverless computing)

• Creating a DevOps framework to create and manage microservices-based applications• Tools that facilitate in designing and orchestrating data pipeline applications that involve serverless

entities• OASIS - Topology and Orchestration Specification for Cloud Applications specification

• Sustainability in clouds– Dynamic allocation and reallocation of resources– Models for green clouds

2/12/2019 Satish Srirama

[email protected]

12/38

Page 13: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Further Cloud related topics -continued

• Multi-Cloud and cloud interoperability solutions– TOSCA and implementations such as OpenTosca, xOpera and

Cloudify

• Software defined cloud computing– Software defined networking– Information centric networking (ICN)

• Blockchains in cloud computing– Distributed immutable ledger deployed in a decentralized

network – Relies on cryptography to meet security constraints– Where the advances in blockchain will assist cloud computing?

2/12/2019 Satish Srirama

[email protected]

13/38

Page 14: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Big data analytics on cloud

• QoS guarantees of streaming data

– Dynamic allocation and reallocation of resources

• Data pipelines on the cloud

– AWS Data pipelines

– Apache nifi

2/12/2019 Satish Srirama

{Srirama, jakovits}@ut.ee

14/38

Page 15: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Mobile Application development

• Mobile is the 7th mass media– 6.8 bn subscriptions / Global population of 7.2 bn

• Some popular application domains– Location-based services (LBS), mobile social

networking, mobile commerce, etc.

• Multiple languages and platforms to choose from– Android, Apple iOS, Windows Phone 7 etc.

• Real time system development– Mobile Apps using sensors– Mobiles in biometry

2/12/2019 Satish Srirama 15/31

Page 16: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

The devices we use

2/12/2019

http://mc.cs.ut.ee

Satish Srirama 16/16

Page 17: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Mobile Web Services

• Provisioning of services from the smart phones

• Invocation of web services from smart phones

• Mobile web service discovery

• Addressing mobiles in 3G/4G/5G networks

• Push notification mechanisms

• Mobile positioning

– Indoor and Outdoor

2/12/2019

{srirama, chang, liyanage}@ut.ee, Satish Srirama 17/38

Page 18: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Mobile Cloud Computing

• One can do interesting things on mobiles directly– Today’s mobiles are far more capable

– We can even provide services from smart phones

• However, some applications need to offload certain activities to servers– Processing sensor data

• Resource-intensive processing on the cloud [Flores & Srirama, JSS 2014; Flores et al, IEEE Communications 2015]

– To enrich the functionality of mobile applications

– Task delegation and code offloading

2/12/2019 Satish Srirama 18/38

Page 19: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Internet of Things (IoT)

• “The Internet of Things allows people and

things to be connected Anytime, Anyplace,

with Anything and Anyone, ideally using Any

path/network and Any service.” [European

Research Cluster on IoT]

• More connected devices than people

• Cisco believes the market size will be $19 trillion by 2025

2/12/2019 Satish Srirama 19

{srirama, chang, liyanage}@ut.ee

Page 20: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

IoT - Scenarios

• Environment Protection

• Smart Home

• Smart Healthcare

• Smart Agriculture

[Kip Compton][Perera et al, TETT 2014]

2/12/2019 Satish Srirama 20[http://www.libelium.com/improving-banana-crops-production-and-agricultural-sustainability-in-colombia-using-sensor-networks/ ]

Page 21: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Internet of Things – Challenges

Sensors Tags Mobile Things

Appliances & Facilities

How to interactwith ‘things’

directly?

How to provide energy efficient

services?

How do we communicate automatically?

[Chang et al, ICWS 2015]

[Chang et al, SCC 2015; Liyanage et al, MS 2015]

2/12/2019 Satish Srirama 21

Page 22: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Cloud-based IoT

Sensing and smart devices

Connectivity nodes &Embedded processing

Remote Cloud-based processing

Proxy Storage

Processing

2/12/2019 Satish Srirama 22

Page 23: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Research focus in IoT

• We have established IoT and Smart Solutions Lab with Telia company support

• Interesting topics– Discovery of IoT devices

– Working with IoT based devices

– Study of available IoT platforms• Amazon IoT

• Open IoT

• OpenHAB

• IoT-based smart cities

2/12/2019 Satish Srirama

{srirama, chang, jaks}@ut.ee

23/38

Page 24: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

IoT Data Processing on Cloud

• Enormous amounts of unstructured data– In Zetabytes (1021 bytes) by 2020 [TelecomEngine]

– Has to be properly stored, analysed and interpreted and presented

• Big data acquisition and analytics– Is MapReduce sufficient?

• MapReduce is not good for iterative algorithms [Srirama et al, FGCS 2012]

– IoT mostly deals with streaming data• Message queues such as Apache Kafka can be used to buffer and feed

the data into stream processing systems such as Apache Storm• Apache Spark streaming

• Edge analytics

2/12/2019 Satish Srirama

{srirama, jakovits, alo.peets}@ut.ee

24/38

Page 25: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Issues with Cloud-centric IoT

• Latency issues for applications with sub-second response requirements

• Certain scenarios do not let the data move to cloud• Fog computing [Chang et al, AINA 2017; Mass et al, SCC 2016]

– Processing across all the layers, including network switches/routers

• Mist computing – Processing at the edge devices– Dynamic provisioning of a platform for process execution

[Liyanage et al, PDCAT 2016]

• E.g. Android-ported Activiti BPM engine (http://activiti.org)

• Edge process management

2/12/2019 25Satish Srirama

Page 26: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Ongoing Research in Fog Computing

• Mobility, task migration, discovery, scalability and containerisation

• QoE-aware application placement across Fog topology [Mahmud et al, JPDC 2018]

• Indie Fog [Chang et al, IEEE Computer 2017]

– System architecture for enabling Fog computing with customer premise equipment

2/12/2019 26Satish Srirama

[Soo et al, IJMCMC 2017]

QoE – Quality of Experience {srirama, chang, jaks, liyanage}@ut.ee

Page 27: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Research Roadmap – IoT & Fog Computing

2/12/2019 Satish Srirama 27

Cloud

Core Network

Gateways

End points

Edge Nodes

Distributed data processing on the CloudE.g. MapReduce, Spark

Distributed data processing across the Cloud and Fog layersE.g. Personalized data, privacy etc.

Fog topology management and scheduling the tasksE.g. tasks run across the fog topology such as stream data processing, smart streetlights etc.

Edge analyticsE.g. filter, error detection, consolidation etc.

Intelligent sensorsE.g. vehicular networks

Fog

{srirama, chang, jaks, alo.peets}@ut.ee

Page 28: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

WE ALWAYS WELCOME NEW IDEAS!

email: [email protected]

?

2/12/2019

?

Satish Srirama 28

Page 29: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

Seminar topics

• Listed at https://courses.cs.ut.ee/2019/mcsem/spring/Main/Topics

• Session 2 (19.02)– Second meeting to finalize the topics

• Selection of topics should finish by Fri., 22nd Feb 2019– Email [email protected], and your topic supervisor

• Session 3 (26.02) - Presentation by students about their topics– 5 min per person - Backed by slides– A page of abstract about the selected project

2/12/2019 Satish Srirama 29/31

Page 30: Mobile and Cloud Computing Seminar...data processing • Continuous delivery for Edge, Big data, and serverless computing • Multi-paradigm and cloud-native design patterns • Iterative

THANK YOU

[email protected]

2/14/2014 Satish Srirama 30