It’s Effects Beyond IT
Cloud computing is a concept best understood within the context of IT[i]. Its primary effect on business is the potential significant saving in capital expenditures (CAPEX) and potentially maintenance (OPEX)[ii] of IT’s hosting assets. This is due to leveraging the scale of large server farms, and the recent ability to allocate slices of CPU, memory and storage on demand within these farms[iii]. This is sometimes referred to as elastic computing or utility computing. Elastic in the sense that additional resources can be allocated to meet periods of peak demand[iv] and utility in that one pays only for resources used[v]. So this would be a boon for startups and for new ventures within established companies to launch new products and services with significantly reduced startup expenditures and time to market[vi].
Scalability and Availability At the Core
For large Internet companies with stable traffic the benefits quickly diminish as the enterprise can build at a greater long term cost savings what is referred to as internal clouds, which in similar fashion integrate all resources as a single maintained entity through virtualization[vii]. In this sense cloud computing, whether external or internal, refers to computing and infrastructure resources that are configured for high scalability and availability. Scalability has already been discussed in a previous post[viii] and is a significant aspect of the second surge in cloud computing or Web 2.0. Availability is a related concept dealing with strategies for completing processes when computers and communications fail. Typically the strategies require duplicating processes on multiple computers in parallel and deciding at the completion of each process the correct result from these multiple sources[ix]. Duplicating processes is a form of concurrent programming and follows the same principles as scalability, including Sullivan’s Law[x] – it’s the high availability and not efficiency that is the critical factor[xi].
An Enterprise Platform with Broad Application
Cloud computing as defined above is neither a strikingly new business model nor novel technology breakthrough. After all, free or low cost hosting has been supported from the very beginning. What has changed is the experience of large Internet companies such as Google, Amazon, EBay, and Yahoo and more recently Facebook and Twitter in dealing with the scalability of servicing high consumer demand and streamlining the hardware / software platform cost[xii]. This has resulted in better leveraging of engineering and IT efforts such that the resulting platforms and infrastructure are more abstract and flexible to support a wider array product service demands[xiii]. This in turn enables and moves forward various development and support strategies, such as Web Services (WS), Software as a Service (SaaS), Platform as a Service (PaaS), Infrastructure as a Service (IaaS) and Managed Services, which are sectors that have been around for sometime but have yet to reach mainstream acceptance[xiv]. The expectation is that these will become more widely accepted and adopted successfully by more business models going forward[xv].
The Dark Side of the Cloud
As close to utopia as this would seem, cloud computing presents significant issues that must be addressed to successfully deploy applications to the cloud. The first and most significant is that cloud computing as discussed in most articles has little to do with computing and more to do with virtual hosting – getting resources into the cloud. Hosting issues that are relatively easy to address in self-hosted scenarios become an order of magnitude greater in virtual hosting environments. These include control, security, reliability, and performance monitoring[xvi]. Of course, new visualization technologies and standards have been developed to address these but require new IT procedures and tools that can be incompatible with standard operating procedures in a self-hosting scenario[xvii]. So the full implication of the change has to be considered along with business value proposition.
From Virtual Hosting to Cloud Computing
As important and fascinating as virtual hosting is to the evolution of the Internet, it is not by itself sufficient to ensure success or propel a Web 3.0 gestalt. Even with virtual resources with potential unlimited scalability and promised three sigma availability, ones actual results may differ. For success in realizing this potential and promise, the primary effort comes down to web architecture[xviii]. This means actually designing the service to be elastic and highly concurrent. We will find in this series of posts that this will require a new computing paradigm that is actually well understood and practiced by everyone except computer scientist. To understand the implications of this paradigm, we will need to enlarge our scope of cloud computing beyond utility hosting to encompass how web site implementations and actual computing will change[xix]. This is what we will address in the next post and will begin with Google, who is the defacto architect of the current Cloud[xx] and appears to be moving in different direction from conventional approaches being implemented by Amazon, Yahoo, and Microsoft[xxi]. How can writing apps in Python be the basis of world domination? If we have learned anything from our history (as irreverent as it has been)[xxii], this is a clue we should probably not ignore.
Banerjee, U. (2009, 26-November). Cloud Computing Service: Amazon EC2 vs Google GAE. From Cloud Computing Journal: http://cloudcomputing.sys-con.com/node/1200706 Burrows, M. (2006, 7-November). The Chubby Lock Service for Loosely-Coupled Distributed Systems. From Google Research Publications: http://labs.google.com/papers/chubby.html DataPlex. (2010, 7-January). Cloud Computing Issues. From Dataplex.com: http://www.dataplex.com/blog/index.php/2010/01/07/cloud-computing-issues/ Dedicated Server School. (2009, 16-August). Business Benefits of Cloud Computing. From Dedicated Server School: http://www.serverschool.com/cloud-computing/business-benefits-of-cloud-computing/ Dugal, I. S., Alexander, S., & Hellman, J. (2010, 15-July). Software as a Service. From WikiInvest: http://www.wikinvest.com/concept/Software_as_a_Service Fogarty, K. (2010, 14-July). Cloud Computing: Today’s Four Favorite Flavors, Explained. From ITWorld: http://www.itworld.com/saas/113387/cloud-computing-todays-four-favorite-flavors-explained Gedda, R. (2010, 24-February). Open source helps Facebook achieve massive app scalability. From CIO: http://www.cio.com.au/article/337284/open_source_helps_facebook_achieve_massive_app_scalability/ Grehan, R. (2008, 8-August). Inside Amazon Web Services. From Info World: Cloud Computing: http://www.infoworld.com/d/cloud-computing/inside-amazon-web-services-421 High Scalability. (2008, 3-September). Some Facebook Secrets to Better Operations. From High Scalability: http://highscalability.com/some-facebook-secrets-better-operations Houghton, J. (2010, 25-July). Back to the Future: Monitoring the Cloud. From Cloud Computing Journal: http://cloudcomputing.sys-con.com/node/1475427 Houghton, J. (2010, 16-June). Cloud Computing Journal. From Business Value and Cloud Computing: http://cloudcomputing.sys-con.com/node/1433147 Houghton, J. (2010, 7-July). Virtualization Journal. From Virtualization Does Not a Cloud Make: http://virtualization.sys-con.com/node/1455031 Knorr, E., & Gruman, G. (2009, 5-May). What cloud computing really means. From Info World, Cloud Computing: http://www.infoworld.com/d/cloud-computing/what-cloud-computing-really-means-031 Kraft, T. (2010, 02-July). Clouds of Hadoop: How Map Reduce Changed the World . From Mind Before You Mine: https://mindbeforeyoumine.com/2010/07/02/clouds-of-hadoop/ Kraft, T. (2010, 25-June). Send In the Clouds: Old Metaphor Gets New Life. From Mind Before You Mine: https://mindbeforeyoumine.com/2010/06/25/send-in-the-clouds/ Marshall, D. (2008, 02-August). GoGrid wants to be the new face for cloud computing. From InfoWorld Visualization: http://www.infoworld.com/d/virtualization/gogrid-wants-be-new-face-cloud-computing-096?r=677&r=572 Patton, P. C., & Hersh, C. I. (2003, April). Asynchronous Non-Preemptive Tasking for Parallel and Distributed Systems. From A Quantitative Methods/Computer Science White Paper: http://184.108.40.206/WhitePapers/QMCS/ANT.html Ricadela, A. (2007, 16-November). Computing Heads for the Clouds. From Bloomberg Businessweek: http://www.businessweek.com/technology/content/nov2007/tc20071116_379585.htm Rothschild, J. (2009, 13-October). Why are Facebook, Digg, and Twitter so hard to scale? From High Scalability: http://highscalability.com/blog/2009/10/13/why-are-facebook-digg-and-twitter-so-hard-to-scale.html Schonfeld, E. (2010, 7-September). As Digg Struggles, VP Of Engineering Is Shown The Door. From TechCrunch: http://techcrunch.com/2010/09/07/digg-struggles-vp-engineering-door/ Staten, J. (2010, 02-August). To Get Cloud Economics Right, Think Small, Very, Very Small. From James Staten’s Blog: http://blogs.forrester.com/james_staten/10-08-02-get_cloud_economics_right_think_small_very_very_small