81
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 1 PV213 Enterprise Information Systems in Practice 07 – Architecture of the EIS in the cloud

PV213 Enterprise Information Systems in Practice 0 7 – Architecture of the EIS in the cloud

Embed Size (px)

DESCRIPTION

PV213 Enterprise Information Systems in Practice 0 7 – Architecture of the EIS in the cloud. Cloud Computing motivation. How can my application grow with customers? How can I pay only for what I use?. What is Cloud Computing?. - PowerPoint PPT Presentation

Citation preview

Page 1: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 1

PV213 Enterprise Information Systems in Practice

07 – Architecture of the EIS in the cloud

Page 2: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 2

Page 3: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 3

Page 4: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 4

Cloud Computing motivation

How can myapplication growwith customers?

How can I pay onlyfor what I use?

Page 5: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 5

What is Cloud Computing?

Cloud computing is Internet-based computing, whereby shared resources, software and information are provided to computers and other devices on-demand, like the electricity grid.

Five Attributes of Cloud ComputingService basedScalable and elasticSharedMetered by useUses internet technologies

Page 6: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 6

HistoryGoogle App EngineMicrosoft Azure Platform20081960s

2006Amazon Elastic Compute CloudRackspace CloudTwitter

2002

1999Salesforce.com

Google Search APIAmazon Web Services

First ideas, book The Challengeof the Computer Utility

2007 DropboxHeroku

2010Microsoft Office WebApps

2009Google AppsVMware vCloud Express

2011IBM SmartCloudMicrosoft Office 365

2012

2013SAP HANA Enterprise CloudMicrosoft Azure Pack

Google Compute EngineOracle CloudHP Converged Cloud

1998 Akamai

2004 Facebook

Page 7: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 7

Centralization / decentralization in history

Page 8: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 8

Mainframe versus client-server versus cloud

Page 9: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 9

Cloud Services Stack I

Software as a Service

Platform as a Service

Infrastructure as a Service

Page 10: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 10

Cloud Services Stack II

Virtualization is a basis for all cloud servicesEverything runs on virtualized HW

Infrastructure defines basic available servicesOperating systemSimple services

Platform allows to build applications fastCompatibility!

Application is an only part visible for end usersImportant is the value for end user

Page 11: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 11

Types of cloud platforms

Public cloud“Classical” modelThe same functionality for all

Private cloudUsed only by one organization

Community cloudFunctionality is used by several parties which share the same interest (e.g. area of business)

Hybrid cloudUse of two or more clouds (public, private, community) together as a one platform

Page 12: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 12

Amazon Web Services (AWS)

Amazon is not only a web shop Amazon is a leader in IaaS and PaaS

AWS introduced in 2002Online services for other web sitesAccessing web shop dataEvolved into big amount of services from different areasAvailable worldwideBilled on usageAccessed via HTTP, REST and SOAPAmount of services increase every year

Page 13: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 13

Amazon Web Services against other cloud players

Page 14: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 14

Amazon Web Services – Regions and availability zones I

Available regions (January 2014)

US East – Northern Virginia (Mar 2006)US West – Northern California (Dec 2009)US West – Oregon (Nov 2011)EU – Ireland (Nov 2007)Asia-Pacific – Singapore (Apr 2010)Asia-Pacific – Tokyo (Apr 2011)Asia-Pacific – Sydney (Nov 2012)China – Beijing (coming soon)South America – Sao Paulo (Dec 2011)AWS GovCloud – Special region for US government in Oregon (Aug 2011)

Page 15: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 15

Amazon Web Services – Regions and availability zones II

Availability zonesDistinct locations within one regionAvailability zones in the region are physically separatedEven disasters like flooding or tornados should affect only single availability zoneTransfers between availability zones in the same region are cheap

AWS Edge LocationsContent delivery network for distributing static contentDistributed around the all world (January 2014)

North America – 14 locationsSouth America – 1 locationEurope – 10 locationsAsia – Pacific – 9 locations

Page 16: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 16

Amazon Web Services – Regions and availability zones III

Each region has two or more availability zonesYou put your application to the region which is “nearest” to your customersYou can use more regions (but you have to pay for each)Not all services are available in all regions

Page 17: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 17

Amazon Web Services – Portfolio IComputing

Elastic Compute Cloud (EC2, August 2006)Virtualized OS in Amazon’s infrastructure

Auto Scaling (May 2009)Allows to automatically scale EC2 capacity up or down

Elastic Load Balancing (May 2009)Distributes requests to multiple EC2 instances

WorkSpaces (November 2013)Virtual Desktops in the Cloud

Content DeliveryCloudFront (November 2008)

Content delivery service

Page 18: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 18

Amazon Web Services – Portfolio IIStorage

Simple Storage Service (S3, March 2006)Key-value storage for big objects (images, video, documents, etc.)

Elastic Block Store (EBS, August 2008)Block device mounted by EC2 instances

Import/Export (May 2009)Allows to import/export huge amount of data from/to portable device

Storage Gateway (January 2012)Integrates on-premises IT environments with Cloud storage

Glacier (August 2012)Low cost storage service for data archiving and backup

Page 19: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 19

Amazon Web Services – Portfolio III

DatabaseRelation Database Service (October 2009)

Relational database in the cloud (MySQL, Oracle)SimpleDB (December 2007)

Non-relational data storeDynamoDB (January 2012)

NoSQL databaseElastiCache (August 2011)

In-memory cache in the cloudRedshift

Petabyte-scale data warehouse service

Page 20: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 20

Amazon Web Services – Portfolio IV

Application Services ISimple Queue Service (SQS, July 2006)

Message queue in the cloudSimple Notification Service (SNS, April 2010)

Sends notifications from the cloudSimple Email Service (SES, January 2011)

Scalable e-mail sending serviceSimple Workflow Service (SWF, February 2012)

Workflow service for coordinating application components

Page 21: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 21

Amazon Web Services – Portfolio V

Application Services IICloudSearch (April 2012)

Managed search serviceElastic Transcoder (January 2013)

Easy-to-use scalable media transcodingAppStream (November 2013)

Low-Latency Application Streaming

Page 22: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 22

Amazon Web Services – Portfolio VI

AnalyticsData pipeline (December 2012)

Orchestration Service for Periodic, Data-Driven WorkflowsElastic MapReduce - EMR (April 2009)

Process vast amount of data (Hadoop framework)Kinesys (November 2013)

Real-Time Data Stream Processing

Page 23: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 23

Amazon Web Services – Portfolio VIINetworking

Route 53 (December 2010)Scalable domain name system (DNS)

Virtual Private Cloud (August 2009)Allows to create isolated services in virtual network

Direct Connect (August 2011)Connects your existing private data center with Amazon’s cloud

Payments & BillingFlexible Payments Service (FPS, August 2007)

Payment service for developersDevPay (December 2007)

Simple to use payment and account management service

Page 24: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 24

Amazon Web Services – Portfolio VIII

Deployment and Management IManagement Console (January 2009)

Web-Based User InterfaceIdentity and Access Management (IAM, September 2010)

Securely controls access to services and resourcesCloudWatch (May 2009)

Monitoring of cloud resourcesElastic Beanstalk (January 2011)

Deployment and management toolCloudFormation (February 2011)

Tool for creating templates of related AWS resources

Page 25: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 25

Amazon Web Services – Portfolio IX

Deployment and Management IIOpsWorks (February 2013)

Application management serviceCloudHSM (March 2013)

Hardware-based Key Storage for Regulatory ComplianceCloudTrail (November 2013)

User activity logging

MarketplaceMarketplace (April 2012)

Find software that runs on EC2 and launch with 1-Click

Page 26: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 26

Amazon Web Services – Portfolio X

Web TrafficAlexa Web Information Service (October 2004)

Web statisticsAlexa Top Sites (January 2006)

Top internet sitest statistics

WorkforceMechanical Turk (November 2005)

Manage tasks made by human via cloud

Page 27: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 27

Amazon Web Services – Compute Services IElastic Compute Cloud (EC2) is an infrastructure for running virtual machinesEC2 is a core functionality for all customer specific computationEC2 works as IaaS

You can install everything what you want (licenses!)There exists pre-prepared AMIs (Amazon Machine Images) – virtual machines for “ready to use” (several thousand of AMIs exists in different categories)AMIs are available with following OSes:

Linux: Red Hat, SUSE, CentOS, Ubuntu, Fedora, Gentoo, Debian, …Windows server: 2003 R2, 2008, 2008 R2, 2012Open Solaris

Page 28: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 28

Amazon Web Services – Compute Services II

AMIs also contain pre-prepared middleware or even applicationsDatabases, web servers, application development environments, application servers, video encoding & streaming, …SAP HANA, Oracle JD Edwards, Oracle PeopleSoft, …

Price of AMIs is AMI dependantSome AMIs are free of chargeFor other AMIs you pay per hours virtual machine (instance) is running

You can create your own EC2 instances with your required software!

Page 29: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 29

Amazon Web Services – Compute Services IIIAmazon Elastic Compute Cloud represents core functionality for you appYou deploy your application to given regionFor dynamic behavior use Auto Scaling functionality

You define rules for higher/lower workloadsBased on current statisticsTime scheduled

Good when you have peaks in usageElastic Load Balancing allows to distribute requests to your app

Can increase availability of your applicationWorks together with Auto Scaling

Elastic IP Addresses allows you to have virtual IP addressesPublic IP addresses mapped dynamically to given instance

Page 30: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 30

Amazon Web Services – Compute Services IVYou can monitor instances via CloudWatchAmazon guarantees 99.95% availability for regionBy default instances are not backed-up!

Don’t store your data into the instance. Use e.g.S3 for simple unstructured dataDatabase for structured data (keep scalability in mind)Elastic Block Store (EBS - file system) – can be attached just to one EC2 instance

For storage you have to pay extraIf you run several instances (e.g. in different regions) you pay for each

Prices in different regions are usually differentYou can order on-demand, reserved or spot instance

Page 31: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 31

Amazon Web Services – Compute Services VAmazon EC2 surroundings

Around EC2 are managementservices

Auto scalingElastic load balancingCloudWatchManagement console…

Page 32: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 32

Amazon Web Services – Instance typesYou have to choose hardware on which you want to run,

e.g.Low cost micro instance – 0.615 GiB memory, 1vCPU, EBS only storage, 32 or 64 bitGeneral purpose m3.xlarge instance – 15 GiB memory, 4 vCPUs, 2x40 GiB SSD instance storage, 64 bitCompute optimized c3.2xlarge instance – 15 GiB memory, 8 vCPUs, 2x80 GiB SSD instance storage, 64 bitGPU g2.2xlarge instance – 15 GiB memory, 8 vCPUs, 1x60 SSD memory storage, 64 bitMemory optimized cr1.8xlarge instance - 244 GiB memory, 32 vCPUs, 2x120 GiB SSD instance storage, 64 bitStorage optimized i2.4xlarge instance – 122 GiB memory, 16 vCPUs, 4x800 GiB SSD instance storage, 64 bit

Page 33: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 33

Amazon Web Services – Simple Storage Service (S3) I

Purpose of Simple Storage Service (S3) is to store static unstructured data (pictures, videos, documents, …)Simple key-value storage with possible metadata organized into “buckets”Maximal size of each data (file) is 5 TB, unlimited number of objectsData accessible as http://s3.amazonaws.com/bucket/key (DNS CNAME supported - http://yourdomain/bucket/key)Data stored in regions, they never leave region if you don’t require itData can be versioned (different data with the same key)Supports protocols HTTP and BitTorrent99.999999999% durability, 99.99% availabilityWith Reduced Redundancy Storage (RRS) durability and availability 99.99%

Page 34: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 34

Amazon Web Services – Simple Storage Service (S3) II

With Amazon Glacier you can reduce storage costs (with some restrictions)

Glacier is low-cost storage with long retrieval times (several hours)

“Unexpected” behavior due to distributed natureImmediate read after write can return “not available”Immediate list of bucket content after write can return list without currently written objectImmediate read after re-write can still return “old” dataImmediate read after delete can still return “deleted” data

Some web sites uses S3 for hosting static contentE.g. well known service DropBox is using Amazon S3 for storing data

Page 35: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 35

Amazon Web Services – Database Services I

Relational Database ServiceAllows to easily migrate your existing applicationsSupport for MySQL, Oracle, Microsoft SQL Server or PostgreSQLBy default you are allowed to run up to 40 instances (nut you can ask for more)Size limit per instance is 3TB

SimpleDBNon-relational data store, automatically indexes your dataEach row can have different attributesDomain – item – attribute approachLimit is 10GB per domain, you can have 250 domains by default (but you can ask for more)

Page 36: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 36

Amazon Web Services – Database Services II

SimpleDB (continues)256 attributes per item, attribute length is limited to 1024 bytesConsistency

Eventually consistent reads (default)Consistent reads

Limited transactions (only conditional Put/Delete)Good for lower-scale workloadsOlder technology than DynamoDB

Page 37: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 37

Amazon Web Services – Database Services IIIDynamoDB

NoSQL (non-rational) databaseFast predictable performance, stored all data on SSDNo limits on amount of data, scales automaticallyBy default you can order guaranteed throughput rate up to 10000 reads or writes per second (in exceptional cases you can order higher)Table – item – attribute approachRequires primary key for item, only primary key is indexed

Primary key can be compound (hash and range type primary key)Item size limit is 64kB (sum of all attribute names and values)Not so flexible queriesSupports batch processing

Page 38: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 38

Amazon Web Services – Database Services IV

DynamoDB (continues)Supports scalar data types: number, string, binary

Plus multi-valued types: number set, string set, binary setConsistency

Eventually consistent reads (default, better performance)Consistent reads

Integrates Elastic MapReduceMapReduce is programming model for processing large data

Still in beta phase (in January 2014)

You can run also other databases like IBM DB2, Sybase, etc. in your own instance (they are not officially supported).

Page 39: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 39

Amazon Web Services – Virtual Private Cloud

Connection via VPNIsolated network accessSubnets

Page 40: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 40

Amazon Web Services – Virtual Private Cloud, Security

Page 41: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 41

Amazon Web Services – EC2 and S3 Example

Photo processing example

Page 42: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 42

Amazon Web Services – Pricing I

PricingDifferent for region, service, OS, …Based on usage - you can have AWS account but you don’t need to pay at all if you don’t use Amazon’s servicesUsually calculated per hour or per GBSome services are paid per item or per item and month (e.g. CloudWatch, Export/Import)Hours for EC2 instances means time when your instance is live!Prices are developing through yearsThere are “action prices” all the time

Page 43: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 43

Amazon Web Services – Pricing II

EC2 pricing depends onOperating system – Linux (Unix) / Windows (Linux is cheaper)RegionInstance type (small / medium / large / …)On-demand instance / reserved instance / spot instanceLength of contract for reserved instances (1 year / 3 years)

S3 pricing depends onRegionAmount of stored dataStandard redundancy / reduced redundancy / glacier storageNumber of GET, PUT, POST, … requestsAmount of data transferred

Page 44: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 44

Amazon Web Services – Pricing IIINew AWS customers get each month for one year (January

2014)

750 hours of EC2 running Linux/Unix or RHEL or SLES Micro instance usage750 hours of EC2 running Microsoft Windows Server Micro instance usage750 hours of Elastic Load Balancing plus 15 GB data processing30 GB of Amazon Elastic Block Storage (EBS) plus 2 million IOs and 1 GB snapshot storage15 GB of bandwidth out aggregated across all AWS services1 GB of Regional Data Transfer

Page 45: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 45

Amazon Web Services – Pricing IVAmazon pricing overview

http://aws.amazon.com/pricing/

Amazon pricing for specific productshttp://aws.amazon.com/ec2/pricing/http://aws.amazon.com/s3/pricing/http://aws.amazon.com/dynamodb/pricing/…

Simple Monthly Calculator and TCO calculatorhttp://aws.amazon.com/calculator/http://aws.amazon.com/tco-calculator/

Page 46: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 46

Amazon Web Services – Alternatives

Open source alternative – EucalyptusRuns some of Amazon Web Services under your Linuxhttp://www.eucalyptus.com

Page 47: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 47

Microsoft Azure PlatformMicrosoft’s response to the cloud computing

Announced in October 2008Commercially available in February 2010IaaS, PaaS and SaaS

Windows Azure OS as a “base OS”Windows Server 2008 SP for Guest OS 1.x (obsolete in June 2014)Windows Server 2008 R2 or R2 SP1 for Guest OS 2.xWindows Server 2012 for Guest OS 3.xWindows Server 2012 R2 for Guest OS 4.x

SLAs (monthly)99.99% for Traffic Manager (distribution of user traffic)99.95% for Cloud Services and Virtual Machines99.9% for storage, CDN, SQL Database, service bus, caching, …

Page 48: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 48

Windows Azure Data Centers (January 2014)US North Central – Chicago, IllinoisUS South Central – San Antonio, TexasUS East – VirginiaUS West - CaliforniaEurope West- Amsterdam, NetherlandsEurope North – Dublin, IrelandAsia Pacific East - Hong KongAsia Pacific South-East – SingaporeJapan East - Saitama PrefectureJapan West – Osaka Prefecture

24 Content Delivery Network (CDN) locations

Page 49: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 49

Windows Azure - Services overview ICompute

Virtual MachinesCloud ServicesWeb SitesMobile Services

Data ServicesStorage (Table, BLOB)SQL DatabaseHDInsightCacheRecovery Services

App ServicesMedia ServicesService BusNotification HubsSchedulerBizTalk ServicesActive DirectoryMulti-Factor Authentication

NetworksVirtual NetworkTraffic Manager

Page 50: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 50

Windows Azure – Compute services

Virtual MachinesIaaS – Run Windows or Linux, predefined or own image

Cloud ServicesMulti tier web applications (“advanced web sites”)

Web roleWorker role

Web SitesHosting web applications written in ASP.NET, PHP or Node.js

Mobile ServicesPaaS for building mobile applications

Page 51: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 51

Windows Azure – Cloud Services versus Web Sites

Alternative might offer cost benefits

Page 52: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 52

Windows Azure – Web role and worker role

Page 53: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 53

Windows Azure – Load balancing explanation

Page 54: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 54

Windows Azure – Data services I

BLOB (Binary Large Objects)Key-value storage for unstructured data (video, documents, etc.)

TableNoSQL database

SQL DatabaseMS SQL Server database in the cloudDoesn’t support all features of standard MS SQL Server

Page 55: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 55

Windows Azure – Data services II

HDInsightFramework for managing, analyzing and reporting on big data based on Apache Hadoop

CacheDistributed, in-memory, scalable cache

Recovery ServicesAutomated server backups and recovery

Page 56: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 56

Microsoft Azure – Data Services – BLOB and TableBLOB

Maximal 200 TB of data per accountBlob – Key-value storage with “block” support

Up to 200 GB for block blobUp to 1 TB for page blob

Optimized for random read/writehttp://<storage account>.blob.core.windows.net/<container>/<blob>

TableNoSQL indexed databaseMaximal entity (row) size is 1 MBMaximum 255 properties in entity (row)Maximal property size is 64 kB

Page 57: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 57

Microsoft Azure – Data Services – Azure SQL Database

Supports T-SQLMaximal 150 databases in each SQL ServerMaximal limits per database

Web Edition – 5GBBusiness Edition – 150GB

For larger data you have to use sharding (split data into several databases)Every table must have clustered indexLimits: no full text search, CLR types, replication, database mirroring, jobs, backup and restore, distributed transactions, …

Page 58: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 58

Microsoft Azure – Data partitioning

Horizontal partitioning

Vertical partitioning

Hybrid partitioning

Page 59: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 59

Windows Azure – Network services

Windows Azure Virtual NetworkVPN between your intranet and Azure

Traffic ManagerControls distribution of user traffic to similar hosted services running in the same or different data center according to conditions like performance, price or compliance

ExpressRoute (preview in March 2014)Private (non-internet) connection to the Azure data centersAvailable only on very limited amount of places in USA (Washington D.C., Silicon Valley)

Page 60: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 60

Windows Azure – App Services I

Media ServicesService for creation, management, and distribution of media

Service BusConnects services in Windows Azure or between on-premises applications and cloud services via service bus

Notification HubsProvides a highly scalable, cross-platform push notification infrastructure to millions of users or devices

Scheduler (preview in March 2014)Scheduler for invoking web services or sending messages to Windows Azure Storage Queue

Page 61: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 61

Windows Azure – App Services IIBizTalk Services

Cloud-based integration service e.g. for Electronic Data Interchange (EDI) processing or Enterprise Application Integration

Active DirectoryEnterprise-level identity and access management for the cloud

Multi-Factor AuthenticationExtra layer of authentication, in addition to a user’s account credentials, to secure employee, customer, and partner access

Visual Studio Online (preview in March 2014)Hosting project infrastructure (repositories, project planning, test case management, continuous integration) in Azure

Page 62: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 62

Microsoft Azure – Service Bus

Page 63: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 63

Windows Azure - StagingAllows to do application upgrade without downtimeFirst new version is prepared into staging areaYou test the application in staging areaThen staging area becomes production and vice versaSwitch is done on the load balancer – it redirects all requests to the new versionOld version is still running (currently in staging area). You are charged!

Page 64: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 64

Windows Azure PackWindows Azure technologies available in your data center

Page 65: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 65

Microsoft Azure – PricingPrices are dependant on datacenter location (valid only for some services, some services are data center location independent)Different virtual server sizes have different pricesPrices are based on usage (used storage, amount of send messages, amount of data transfers, etc.)Prices are dependant on the used service (web, VM, database, …)You pay when your application is deployed even if it is not running!Pricing details:

http://www.windowsazure.com/en-us/pricing/overviewPricing calculator:

http://www.windowsazure.com/en-us/pricing/calculator

Page 66: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 66

Microsoft Azure – Pricing Trial

New customers will get for one month (January 2014)200 USD of Windows Azure CreditsYou can combine any services up to your credit

Page 67: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 67

Google Cloud PlatformCompute

Compute EngineApp Engine

StorageCloud SQLCloud StorageCloud Data Store

SLA (monthly uptime):99.95% for Compute Engine, App Engine, Cloud SQL99.9% for Cloud Storage, Prediction API, BigQueryNo SLA found for Cloud Data Store, Translate API

ServicesCloud EndpointsTranslate APIPrediction API

Big DataBigQuery

Page 68: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 68

Google Cloud Platform - Compute

Compute EngineGoogle’s Infrastructure as a Service (IaaS)

App EngineRun web applications in the Google infrastructure

Page 69: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 69

Google Cloud Platform – Storage, BigData

Cloud SQLMySQL database in Google cloud

Cloud StorageObject storage

Cloud DatastoreNoSQL, schemaless database

Big QueryData analysis service

Page 70: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 70

Google Cloud Platform – Services

Cloud EndpointsRESTful services available for mobile clients built on top of services running in App Engine

Translate APIMachine translation between different languages

Prediction APIPattern-matching and machine learning capabilities

Page 71: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 71

Google Cloud Platform – App Engine ISupported environments

JavaJava 7 JVM in safe sandboxed environmentYou can use JSP or JSF (JavaServer Pages/Faces)Some limits exist. E.g. you cannot

Write to the file systemCreate threads in some waysDirectly communicate with system or native code via JNICreate listen sockets

There are limits for web application in general e.g.Maximal response time 60 secondsMaximal request and response size 32MB

Page 72: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 72

Google Cloud Platform – App Engine IISupported environments (continue)

JavaYou can use languages compatible with JVM: JRuby, Scala, …

PythonPython 2.5 or 2.7Similar limits like for Java environmentGo (experimental in March 2014)Go (1.2) is a new Google’s languageSimilar limits like for Java or Python environmentPHP (preview in March 2014)PHP 5.4 in sandboxed environment

Page 73: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 73

Google Cloud Platform – App Engine IIISeveral instance types (with different memory and CPU) availableFrontend instance

Runs code based on some requestTime how long execution of the request can run is limitedScales up and down automatically as number of requests increase and decrease

Backend instanceRuns code in the background (queues, cron tasks, etc.)Doesn’t scale automatically – you specify number of instances you want to useResident (runs continuously) or dynamic (started and stopped dynamically based on required work)

Page 74: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 74

Google Cloud Platform – Storage - DatastoreSchemaless NoSQL object data store with some features of “standard DBs” (e.g. transactions and references to other entities)Objects in data store are entities with one or more propertiesProperties have types like integers, strings, reference to entity, etc.Entities are of given kind (like person)Entities can be hierarchically structuredFor querying objects is used GQL (SQL-like syntax without “join”)Consistency

Strong consistency for reads and ancestor queriesEventual consistency for other queries

Maximum entity size is 1 MB

Page 75: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 75

Google Cloud Platform – Storage – Cloud Storage I

Key-value storage for big objects (“bucket” based)Consistency

Strong read after write consistency for objects (it is guaranteed that immediate read after write will return object)Strong read after delete consistency for objects“List” operations are eventually consistent

Different versions of the same object possibleAutomatic lifecycle of objects (e.g. keep only last 3 versions)You can specify location of bucket: US (several locations) or EuropeMaximum file size is 5TB

Page 76: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 76

Google Cloud Platform – Storage – Cloud Storage II

Data accessible ashttps://storage.cloud.google.com/bucket/object

Redirects via DNS CNAME possible - http://yourdomain/objectSupport access controlSupports resumable uploadsSupports streaming

Page 77: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 77

Google Cloud Platform – Storage - Cloud SQL

Based on MySQL 5.5Data stored in US or EU regionMaximal database size is 500GBMaximal request and response size is 16 MBAll database requests must finish within 60 seconds (frontend request) or 10 minutes (backend request)Some features are not supported against standard MySQL

User defined functionsMySql ReplicationSome MySQL statements and functions

Page 78: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 78

Google Cloud Platform – PricingGoogle Cloud Pricing Calculator

https://cloud.google.com/products/calculator

Pricing detailshttps://developers.google.com/compute/pricinghttps://developers.google.com/appengine/pricinghttps://developers.google.com/cloud-sql/pricinghttps://developers.google.com/storage/pricinghttps://developers.google.com/bigquery/pricinghttps://developers.google.com/prediction/pricinghttps://developers.google.com/translate/v2/pricing

Free trial quota is available as well

Page 79: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 79

Pros of cloud computing

You don’t need to maintain your infrastructureYou don’t need to have unused (reserved) hardwareYou don’t need appropriate specialists

Pay only for what you useCosts can be lower

Especially in cases when you expect usage peaksEasy scalability for increased number of users

But application must be prepared as well

Page 80: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 80

Cons of cloud computing

Security and privacyStrong dependency on the network availabilityVendor lock-in

There aren’t standards to migrate between vendorsMigration costs from existing infrastructureLegal aspects

Provider and user can have different lawCloud platforms provide less functionality than existing platformsRequires new know-how for the whole team

Page 81: PV213 Enterprise Information Systems in Practice 0 7  –  Architecture of the EIS in the cloud

PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 81

Děkuji za pozornost.