Above the Clouds: A Berkeley View of Cloud Computing
02 Sep 2015Takeaways from the paper Above the Clouds: A Berkeley View of Cloud Computing, M. Armbrust, A. Fox, R. Griffith, A.D. Joseph, R.H. Katz, A. Konwinski, G. Lee, D.A. Patterson, A. Rabkin, I. Stoica, M. Zaharia, Tech. Rep. UCB/EECS-2009-28, Feb 10, 2009.
This paper gives a good overall picture of cloud computing, giving resolution to a wide variety of questions as follows.
What is Cloud Computing?
Cloud Computing refers to both the applications delivered as services over the Internet (as SaaS) and the hardware and systems software in the datacenters (specifically Public Clouds) that provide those services.
Why previous attempts have failed and now the right time?
Today, Cloud Computing presents a very attractive model comprising of:
- elasticity offered by the seemingly infinite computing resources available on demand
- elimination of up-front commitment by Public Cloud users
- economic model of pay as per use even on a short term basis
- greater demand due to a wide-variety of applications
The absence of one of these factors in the past meant Cloud Computing didn’t take off before.
Why would a company consider becoming a Cloud Computing provider?
Companies with existing investments in large-scale datacenters as well as software and operational expertise can consider becoming a Cloud Computing provider so as to:
- add another stream of revenue-source
- leverage existing investment
- defend existing franchise
- attack an incumbent
- leverage customer relationships
- become a platform
Why would a service provider move to the cloud?
- Elasticity and the transfer of risk
- Reduced cost due to possibility of converting capital expenses to operating expenses and avoiding spend on idle resources
What are the top 10 critical issues that are still being addressed in Cloud Computing?
- Availability issues highlighted by outages in existing Cloud Computing providers
- Data Lock-In and associated migration issues
- Security concerns
- High cost of Internet bandwidth
- Performance unpredictability
- Storage that scales-up as well as scales-down
- Reproducing and debugging bugs encountered in such a large-scale distributed environment
- Realtime Scaling
- Reputation Fate sharing
- Pay-as-you-go for licensed Softwares