Considering Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS), I think by far the most interesting one is PaaS. The idea behind PaaS is that the service provider manages the development environment providing the core language and libraries while maintaining a separation between customer apps and data. You can get that now with a virtual hosting environment, but PaaS adds things like scalable storage, processing capacity, networking and other neat stuff. PaaS lets your developers focus on what's important, which is application functionality. Even so, you won't be tossing out virtualization in your data center anytime soon.
In an interesting story over at Gigaom VMware Knows the Cloud Doesn't Need Server Virtualization, Simeon Simeonov sat down with VMware CEO Paul Maritz and the message was clear: there is a strong future for PaaS. Simeonov wrapped by saying "Soon we will be able to throw away the server virtualization crutch ... we will be able to run leaner and more scalable applications in the cloud on next-generation platforms-as-a-service."
That makes sense for cloud providers and seems to be an insightful prediction. The resources to run a PaaS have to be less than running a IaaS, where you don't need all the storage for all the images or fast WAN pipes to move data and application in and out. There is certainly less customer-facing management software needed with a PaaS--no need to provide hooks into networking, storage, hypervisors and all the rest. And PaaS is so similar to SaaS that it's an easier migration. If you write apps in C#, VB, Ruby, PHP, or whatever, you just move the code and data to an existing service rather than the whole OS. Somebody else has to manage the servers and infrastructure, not you are your developers. Sweet.
But just because cloud services don't need virtualization doesn't mean the enterprise doesn't need virtualization. Those are two totally different models with their own requirements. The fact is that for the foreseeable future, enterprise data centers will still need servers, storage, and switches. They are still going to need operating systems running on hardware regardless of whether that is actual hardware or virtual hardware because enterprises still need to run fat, compiled, native applications that simply can't be magically webified and tossed into a PaaS. Think about common applications like Exchange, SQL Server, Oracle as well as vertical applications in your industry. There's a ton of native code running on servers that still needs to run on servers.
A lot of those native applications are low-capacity applications that don't need their own hardware. That is the benefit of virtualization in the enterprise: consolidating low demand applications, getting improved disaster recovery and quicker recovery times, application mobility, and in some cases, horizontal scalability (you also need other stuff like traffic directors, and what not). So what if there is a 8-10 percent overhead when running a hypervisor? You aren't going to care because you don't use virtualization for high-demand applications. High-demand applications like RDBMs run best on their own hardware. Take advantage of virtualization, orchestration and automation in your data center. Plan for them. Implement them. Use cloud services where it makes sense, but don't toss hypervisors on the scrap heap just yet.