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 EIS in Practice: 07 – Architecture of the EIS in the cloud 2
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 3
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?
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
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
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 7
Centralization / decentralization in history
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 8
Mainframe versus client-server versus 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
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
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
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
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 13
Amazon Web Services against other cloud players
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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!
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
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
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…
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
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%
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
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)
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
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
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).
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 39
Amazon Web Services – Virtual Private Cloud
Connection via VPNIsolated network accessSubnets
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 40
Amazon Web Services – Virtual Private Cloud, Security
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 41
Amazon Web Services – EC2 and S3 Example
Photo processing example
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
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
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
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/
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
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, …
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
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
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
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
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 52
Windows Azure – Web role and worker role
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 53
Windows Azure – Load balancing explanation
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
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
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
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, …
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 58
Microsoft Azure – Data partitioning
Horizontal partitioning
Vertical partitioning
Hybrid partitioning
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)
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
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
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 62
Microsoft Azure – Service Bus
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!
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 64
Windows Azure PackWindows Azure technologies available in your data center
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
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
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
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
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
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
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
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
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)
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
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
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
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
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
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
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
PV213 EIS in Practice: 07 – Architecture of the EIS in the cloud 81
Děkuji za pozornost.