Choosing the Right Class of Public Cloud Service

January 27, 2015 Off By David
Object Storage
Article written by Leo Reiter
 
If you’re in the market for public cloud services, it’s extremely important to understand what class of service best aligns with your needs as a buyer. Most public cloud services can be categorized into one of three classes:
 
Software as a Service (SaaS)

SaaS is something we all use almost every day, sometimes without even realizing it. It combines preconfigured software “best practices” with automated workflows to solve end user problems directly. SaaS hides the underlying complexity of infrastructure orchestration and application management. It also reduces integration effort with existing systems and tools, since it simplifies workflows for specific use cases. The result is immediate value without costly setup woes, combined with straightforward ways to pay for service. Examples of SaaS providers include Google, Microsoft, and Salesforce.com. SaaS is typically billed on a monthly recurring basis, per user, since the details of the underlying infrastructure are not exposed. Buyers range from individual end users (consumer or professional) to departments (who purchase in volume).
 

Infrastructure as a Service (IaaS)
 
Think of IaaS as the “utility layer” of the cloud. It’s the most flexible, but also requires the most integration. IaaS does not solve any direct problems – it’s a means to an end. The main use case for IaaS is “software defined datacenter,” where infrastructure components are provisioned on demand in the cloud rather than physically on premises. Typical IaaS buyers are IT professionals who are installing platforms and applications on top of it, or developers looking for build/test capacity for projects which may or may not end up running in the cloud. IaaS does not serve most end users well because it does not provide any application functionality “out of the box” – this must be installed and configured, or developed from scratch on top of it. IaaS also requires deep understanding of system integration and networking, just as configuring physical infrastructure would. Because it’s available on demand, IaaS is typically billed by the hour, much like electric service from your local utility would be. You only pay for what you use. However, a large part of what you are paying for is setup and integration, as this takes time and effort before you can actually put the infrastructure to work. It’s important to account for this as part of the overall “solution cost,” which can range from a small fraction to a large portion of any project leveraging IaaS.
 
Most IaaS providers also enable API mechanisms to allow automation, which is fundamental to running higher classes of service such as SaaS. Many SaaS applications use these APIs to start and stop “instances,", or virtual environments which can be configured to execute application code. Thankfully, SaaS applications hide this complexity from end users!
 
Examples of IaaS providers include Amazon Web Services, Rackspace, and IBM SoftLayer.
 
Platform as a Service (PaaS)
 
PaaS is much more like SaaS than IaaS, even though logically it sits somewhere in between the two. It provides the mechanisms necessary for developers to create SaaS applications, but it hides the underlying complexity of infrastructure orchestration. Most developers who leverage PaaS are quite adept with application frameworks, but not necessarily with systems integration, which is more of an IT skill than a development skill. Many SaaS providers such as Salesforce.com and Facebook also expose APIs to developers to extend functionality on their platforms, or even create custom applications to offer other users in a “marketplace” fashion. In the High Performance Computing world, Nimbix enables environments fully configured to take advantage of tools such as CUDA, MPI, and Infiniband – without the complexity of managing drivers, interconnect fabrics, or even compute nodes underneath. Other PaaS providers help develop, deploy and manage applications with best practices on the infrastructure of your choice, such as Pivotal and Megam.
 
PaaS is clearly targeted to developers, and its main value is helping to quickly create cloud applications they can later monetize in a SaaS model. Paying for PaaS ranges from subscription to hourly, depending on the service provider or agreement.
 
Conclusions
 
Choosing the right class of public cloud service doesn’t have to be difficult – it all starts with identifying what type of buyer you are, and what your immediate needs are. Looking for an application to help address a series of use cases quickly? Start with SaaS. Looking to build a virtual data center in the cloud to host and run many applications and systems? IaaS is likely your best bet. Wanting to quickly develop and monetize new applications in the cloud using well understood technologies? Look no further than PaaS. Wherever your public cloud needs lead you, one thing is certain: while there is no “one size fits all,” there are ever increasing choices among providers and technologies to help you get the job done.
##

About the Author

Leo Reiter is a cloud computing pioneer who has been designing, developing, and evangelizing large scale, on demand systems and technologies since the mid 1990’s.  He co-founded Virtual Bridges and helped introduce VDI and desktop cloud (DaaS) to the market.  Currently, Leo serves as Chief Technology Officer of Nimbix, Inc., a global provider of High Performance Computing applications and platforms on demand.  

Leo is on a long-term mission to help more people from all walks of life derive more value from advanced technology, particularly in the cloud.

In his spare time, Leo enjoys reading, cooking, and exercising.
 
Twitter: @VirtualLeo
LinkedIn: https://www.linkedin.com/in/leoreiter