You are on page 1of 27

A Walk in the Clouds

Comparing Google AppEngine , Amazon AWS and Sun Project Caroline

Niraj Juneja
Blog: http://www.gandalf-lab.com Web: http://www.webscalesolutions.com

What are we talking about today


Really Quick Overview of Cloud Computing Market Analysis POVs Comparing three clouds

Amazon AWS Google App Engine Suns Project Caroline

Enterprise Adoption Other Players


Hewlett Packard , SAP , Oracle , IBM 3Tera , Enki , Enomaly Niche Application Players (Vertica , Greenplum )

What is Cloud Computing

The Big Definition


Wikipedia - Cloud computing is Internet ('Cloud') based development and use of computer technology ('Computing'). The cloud is a metaphor for the Internet (based on how it is depicted in computer network diagrams) and is an abstraction for the complex infrastructure it conceals[1]. It is a style of computing where IT-related capabilities are provided as a service[2], allowing users to access technologyenabled services from the Internet ("in the cloud")[3] without knowledge of, expertise with, or control over the technology infrastructure that supports them[4]. According to the IEEE Computer Society "It is a paradigm in which information is permanently stored in servers on the Internet and cached temporarily on clients that include desktops, entertainment centers, table computers, notebooks, wall computers, handhelds, etc."[5].

No Consensus in the industry for a good definition of Cloud computing . Today anything and everything internet will come with a cloud computing logo My Definition: If the time difference between - your application needs more capacity and gets more capacity is greater than instantly it is not cloud computing. i.e if there is no programmatic way to provision hardware ,no pooled capacity and even worst a purchase order to get new hardware/software.

The Bottom-line

Changes the economics of Computing from being a Capital investment to Utilities (You buy electricity you dont buy generators ) Changes the way software is developed Hardware provisioning , Deployment and Scaling now part of developer lifecycle as a Program / script as compared to a Purchase order Automates a whole bunch of infrastructure related tasks and activities leading efficiencies and cost savings

Some Myths and perceptions

Isnt it all about hardware provisioning?

Not Really It is also about changing of Software Development Lifecycle with scaling up , hardware provisioning and deployment all under the control of developer written programs

What about Security and Enterprise Adoption ?

Two answers

Private Clouds You will start seeing the adoption of the cloud computing paradigm come into the corporate data center. Big iron vendors will start selling Private Cloud Products.

Refer link here http://goanimate.com/go/movie/0tTsEaeL8o8?utm_source=emailshare&uid=0AhZ8_zfEIec

Just as Banks became a safe place to keep your money away from your safe-box in your grandfathers home , The Cloud will become the default place to keep your data in the future.

Some Myths and perceptions

Isnt this similar to Time Sharing?


Yes to some extent. But it is not all about sharing of resources. It really boils down to cost savings as a result of automation and changing the SDLC

How is it different from ASP?

The ASP value-add was the typical value you get from an outsourcing company. Leverage knowledge base, trained manpower and some shared infrastructure to guarantee reliability of operations and potential cost savings Cloud Computing is taking the ASP concept to the next level with zero to little amount of People Services and focus on the computing as a utility.

Market Analysis
SaaS Software as a Service
(Platform , Scaling and Hardware transparent)

Gmail

Google Apps

Increasing Virtualization

Live workspace Microsoft Force.com


Sun Caroline Amazon Simple DB Google app Microsoft Azure engine

Salesforce.com

PaaS Platform as a Service


(Hardware Provisioning Hidden Automatic Scaling)

HaaS Hardware as a Service


Programmatic Interface for Hardware Provisioning

Amazon EC2/S3

Bare Metal
People Process based hardware provisioning

In house hosted servers EDS (Infrastructure Outsourcing)

Flexibility of Offering

Market Analysis
The Color Gradient indicates Increasing Desire to Enter the Space

Network Device Layer

Kindle

Android

Win Mo

J2ME

IPAQ

SaaS
Software as a Service (Platform , Scaling and Hardware transparent)

Increasing Virtualization

Alexa

Google Apps

Live

Java Consumer Space

Partner Strategy

Salesforce

PaaS
Platform as a Service (Hardware Provisioning Hidden Automatic Scaling)

Simple DB

App Engine

Azure

Caroline

Web sphere Potential

Partner Strategy

Force.com

HaaS
Hardware as a Service Programmatic Interface for Hardware Provisioning

EC2 S3

App Engine

Azure

Caroline

On Demand

Bare Metal
People Process based hardware provisioning

Build there own

Core Business

Core Business

Core Business

Amazon

Google

Microsoft

Sun Micro

IBM

HP

Salesforce com

Market Analysis (POV Sun Microsystems)

App Engine

Source: http://www.projectcaroline.net

Market Analysis (POV Sun Microsystems)

Source: http://www.projectcaroline.net

Market Analysis (POV Sun Microsystems)

Source: http://www.projectcaroline.net

Market Analysis (POV Red Monk)

Source: http://www.redmonk.com

Comparing Three clouds

Discussion to focus on

Amazon Web Services Google App Engine Suns Project Caroline


Most talked about (except Caroline) Gives a good overview around the breadth of offerings in the space

Why these ?

Amazon Web Services

Offerings

Hardware as a Service (HaaS) AWS-EC2 Storage as a Service AWS-S3 Database as a Service SimpleDB Queuing as a Service SQS

Aggregate Offerings

Pretty much anything you can think off Oracle , Solaris , Hadoop Clusters (NY times), Specialized Applications (Vertica DB) , Animoto

AWS Some Use Cases

AWS Some Use Cases


Start ups (low entry point and can get going with great infrastructure in a day) SaaS vendors (Vertica ) a logical marriage between SaaS and HaaS. AWS just becomes a component in the Supply Chain Enterprise Use Cases

Testing (Performance testing ,Compatibility Testing) Massive Batch Jobs Hadoop Image (NY Times example) , Animoto uses 3000 EC2 instances

Claim to Fame

Came from Bottom up in the market and took the low end of the market by storm Low Entry point (10 cents an hour for a CPU) and can scale up to Terabytes of storage and thousands of server at the same price structure Everything is Automated and has programmatic access (No calls to system admins to configure a parameter or restart a server)

Google App Engine

Exposes the Google Infrastructure to the outside world


BigTable Python Language runtime Access to some google apis (authentication , image manipulation)

APIs

The Python Runtime, The Python environment in which your app runs; CGI, sandbox features, application caching, logging Datastore API, BigTable Googles Database Images API, the image data manipulation service Mail API, sending email from your app Memcache API, the distributed memory cache URL Fetch API, accessing other Internet hosts from your app Users API, integrating your app with Google Accounts

You should expect to see more APIs exposed. More specifically the Google APIs for Docs , GWT , etc

App Engine - offering

Claim to Fame

Free (to start with) BigTable ( a real winner) Essentially a good way to get into the google world and potentially get acquired by google

Google App Engine

Use cases

Webscale Database needs (BigTable) Map Reduce Programming model Start up (who want to leverage google apis and sign on capability)

Enterprise Use Cases


None right now But potentially Applications requiring to link the web presence of customers (blogs , open social) to the Enterprise Applications (Example customer insights into CRM etc) could use AppEngine. if you are a Google Apps Shop there Is a case of hosting on AppEngine

Comparing Amazon and Google Stacks

Source: http://www.zdnet.com

Project Caroline Sun Microsystems


Research project developing a platform for development and deployment of long-running Internet services Utility scale: lots of customers and services on a single large shared grid, with secure isolation Full programmatic control of distributed compute, storage, and network resources Services can configure and flex their own resource usage up and down in real time High level of resource abstraction Will potentially end up in the Private Cloud for the Enterprise along Amazon like offerings for the Bottom market

Developer View

What is the API ?

Essentially a way to Provision and manage the system resources like


Network (IP Addresses) Databases Filesystem

Standard Configurations available for Tomcat / Glassfish / Ruby Can create new configurations for new server types Ant Based Environment also available for controlling the grid Direct Access from netbeans to integrate the GRID workflow into SDLC

What is the API ?

File System Creation :


myFS = grid.createBaseFileSystem(myFS,new BaseFileSystemConfiguration());

Network Creation :

myNet = grid.createNetwork(myNet, 16,new CustomerNetworkConfiguration());

IP address allocation

dbAddr = myNet.allocateAddress(dbAddr); intAddr = myNet.allocateAddress(intAddr); extAddr = grid.allocateExternalAddress(extAddr);

Database Creation

myDB = grid.createPostgreSQLDatabase(myDB, new PostgreSQLConfiguration( dbAddr.getUUID(), null));

Impact of Project Caroline Model

Automate deployment & day-to-day operations


Faster response times Capture knowledge in programs not process books

Services construct their environment instead of being inserted into an existing one

Simpler for operations and developers

Isolation between service instances Multi-process components Developer workflow

Other Players

Big Iron Vendors

Hewlett Packard.: A joint project between Yahoo , HP and Intel . Also watch out for EDS related Enterprise Offerings IBM : On Demand Computing Microsoft Project Reddog Oracle AWS Announcements plus more to come SAP Business by Design Salesforce force.com 3Tera , Enki Vertica Dataware house appliances (Greenplum , Neoview) A whole bunch others

Software Vendors

Niche Players

there will be small number of big players and a large numbers of small players in the cloud computing space Dr. Eric Schmidt , CEO Google we had enough complexity inside Amazon that we were finding we were spending too much time on fine-grained coordination between our network engineering groups and our applications programming groups. Basically what we decided to do is build a [set of APIs] between those two layers so that you could just do coarse-grained coordination between those two groups. Amazon is, you know, just a web-scale application. - Jeff Bezos , CEO Amazon on how did Amazon end up creating AWS leaving the big iron vendors behind The world needs only five computers. - Thomas Watson , CEO IBM (1943) - and then re-phrased by Greg Papadopoulos CTO Sun Microsystems there will be, more or less, five hyperscale, pan-global broadband computing services giants. There will be lots of regional players, of course; mostly, they will exist to meet national needs. That is, the network computing services business will look a lot like the energy business: a half-dozen global giants, a few dozen national and/or regional concerns, followed by wildcatters and specialists.

Final Reflections

In my diagram below There will be one layer added above the SaaS layer , which will be the device layer that will be realized as a result of everything moving to the cloud - Networked Refrigerators , Remote Controlled Vacuum Controllers or any and every device on the network were interesting discussions uptill now but will become a reality with the cloud. The above is exactly what happened with the build-out of the last big grid electricity in the 20th century. A hundred years ago, when Tesla, Westinghouse, Insull, and others were building the electric grid companies viewed the effort in terms of the cost reduction to their business: in particular, the power they needed to run the machines that produced the goods they sold. But the real revolutionary aspect of the electric grid was not the way it reduced the cost structure, but the way it created new businesses altogether. We saw an avalanche of new products outfitted with electric cords, many of which were inconceivable before the grid's arrival

Network Device Layer Growth Engine for the next generation

Demos
-Project Caroline animal guess example -Google App Engine Guest Book -Amazon EC2 and S3 Console