cloud computing - jyväskylän yliopisto · lecture objectives identify different kinds of cloud...

26
Cloud Computing Jussi Talaskivi Information Management Centre University of Jyväskylä

Upload: others

Post on 01-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Cloud Computing

Jussi TalaskiviInformation Management Centre

University of Jyväskylä

Page 2: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

About the presenterInformation Systems Analyst Scrum master Web Content Management System (Plone)

www.jyu.fiKoppaMoniviestin

Figuring out: Data and application integrationIdentity ManagementCloud computing

Page 3: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Lecture objectivesIdentify different kinds of cloud computing modelsUnderstand the basic economics behind cloud computing servicesHave a closer look on Google App EngineKnow a little bit about security issues in the cloud

Page 4: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

What is Cloud Computing?

Page 5: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

What is Cloud Computing?Defining Infrastructure Clouds, Randy Bias (2009)

http://cloudscaling.com/blog/cloud-computing/defining-infrastructure-clouds

Page 6: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

What is Cloud Computing?

SPI 3 layer model:Software as a Service

Out of the box software without the boxPlatform as a Service

Application frameworksAPIs

Infrastructure as a Service Virtual or physical hardware

Page 7: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

What is Cloud Computing?Defining the Cloud Computing Framework, David Linthicum (2009)

Storage-as-a-ServiceDatabase-as-a-ServiceInformation-as-a-ServiceProcess-as-a-ServiceApplication-as-a-ServicePlatform-as-a-ServiceIntegration-as-a-ServiceSecurity-as-a-ServiceManagement/Governance-as-a-ServiceTesting-as-a-Service

http://cloudcomputing.sys-con.com/node/811519

Page 8: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

What is Cloud Computing?

Page 9: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Cloud Computing Ontology (1/2)Toward a Unified Ontology of Cloud Computing, Lamia Youseff, Maria Butrico, Dilma Da Silva (2008):http://www.cs.ucsb.edu/~lyouseff/CCOntology/CloudOntology.pdf

Presentation:http://www.collab-ogce.org/gce08/images/7/76/LamiaYouseff.pdf

Page 10: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Cloud Computing Ontology (2/2)

Page 11: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Economics of cloud computing (1/2)Traditional IT cost structure

Page 12: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Economics of cloud computing (2/2)Cloud computing cost structure

Page 13: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

SecuritySeven cloud computing risks by Gardner (2008):

1. Privileged user accessThey are not your admins looking at the data

2. Regulatory complianceYou are responsible for your data. Not the service provider.

3. Data locationDo you know where your data is?Safe harbor

4. Data segregationHow is your data isolated from other clients in the cloud?Encryption

5. RecoveryHow do you backup and later recover your data in a disaster?

6. Investigative supportWant to see your log files?

7. Long-term viability What happens when the cloud goes poof?

Page 14: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

About the data: ACID, CAP, BASEACID

Atomicity - A transaction is all or nothingConsistency - Only valid data is written to the databaseIsolation - Pretend all transactions are happening serially and the data is correctDurability - What you write is what you get

CAPConsistency - Your data is correct all the time. What you write is what you read.Availability - You can read and write and write your data all the timePartition tolerance - If one or more nodes fails the system still works and becomes consistent when the system comes online.

Page 15: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

About the data: ACID, CAP, BASEBASE

Basically Available - system seems to work all the timeSoft state - it doesn't have to be consistent all the timeEventually consistent - becomes consistent at some later time

"Everyone who builds big applications builds them on CAP and BASE: Google, Yahoo, Facebook, Amazon, eBay, etc"

Drop ACID and think about data:http://blip.tv/file/1949416/

Page 16: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Google App EnginePlatform as a ServicePython or Java web programming environment

Closer look by Asko Soukka

Page 17: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

CASE: vuokra-asunnot

"A visual search engine (mashup) for the rental apartments currently

available at the area of Jyväskylä."

Page 18: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

vuokra-asunnot.appspot.com

Page 19: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

CASE: vuokra-asunnot.appspot.com

Runs on Google App Engine (GAE) platform (in Python)

Scrapes data from rental apartment agents' web pages

Is a rich JavaScript application (on SproutCore)

Geocodes new addresses using Google Maps API

Visualizes available addresses using Google Maps API

Stores resolved geolocations on GAE for future use

Page 20: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Google App Engine (GAE)

Provides restricted Python or Java environment

Both open and proprietary libraries; proprietary database

Free SDK; deployment tools and IDE-plugins available

No startup costs, easy to scale, predictable TCO

No naked custom domain support

No custom SSL certificate support

Moderate risk of vendor lock-in

Page 21: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

SproutCore (the client app)

A framework for rich (thick) web applications

Responsive desktop-like GUI (completely asynchronous)

Saves on bandwith and processor time usage

After the GUI has beed downloaded (and cached)...

...only data is transferred between browsers and GAE

Accessibility needs special attention (WCAG 2.0, ARIA )

Alternatives: Cappuccino, GWT (Google ), YUI3 (Yahoo )

Page 22: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have
Page 23: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Amazon Web ServicesOne of the first cloud computing providersVirtualized building blocksElastic Compute Cloud (EC2)SimpleDBSimple Storage Service (S3)CloudFront

Similar to Akamai's CDNSaaS, PaaS, IaaS + kitchen sink

Page 24: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Windows Azure PlatformWindows Azure�

Ability to run Microsoft ASP.NET Web applications or .NET code in the cloudFastCGI support with PHP

Microsoft SQL AzureCloud-based relational database service built on MS SQL Server

AppFabricConnects Windows Servers to cloud services and vice versaData integration toolAccess Control

SaaS, PaaS

Page 25: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

FacebookIs Facebook SaaS?Is Facebook PaaS?Is Facebook IaaS?

Is Facebook IRaaS?Interpersonal Relationship as a Service

Pistelaskuri

Page 26: Cloud computing - Jyväskylän yliopisto · Lecture objectives Identify different kinds of cloud computing models Understand the basic economics behind cloud computing services Have

Questions & Answers