2008年7月19日土曜日

Cloud Computingの定義

Cloud Computingの定義について、各界の著名人20人が述べたコメントを整理した記事。 技術的な観点で解説する人がいる一方、マーケティングキーワードとして片付けている人も多い。

Twenty Experts Define Cloud Computing

It is the infrastructural paradigm shift that is sweeping across the Enterprise IT world, but how is it best defined? I refer of course to 'Cloud Computing' - the phenomenon that currently has as many definitions as there are squares on a chess-board. To try and narrow it down we bring here a round-up of some recent attempts to bring welcome precision where there risks being unnecessary vagueness. Enjoy!


"What is cloud computing all about? Amazon has coined the word "elasticity" which gives a good idea about the key features: you can scale your infrastructure on demand within minutes or even seconds, instead of days or weeks, thereby avoiding under-utilization (idle servers) and over-utilization (blue screen) of in-house resources. With monitoring and increasing automation of resource provisioning we might one day wake up in a world where we don't have to care about scaling our Web applications because they can do it alone."

Markus Klems

"Cloud computing is one of those catch all buzz words that tries to encompass a variety of aspects ranging from deployment, load balancing, provisioning, business model and architecture (like Web2.0). It's the next logical step in software (software 10.0). For me the simplest explanation for cloud computing is describing it as, "internet centric software".

This new cloud computing software model is a shift from the traditional single tenant approach to software development to that of a scalable, multi-tenant, multi-platform, multi-network, and global. This could be as simple as your web based email service or as complex as a globally distributed load balanced content delivery environment.

I think drawing a distinction on whether its, PaaS, SaaS, HaaS is completely secondary, ultimately all these approaches are attempting to solve the same problems (scale). As software transitions from a traditional desktop deployment model to that of a network & data centric one, "the cloud" will be the key way in which you develop, deploy and manage applications in this new computing paradigm."

Reuven Cohen

"I view cloud computing as a broad array of web-based services aimed at allowing users to obtain a wide range of functional capabilities on a 'pay-as-you-go' basis that previously required tremendous hardware/software investments and professional skills to acquire. Cloud computing is the realization of the earlier ideals of utility computing without the technical complexities or complicated deployment worries."

Jeff Kaplan

"I think 'Clouds' are the next hype-term for the next year or two. People are coming to grips with Virtualization and how it reshapes IT, creates service and software based models, and in many ways changes a lot of the physical layer we are used to. Clouds will be the next transformation over the next several years, building off of the software models that virtualization enabled."

Douglas Gourlay

"The way I understand it, "cloud computing" refers to the bigger picture…basically the broad concept of using the internet to allow people to access technology-enabled services. According to Gartner, those services must be 'massively scalable' to qualify as true 'cloud computing'. So according to that definition, every time I log into Facebook, or search for flights online, I am taking advantage of cloud computing."

Praising Gaw



See next page
for definitions from Damon Edwards, Brian de Haaff, Kirill Sheynkman, Ben Kepes, Omar Sultan, Kevin Hartig, and Yan Pritzker
See final page for for definitions from Trevor Doerksen, Thorsten von Eicken, Paul Wallis, Michael Sheehan, Don Dodge, Aaron Ricadela, and Irving Wladwasky Berger.

"Clouds are the new Web 2.0. Nice marketing shine on top of existing technology. Remember back when every company threw some ajax on their site and said "Ta da! We're a web 2.0 company now!"? Same story, new buzz word.

On the positive side, the Web 2.0 concept did catch the mainstream's eye and made them aware of the possibility of collaborative web services. Similarly, the "Cloud" concept is finally wrapping peoples' minds around what is possible when you leverage web-scale infrastructure (application and physical) in an on-demand way. "Managed Services", "ASP", "Grid Computing", "Software as a Service", "Platform as a Service", "Anything as a Service"… all terms that couldn't get it done. Call it a "Cloud" and everyone goes bonkers. Go figure."

Damon Edwards


"There sure is a lot of confusion when it comes to talking about cloud computing. Yet, it does not need to be so complicated. There really are only three types of services that are cloud based: SaaS, PaaS, and Cloud Computing Platforms. I am not sure being massively scalable is a requirement to fit into any one category."

Brian de Haaff


"SaaS is one consumer facing usage of cloud computing. While it's something of a semantic discussion it is important for people inside to have an understanding of what it all means. Put simply cloud computing is the infrastructural paradigm shift that enables the ascension of SaaS."

Ben Kepes


"The 'cloud' model initially has focused on making the hardware layer consumable as on-demand compute and storage capacity. This is an important first step, but for companies to harness the power of the cloud, complete application infrastructure needs to be easily configured, deployed, dynamically-scaled and managed in these virtualized hardware environments."

Kirill Sheynkman


"I was chatting with a customer the other day who was struggling with some of the implications of cloud computing. The analogy that finally made sense to them is what I will call 'cloud dining.' I am the cook in the house and I am tasked with feeding the family. If my 10-year old is lobbying for Italian, I am cook at home or order out. The decision may also vary from day to day. For instance, I might not have all the ingredients and have to order out, or, like this weekend, it may be 103 outside and cooking at home is not all that appealing. Now, the same can be said for supporting a given application in a cloud computing environment.

In a fully implemented Data Center 3.0 environment, you can decide if an app is run locally (cook at home), in someone else's data center (take-out) and you can change your mind on the fly in case you are short on data center resources (pantry is empty) or you having environmental/facilities issues (too hot to cook). In fact, with automation, a lot of this can can be done with policy and real-time triggers. For example, during month end processing, you might always shift non-critical apps offsite, or if you pass a certain cooling threshold, you might ship certain processing offsite."

Omar Sultan


"Cloud computing overlaps some of the concepts of distributed, grid and utility computing, however it does have its own meaning if contextually used correctly. Cloud computing really is accessing resources and services needed to perform functions with dynamically changing needs. An application or service developer requests access from the cloud rather than a specific endpoint or named resource. What goes on in the cloud manages multiple infrastructures across multiple organizations and consists of one or more frameworks overlaid on top of the infrastructures tying them together.

The cloud is a virtualization of resources that maintains and manages itself."

Kevin Hartig

"Clouds are vast resource pools with on-demand resource allocation. The degree of on-demandness can vary from phone calls to web forms to actual APIs that directly requisition servers. I tend to consider slow forms of requisitioning to be more like traditional datacenters, and the quicker ones to be more cloudy. A public facing API is a must for true clouds.

Clouds are virtualized. On-demand requisitioning implies the ability to dynamically resize resource allocation or moving customers from one physical server to another transparently. This is all difficult or impossible without virtualization.

Clouds tend to be priced like utilities (hourly, rather than per-resource), and I think we'll see this model catching on more and more as computing resources become as cheap and ubiquitous as water, electricity, and gas (well, maybe not gas). However, I think this is a trend, not a requirement. You can certainly have clouds that are priced like pizza, per slice."

Jan Pritzker


See next page for definitions from Trevor Doerksen, Thorsten von Eicken, Paul Wallis, Michael Sheehan, Don Dodge, Aaron Ricadela and Irving Wladawsky Berger


"Cloud computing is ... the user-friendly version of grid computing."

Trevor Doerksen

"Most computer savvy folks actually have a pretty good idea of what the term "cloud computing" means: outsourced, pay-as-you-go, on-demand, somewhere in the Internet, etc."

Thorsten von Eicken


"In order to discuss some of the issues surrounding The Cloud concept, I think it is important to place it in historical context. Looking at the Cloud's forerunners, and the problems they encountered, gives us the reference points to guide us through the challenges it needs to overcome before it is adopted."

Paul Wallis


"I would like to propose a 'Cloud Pyramid' to help differentiate the various Cloud offerings out there. [At the top of the pyramind] users are truly restricted to only what the application is and can do. Some of the notable companies here are the public email providers (Gmail, Hotmail, Quicken Online, etc.). Almost any Software as a Service (SaaS) provider can be lumped into this group.

As you move further down the pyramid, you gain increased flexibility and control but your a still fairly restricted to what you can and cannot do. Within this Category things get more complicated to achieve. Products and companies like Google App Engine, Heroku, Mosso, Engine Yard, Joyent or force.com (SalesForce platform) fall into this segment.

At the bottom of the pyramid are the infrastructure providers like Amazon's EC2, GoGrid, RightScale and Linode. Companies providing infrastructure enable Cloud Platforms and Cloud Applications. Most companies within this segment operate their own infrastructure, allowing them to provide more features, services and control than others within the pyramid."

Michael Sheehan


"The web fanatics and blogosphere would have you believe that all applications will move to the web. Some will, most will not. Reliability, scalability, security, and a host of other issues will prevent most businesses from moving their mission critical applications to hosted services or cloud based services. The risk of failure is too great.

Amazon is the leader in cloud based services, but even Amazon has experienced down times for its own business. Cloud services will continue to improve. But my guess is the uptake will take longer than most people predict."

Don Dodge

"Today's combination of high-speed networks, sophisticated PC graphics processors, and fast, inexpensive servers and disk storage has tilted engineers toward housing more computing in data centers. In the earlier part of this decade, researchers espoused a similar, centralized approach called "grid computing." But cloud computing projects are more powerful and crash-proof than grid systems developed even in recent years."

Aaron Ricadela

"When virtualizing applications to be used by people who care nothing about computers or technology - as is mostly the case with Clouds - the key thing we want to virtualize or hide from the user is complexity. Most people want to deal with an application or a service, not software. ... The more intelligent we want [computers and computer applications] to be - that is, intuitive, exhibiting common sense and not making us have to constantly take care of them - the more smart software it will take. But with cloud computing, our expectation is that all that software will be virtualized or hidden from us and taken care of by systems and/or professionals that are somewhere else - out there in The Cloud."

Irving Wladawsky Berger


"I view cloud computing as a broad array of web-based services aimed at allowing users to obtain a wide range of functional capabilities on a 'pay-as-you-go' basis that previously required tremendous hardware/software investments and professional skills to acquire. Cloud computing is the realization of the earlier ideals of utility computing without the technical complexities or complicated deployment worries."

Ben Kepes