What Is Cloud Computing?
What Is Cloud Computing?
What Is Cloud Computing?
Past trends:
Yawn. Today Google rules a total database of hundreds of petabytes, swelled every 24 hours by terabytes of Gmails, MySpace pages, and dancing-doggy videos a relentless march of daily deltas, each larger than the whole Web of a decade ago. To make sense of it all, Page and Brin with Microsoft, Yahoo, and Barry "QVC" Diller's Ask.com hot on their heels are frantically taking the computer-on-a-chip and multiplying it, in massively parallel arrays, into a computer-on-a-planet. The data centers these companies are building began as exercises in making the planet's ever-growing data pile searchable. Now, turbocharged with billions in Madison Avenue mad money for targeted advertisements, they're morphing into general-purpose computing platforms, vastly more powerful than any built before. All those PCs are still there, but they have less and less to do, as Google and the others take on more and more of the duties once delegated to the CPU. Optical networks, which move data over vast distances without degradation, allow computing to migrate to wherever power is cheapest. Thus, the new computing architecture scales across Earth's surface. Ironically, this emerging architecture is interlinked by the very technology that was supposed to be Big Computing's downfall: the Internet. This change is as momentous as the industrial-age shift from craft production to mass manufacture, from individual workers in separate shops turning out finished products step by step to massive factories that break up production into thousands of parts and perform them simultaneously. No single computer could update millions of auctions in real time, as eBay does, and no one machine could track thousands of stock portfolios made up of offerings on all the world's exchanges, as Yahoo does. And those are, at most, terascale tasks. Page and Brin understood that with clever software, scores of thousands of cheap computers working in parallel could perform petascale tasks like searching everything Yahoo, eBay, Amazon.com, and anyone else could shovel onto the Net. Google
appears to have attained one of the holy grails of computer science: a scalable massively parallel architecture that can readily accommodate diverse software. Trends that shaped cloud computing: 1. Amazon web services hiccuped a few times but continued to set the pace for public clouds 2. clouds grew and alternatives to VMwaPrivatere matured 3. Cloud productivity apps became good enough 4. Tools for wrangling big data showed that volume of data is only part of the equation
I COMPUTED LONELY AS A CLOUD Although cloud computing is an emerging field of computer science, the idea has been around for a few years. It's called cloud computing because the data and applications exist on a "cloud" of Web servers. When talking about a cloud computing system, it's helpful to divide it into two sections: the front endand the back end. They connect to each other through a network, usually the Internet. The front end is the side the computer user, or client, sees. The back end is the "cloud" section of the system. The front end includes the client's computer (or computer network) and the application required to access the cloud computing system. Not all cloud computing systems have the same user interface. Services like Web-based email programs leverage existing Web browsers like Internet Explorer or Firefox. Other systems have unique applications that provide network access to clients. On the back end of the system are the various computers, servers and data storage systems that create the "cloud" of computing services. In theory, a cloud computing system could include practically any computer program you can imagine, from data processing to video games. Usually, each application will have its own dedicated server. A central server administers the system, monitoring traffic and client demands to ensure everything runs smoothly. It follows a set of rules called protocols and uses a special kind of software called middleware. Middleware allows networked computers to communicate with each other. Most of the time, servers don't run at full capacity. That means there's unused processing power going to waste. It's possible to fool a physical server into thinking it's actually multiple servers, each running with its own independent operating system. The technique is called server virtualization. By maximizing the output of individual servers, server virtualization reduces the need for more physical machines. If a cloud computing company has a lot of clients, there's likely to be a high demand for a lot of storage space. Some companies require hundreds of digital storage devices. Cloud computing systems need at least twice the number of storage devices it requires to keep all its clients' information stored. That's because these devices, like all computers, occasionally break down. A cloud computing system must make a copy of all its clients' information and store it on other devices. The copies enable the central server to access backup machines to retrieve data that otherwise would be unreachable. Making copies of data as a backup is called redundancy.
Layers
Once an internet protocol connection is established among several computers, it is possible to share services within any one of the following layers.
Client Users access cloud computing using networked client devices, such as desktop computers,laptops, tablets and smartphones. Some of these devices - cloud clients - rely on cloud computing for all or a majority of their applications so as to be essentially useless without it. Examples are thin clients and the browserbased Chromebook. Many cloud applications do not require specific software on the client and instead use a web browser to interact with the cloud application. With AJAX and HTML5 these Web user interfaces can achieve a similar or even better look and feel as native applications. Some cloud applications, however, support specific client software dedicated to these applications (e.g., virtual desktop clients and most email clients). Some legacy applications (line of business applications that until now have been prevalent in thin client Windows computing) are delivered via a screen-sharing technology.
Application
Cloud application services or "Software as a Service (SaaS)" deliver software as a service over the Internet, eliminating the need to install and run the application on the customer's own computers and simplifying maintenance and support. A cloud application is software provided as a service. It consists of the following: a package of interrelated tasks, the definition of these tasks, and the configuration files, which contain dynamic information about tasks at run-time. Cloud tasks provide compute, storage, communication and management capabilities. Tasks can be cloned into multiple virtual machines, and are accessible through application programmable interfaces (API). Cloud applications are a kind of utility computing that can scale out and in to match the workload demand. Cloud applications have a pricing model that is based on different compute and storage usage, and tenancy metrics.[33] What makes a cloud application different from other applications is its elasticity. Cloud applications have the ability to scale out and in. This can be achieved by cloning tasks in to multiple virtual machines at run-time to meet the changing work demand. Configuration Data is where dynamic aspects of cloud application are determined at run-time. There is no need to stop the running application or redeploy it in order to modify or change the information in this file.[34] SOA is an umbrella that describes any kind of service. A cloud application is a service. A cloud application meta-model is a SOA model that conforms to the SOA meta-model. This makes cloud applications SOA applications. However, SOA applications are not necessary cloud applications. A cloud application is a SOA application that runs under a specific environment, which is the cloud computing environment (platform). This environment is characterized by horizontal scalability, rapid provisioning, ease of access, and flexible prices. While
SOA is a business model that addresses the business process management, cloud architecture addresses many technical details that are environment specific, which makes it more a technical model Platform Cloud platform services, also known as platform as a service (PaaS), deliver a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications.[35] It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers.[36][37] Cloud computing is becoming a major change in the computing industry, and one of the most important parts of this change is the shift of cloud platforms. Platforms let developers write certain applications that can run in the cloud, or even use services provided by the cloud. There are different names being used for platforms which can include the ondemand platform, or Cloud 9. Regardless of the nomenclature, they all have great potential in developing, and when development teams create applications for the cloud, each must build its own cloud platform. Infrastructure Cloud infrastructure services, also known as "infrastructure as a service" (IaaS), deliver computer infrastructure typically a platform virtualization environment as a service, along with raw (block) storage and networking. Rather than purchasing servers, software, data-center space or network equipment, clients instead buy those resources as a fully outsourced service. Suppliers typically bill such services on a utility computing basis; the amount of resources consumed (and therefore the cost) will typically reflect the level of activity. Server The Layers contain both hardware and software, these are the layers on the server. products that are specifically designed for the delivery of cloud services, including multi-core processors, cloud-specific operating systems and combined offerings.
Deployment models
Public cloud A public cloud is one based on the standard cloud computing model, in which a service provider makes resources, such as applications and storage, available to the general public over the Internet. Public cloud services may be free or offered on a pay-per-usage model. Community cloud Community cloud shares infrastructure between several organizations from a specific community with common concerns (security, compliance, jurisdiction, etc.), whether managed internally or by a third-party and hosted internally or externally. The costs are spread over fewer users than a public cloud (but more than a private cloud), so only some of the cost savings potential of cloud computing are realized. Hybrid cloud Hybrid cloud is a composition of two or more clouds (private, community, or public) that remain unique entities but are bound together, offering the benefits of multiple deployment models. It can also be defined as multiple cloud systems that are connected in a way that allows programs and data to be moved easily from one deployment system to another. Private cloud Private cloud is infrastructure operated solely for a single organization, whether managed internally or by a third-party and hosted internally or externally. They have attracted criticism because users "still have to buy, build, and manage them" and thus do not benefit from less hands-on management,essentially "[lacking] the economic model that makes cloud computing such an intriguing concept".
Characteristics
Cloud computing exhibits the following key characteristics: Empowerment of end-users of computing resources by putting the provisioning of those resources in their own control, as opposed to the control of a centralized IT service (for example) Agility improves with users' ability to re-provision technological infrastructure resources. Application programming interface (API) accessibility to software that enables machines to interact with cloud software in the same way the user interface facilitates interaction between humans and computers. Cloud computing systems typically use REST-based APIs. Cost is claimed to be reduced and in a public cloud delivery model capital expenditure is converted to operational expenditure.[12] This is purported to lower barriers to entry, as infrastructure is typically provided by a thirdparty and does not need to be purchased for one-time or infrequent intensive computing tasks. Pricing on a utility computing basis is finegrained with usage-based options and fewer IT skills are required for implementation (in-house). Device and location independence enable users to access systems using a web browser regardless of their location or what device they are using (e.g., PC, mobile phone). As infrastructure is off-site (typically provided by a third-party) and accessed via the Internet, users can connect from anywhere. Virtualization technology allows servers and storage devices to be shared and utilization be increased. Applications can be easily migrated from one physical server to another. Multi-tenancy enables sharing of resources and costs across a large pool of users thus allowing for: Centralization of infrastructure in locations with lower costs (such as real estate, electricity, etc.) Peak-load capacity increases (users need not engineer for highest possible load-levels) Utilisation and efficiencyimprovements for systems that are often only 1020% utilised.[15] Reliability is improved if multiple redundant sites are used, which makes well-designed cloud computing suitable for business continuityand disaster recovery. Scalability and Elasticity via dynamic ("on-demand")provisioning of resources on a fine-grained, self-service basis near real-time, without users having to engineer for peak loads. Performance is monitored, and consistent and loosely coupled architectures are constructed using web services as the system interface.
Security could improve due to centralization of data, increased securityfocused resources, etc., but concerns can persist about loss of control over certain sensitive data, and the lack of security for stored kernels. Security is often as good as or better than other traditional systems, in part because providers are able to devote resources to solving security issues that many customers cannot afford. However, the complexity of security is greatly increased when data is distributed over a wider area or greater number of devices and in multi-tenant systems that are being shared by unrelated users. In addition, user access to security audit logs may be difficult or impossible. Private cloud installations are in part motivated by users' desire to retain control over the infrastructure and avoid losing control of information security. Maintenance of cloud computing applications is easier, because they do not need to be installed on each user's computer.
connect to the cloud system. You wouldn't need a large hard drive because you'd store all your information on a remote computer. Corporations that rely on computers have to make sure they have the right software in place to achieve goals. Cloud computing systems give these organizations company-wide access to computer applications. The companies don't have to buy a set of software or software licenses for every employee. Instead, the company could pay a metered fee to a cloud computing company. Servers and digital storage devices take up space. Some companies rent physical space to store servers and databases because they don't have it available on site. Cloud computing gives these companies the option of storing data on someone else's hardware, removing the need for physical space on the front end. Corporations might save money on IT support. Streamlined hardware would, in theory, have fewer problems than a network of heterogeneous machines and operating systems. If the cloud computing system's back end is a grid computing system, then the client could take advantage of the entire network's processing power. Often, scientists and researchers work with calculations so complex that it would take years for individual computers to complete them. On a grid computing system, the client could send the calculation to the cloud for processing. The cloud system would tap into the processing power of all available computers on the back end, significantly speeding up the calculation.
The counterargument to this position is that the companies offering cloud computing services live and die by their reputations. It benefits these companies to have reliable security measures in place. Otherwise, the service would lose all its clients. It's in their interest to employ the most advanced techniques to protect their clients' data. Privacy is another matter. If a client can log in from any location to access data and applications, it's possible the client's privacy could be compromised. Cloud computing companies will need to find ways to protect client privacy. One way is to use authentication techniques such as user names and passwords. Another is to employ an authorization format -- each user can access only the data and applications relevant to his or her job. Some questions regarding cloud computing are more philosophical. Does the user or company subscribing to the cloud computing service own the data? Does the cloud computing system, which provides the actual storage space, own it? Is it possible for a cloud computing company to deny a client access to that client's data? Several companies, law firms and universities are debating these and other questions about the nature of cloud computing. How will cloud computing affect other industries? There's a growing concern in the IT industry about how cloud computing could impact the business of computer maintenance and repair. If companies switch to using streamlined computer systems, they'll have fewer IT needs. Some industry experts believe that the need for IT jobs will migrate to the back end of the cloud computing system. Another area of research in the computer science community is autonomic computing. An autonomic computing system is self-managing, which means the system monitors itself and takes measures to prevent or repair problems. Currently, autonomic computing is mostly theoretical. But, if autonomic computing becomes a reality, it could eliminate the need for many IT maintenance jobs.
Conclusion:
In the long run, I do see value in cloud computing. If economic woes continue to plague the world as they have in the past few years, cloud computing is poised to make a real impact on businesses of all sizes. It gives smaller businesses a chance to play on a more level playing field with the big boys, and it helps the big boys cut costs and trim technology needs to compete on a more personal level with customers. Those who dismiss it as "just another trend" are likely to miss out on the opportunities that cloud computing provides for organizations of all sizes. Take a look back at Microsoft in the early 1990s to see how they initially missed the boat with the Internet. A cousin of mine is one of the original Microsoft millionaires: He lived and breathed Microsoft during its early years. I'll never forget how, in 1993, he calmly told me that the Internet would "never" take off. "What would you use it for?" he asked me. Marc Andreesen, of course, answered that question with a resounding "Everything!" and created Netscape, introducing the Web to millions and launching the Internet IPO boom on Wall Street in the late 1990s. Microsoft ate a lot of crow with that one and played a lot of catchup before it captured the Internet lead with Windows Internet Explorer.
The question isn't really "What can cloud computing do for me?" so much as it is "How the heck am I going to manage the use of cloud computing in my organization?" If you're not asking that yet, you should be. A paradigm shift to cloud computing will affect many different sub-categories in computer industry such as software companies, internet service providers (ISPs) and hardware manufacturers. While it is relatively easy to see how the main software and internet companies will be affected by such a shift in Ginger's chunky nuggets, it is more difficult to predict how companies in the internet and hardware sectors will be affected.
Sources:
Bogatin, Donna. "Google CEO's new paradigm: 'cloud computing and advertising go hand-in-hand.'" ZDNet. Aug. 23, 2006. Retrieved March 11, 2008. http://blogs.zdnet.com/micro-markets/?p=369 Brodkin, Jon. "IBM unveils 'cloud computing.'" Network World. Nov. 19, 2007. Vol. 24, Iss. 45. pg. 10. Carr, Nicholas. "'World Wide Computer' is on horizon." USA Today. February 25, 2008. Hickins, Michael. "Cloud Computing Gets Down to Earth." eWeek. January 21, 2008. pg. 14. "IBM Introduces Ready-to-Use Cloud Computing." IBM. Nov. 15, 2007. http://www-03.ibm.com/press/us/en/pressrelease/22613.wss Lohr, Steve. "Cloud Computing and EMC Deal." New York Times. Feb. 25, 2008. pg. C 6.
Lohr, Steve. "Google and I.B.M. Jon in 'Cloud Computing' Research." New York Times. Oct. 8, 2007. pg. C 8. Lohr, Steve. "I.B.M. to Push 'Cloud Computing,' Using Data From Afar." New York Times. Nov. 15, 2007. pg. C 7. McAllister, Neil. "Server virtualization." InfoWorld. Feb. 12, 2007. Retrieved March 12, 2008. http://www.infoworld.com/article/07/02/12/07FEvirtualserv_1.html Markoff, John. "An Internet Critic Who Is Not Shy About Ruffling the Big Names in High Technology." New York Times. Apr. 9, 2001. pg. C 6. Markoff, John. "Software via the Internet: Microsoft in 'Cloud' Computing." New York Times. Sep. 3, 2007. pg. C 1. "Middleware." Carnegie Mellon Software Engineering Institute. Retrieved March 12, 2004. http://www.sei.cmu.edu/str/descriptions/middleware_body.html. Naone, Erica. "Computer in the Cloud." Technology Review. Sept. 18, 2007. Retrieved March 12, 2008. http://www.technologyreview.com/Infotech/19397/? a=f "Report sees big shift in IT delivery." IT Week. London. Nov. 5, 2007. Swanson, Bret and Gilder, George. "Unleashing the 'Exaflood.'" Wall Street Journal. Feb. 22, 2008. pg. A 15. "The future of IT? It's not all bad news, Nick Carr says." Network World. Jan. 14, 2008. Vol. 25, Iss. 2. pg. 8.