I have learned that cloud computing provides computation, software, data access, and storage services and virtualization is mandatory for cloud computing. I have also found in some places that there are some differences between cloud computing and virtualization. my questions are:

  1. Is virtualization mandatory for cloud computing?
  2. what is the differences between cloud based software services and traditional software services?
  • Depends what you mean by "clould computing". The term "cloud" is very blurred but the loose term, for me, is just off-site servers. These servers can be physical or virtual. A VPS, to me, could be considered a cloud (i.e. off-site) server. – tombull89 Jan 10 '12 at 10:31
  • 3
    Cloud is market speak for "Someone else's problem". – Janne Pikkarainen Jan 10 '12 at 11:20

"Cloud" is a marketing term while "Virtualization" is a technical term. Virtualization facilitates "cloud computing" in the terms that it reduces costs and by this makes it more affordable, but it is not a technical necessity. What is selling as "Cloud" today, was selling as "Infrastructure as a Service", "Platform as a service" or "Software as a Service" a couple of years ago, think of it as a re-branding with an airier buzzword.


Virtualization is in no way mandatory for cloud computing, though it is certainly very common. There are several cloud provider that offer non-virtualized resources. This is commonly referred to as a bare-metal cloud.

For example, SoftLayer offers a bare-metal cloud.

Bare-metal clouds are therefore 'closer' to traditional data center hosting, though you typically still get an API that allows you to provision resources.

Bare-metal clouds will generally offer better performance when compared to a similar sized virtual resource as they do not carry the virtualization overhead.

As for your second question, that depends on how you define 'traditional'. If you refer to running software in-house vs. in a remote 'cloud' data center, the obvious issues are latency and performance. Choosing your cloud provider carefully (distance to data center, variety of compute resource types, etc) can mitigate this to a large degree. From the user's perspective, the main issue is an internet connection. Limited bandwidth can have a pretty detrimental effect on the user experience of most applications. Also, some applications have very strict requirements about where data can be stored. So the question of running these applications in the cloud is also a question of WHERE in the cloud they run. Other then that, software running on a cloud, whether virtualized or bare-metal, will look pretty much the same as software running in a traditional data center.

  • All good except "virtualization overhead". If you run one VM on one hypervisor then the overhead is hardly measurable (2% or so) thanks to hardware virtualization - but you gain a lot of advantages. – TomTom May 16 '12 at 9:08
  • Virtualization overhead also includes the effects of any other VMs running on the same hypervisor, something you probably have no control over, i.e. the 'Noisy Neighbor' effect: alan.blog-city.com/has_amazon_ec2_become_over_subscribed.htm – Barak May 17 '12 at 6:33
  • Ah, NO. Because there may no tbe any. Thera re good reasons to ALWAYS use virtualizaion, even if you run 1:1 and nothing tells you to do otherwise. Some providers even sell that (physical machine + 1 vm on it only). Overhead is NOT neighbor effect, that is like declaring the top speed of a ar is depending on the traffic on the road - totally different things. NATURALLY amazon (your example) s overselling - look at their low prices. – TomTom May 17 '12 at 8:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.