Showing posts with label Understanding Cloud. Show all posts
Showing posts with label Understanding Cloud. Show all posts

Monday, June 13, 2011

Understanding Cloud Computing – 5 – SaaS

In my previous posts on IaaS and PaaS, we covered the building blocks of Cloud Computing. SaaS is the top most layer in our cloud computing stack that rides on top of the power unleashed by the Infrastructure and Platform layers to really deliver value to consumers and enterprises.
SaaS or Software as a Service is quite a buzz word these days. Why so? Is it a new concept?
Not really. SaaS is about hosting a software application on a server and allowing users to use it via Internet connected computers from anywhere in the world. The user need not install the application to start using it on his computer. He/She can just access it as a service over the Internet. Web based email is a basic example of SaaS.
Other more recent examples include photo editing that certain website allow, word document to pdf conversion, Google word processing, spreadsheet applications, etc which you can access through a simple Internet browser and more. If SaaS had been around for so long, then why the buzz now?
Several reasons can be attributed to it
SaaS as a business centered concept
SaaS as a concept has worked successfully for individual centered applications but not business centered applications. There are both technology related and business related reasons for this. While SaaS applications like e-mail, office suites, etc have taken off quite well, business related SaaS applications like CRM (Customer Relationship Management) software, sales force automation software, payroll applications, procurement, logistics software have only started gaining traction now.
Why so?
Technology has matured
  • New software design and delivery models allow multiple instances of an application to run at once
  • Internet bandwidth costs have dropped significantly to allow companies to buy the connectivity necessary to allow the remotely hosted applications to run smoothly
  • Media rich AJAX based UIs that do not go for a full page refresh when you click on a button.
Business customers are realizing the benefits SaaS can offer
  • Delayed deployments and high Total Cost of Ownership are forcing CIOs to look away from the traditional software delivery format.
  • Business customers are frustrated with endless cycles of buying software licenses, paying for maintenance contracts, unresponsive helplines, costly upgrades, etc.
  • Pay-as-you-go benefits
  • Easy add ons
  • Easy ability to switch vendors if current vendor is unresponsive to business problems
  • No software maintenance headaches
And add to this the early successes that the world is seeing in early pioneers of SaaS like Salesforce.com, WebEx, Digital Insight, etc. The model has proven viable. We need to wait and see how the trends in SaaS unfold.
If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post

Sunday, June 12, 2011

Understanding Cloud Computing – 4 – PaaS

Platform as a Service corresponds to the second layer in my analogy of cloud computing to your commonplace desktop at home.
PaaS – Platform as a Service is akin to an operating system that allows application developers, programmers and the like to install their language support systems, write and test code, package and distribute and finally deploy/install them to render the apps usable by end customers.
Cloud - PaaS
The difference lies purely in the ‘as a Service’ aspect. The platform in the case of cloud computing context is not tied down to a Operating System – rather it is something that is hosted on the cloud and available on demand to developers and programmers via any machine connected to the internet. The developed requests the environment and the same gets provisioned to him over the cloud.
PaaS also follows the 4 tenets of Cloud Computing.
Examples of PaaS platforms include Azure from Microsoft, SalesForce’s Force.com, Google’s AppEngine.
We will explore SaaS in our next part in this series.
If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post

Friday, June 3, 2011

Virtualization and Cloud Computing – Is there a difference?

One common question I keep getting asked is the difference between Virtualization and Cloud Computing. I even have colleagues and friends who swear that Cloud Computing is glorified Virtualization.

Lets explore this subject.

Virtualization in its simplest form is all about enabling a virtual access to a physical computing resource. Why do you need this? A single physical resource can be accessed in multiple ways or by multiple users simultaneously. Each user uses their own OS or access mechanism to interact with the underlying physical resource. A technology known as the ‘hypervisor’ that abstracts the physical resource from the users/systems accessing it is core to the virtualization technology.

Virtualization

Cloud computing is about allowing users to access computer resources on a need basis (basically as a service) and do away with the concept of ownership. This also would mean aspects of self service, pay for what you use and inherently unlimited computing power. Cloud Computing is not a technology, it is a business paradigm. Virtualization is an important technology that enables cloud computing by optimizing physical resource sharing.Cloud computing can also be enabled without virtualization but it would be an inefficient way of doing it.

Simply put, as one website succinctly captures the differences in the following statement

“Virtualization is basically one physical computer pretending to be many computing environments; cloud computing is many different computers pretending to be the one computing environment, hence allowing easier scaling”

Do share your thoughts on where else the differences lie.

If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post

Tuesday, April 26, 2011

Traditional Hosting versus Cloud Hosting - 3 Differences

Much too often, the question on what is the difference between hosting a website on a remote server and on a cloud is - crops up during passionate discussions on cloud computing. Truly geeky friends of mine often forget the fundamental differences between cloud hosting and non-cloud hosting and start wondering if cloud computing is just a fad that was invented to pull the wool over unsuspecting enterprises. To all those friends of mine and to those of you who really are puzzled over the differences, here's a beautiful video that settles the matter for once. You can bookmark this URL for the subsequent times...;-)


If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post

Saturday, April 23, 2011

Understanding Cloud Computing - 3 - IaaS

The Infrastructure layer of cloud computing is the base foundation of cloud computing. This is the layer that triggered off the thoughts of true cloud computing.Additional hardware purchased by divisions of companies that remained unused must have prompted other divisions to request for this hardware on a temporary basis. That action is what sparked off the thought of subscribing to hardware on demand and not buying and owning it.

Hosting companies that provided space on remote servers took the first step in this direction. They were prompted more from the need for the servers to be exposed to public at all times unlike enterprise servers that are within the firewall. This also freed up enterprises from having to invest and maintain open-to-public servers. They just put up their websites and related public consumable data onto these hosted servers. 

It was exactly 5 years ago that the next big step in IaaS was taken. It was by a company named Amazon (more famous for it online book store). AWS or Amazon Web Services (started in July 2002) announced the availability of its EC2 - Elastic Compute Cloud offering in August 2006. EC2 allowed users to rent out computing power and pay for it by the hours of usage. EC2 allowed for users to load their applications onto Amazon hosted infrastructure and EC2 related services allowed for scaling up or down the needed computing and storage power based on the consumption of these applications.

Today you have a whole set of companies trying to match what AWS brought to the market. GoGrid, Rackspace, Akamai, etc are among the few top ones. 

You could safely say that the current trends and gung-ho around cloud computing had its seeds sowed back in 2006. In our next post, lets dive into Platform as a Service facet of Cloud Computing.

If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post

Tuesday, January 11, 2011

IT Needs Then and Cloud Needs Now....

When the digital computer age was ushered in way back in the 1960s, IBM ruled the roost with System/360, a large mainframe offering. Over a decade and half we saw the emergence of Digital Equipment Corporation (DEC) with PDP and VAX systems, Hewlett Packard with HP-2115, Data General with its Novas. Each company had its own proprietary hardware stack and languages they supported. While DEC supported UNIX which was in its infancy then, HP supported Fortran and Algol and IBM had its own proprietary mainframe language. 
Enterprise and consumer needs drove adoption of these different stack each of which were best suited for a particular segment. Over the next 2-3 decades, enterprises suddenly realized that the computer industry had left them with a spaghetti of systems none of which were inter operable or supported cross talk. And this after millions of dollars had been poured to procure these systems. The anguish was so pronounced that it drove some of the legacy providers to extinction while others had to learn to dance to survive. Louis Gerstner, the erstwhile CEO of IBM, in his book, "Who Says Elephants Can't Dance?"  gives an account of IBM's historic turnaround between April 1993 and March 2002. Lou Gerstner led IBM from the brink of bankruptcy and mainframe obscurity back into the forefront of the technology business. He did so by reorienting the company's business to the demands of the time. One of the main cornerstones he lay was the establishment of IBM Global Services - a System Integration division whose main objective was to help enterprises stitch together the multitude of computer systems they had invested in and get them to co-work. Thus was born the huge SI industry that has seen the likes of IBM, Accenture, EDS, CapGemini and the Indian majors like TCS, Wipro, Infosys, HCL, Cognizant drive business.
The reason I cited a snippet from history is to demonstrate two things
  1. To draw a comparison between the digital computing era and the cloud computing world as it is evolving
  2. To give the reader an indication of how transformations in the industry happen over years and decades.
Cloud computing industry was a buzz word for most part of the first decade in the new millennium. The fag end of the decade saw the emergence of Amazon Web Services, Google Apps, Microsoft Azure, Go Grid, SalesForce's Force.com as some prime cloud players. We also see a lot of smaller players who serve niche needs like Service Mesh, Zuora, JamCracker, Ping Identity, etc who complement the bigger players. However, the biggest lacuna is the interoperability of clouds. Users choosing a cloud provider do not have a seamless path to migrate to another cloud.provider. What you see is a picture similar to the erstwhile era. A rising need felt by enterprise customers to ensure a fair degree of standards and interoperability between clouds. What that also means is the need for companies that would help enterprises achieve it. Whether this set of players would come from the the big league or from the small niche of players remains to be seen...What's your take on this matter?
If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post

Monday, December 27, 2010

Understanding Cloud Computing - 2

Remember the analogy I presented to you in my last post in the series? About the cloud being akin to a giant computer. We also talked about the 3 layers of this computer. What was interesting was the fact that each of them had the "as a Service" suffix. What does this mean and what are its implications. 

Extending out giant computer analogy a little further, it is certain that such a giant computer is not for any individual or institution's use alone. Rather it is a computer that can be used by everybody who has a need for the same. Theoretically, the computer is so huge that every body could make use of it at different points of time or at the same time. While somebody might be needing just a few GB of hard disk space on this computer and some processing power, another team might be thinking of requesting several TB of space and lots of RAM and some specific applications. As each and every individual/team requests these units from the computer, these are allocated almost in real time to these individuals. Once they are done using the computer for their use, they relinquish the requested resource units that get added to the main pool for somebody else to take advantage of them. Hence the giant computer's resources are available on demand as a service. Just like how a taxi is available as a service for you when you need to get from one point to another or your when your own car has broken down. 

All three layers of the cloud, the infrastructure layer, the platform layer and the software layer are available as a service for its consumers. Hence  the suffix "as a service".

In our next post in this series, lets look at the Infrastructure layer in detail and understand its intricacies

Thursday, December 9, 2010

Understanding Cloud Computing - 1

A lot of my readers ask me fundamental questions on cloud. This series of posts are dedicated to all my fans and readers who would like cloud computing to be simplified for them.


Let's start with a pictorial analogy of cloud computing to something that we are more familiar with. Consider a server or even your desktop computer or a laptop. A scratch at the surface to see what makes these computing devices tick reveals 3 distinct layers.

  1. The hardware consisting of the motherboard, the memory (RAM, hard disks), the processor, etc
  2. The operating system that loads when you first switch on your computer - Windows, Linux, Unix, etc
  3. The software applications that you use when using your computer - Notepad, Word, Paint Brush, Winamp, Internet Explorer, etc
A cloud in simple terms is your computer multiplied sever hundred thousand times and can go beyond theoretically to infinity. More on this characteristic in my next post.

Coming back to the analogy, imagine the cloud to be one giant computer. Obviously you would need the equivalent of the 3 layers here too, right?
  1. Infrastructure - IaaS (Infrastructure as a Service) - The hardware layer equivalent
  2. Platform - PaaS (Platform as a Service) - The Operating system equivalent with more bells and whistles. Lets understand that in a separate post
  3. Software - SaaS (Software as a Service) -The software applications you would use to draw on the power of the giant cloud computer.
You might have noticed that all three had the terms "as a Service" attached to them. Let's explore that in our next post in this series.

Never miss a post...

If you enjoyed reading this post, Subscribe to the feed here ...And never miss a post