2What is cloud computing? In the simplest terms, cloud computing means storing and accessing data and programs over the internet instead of your computer's hard drive.In cloud computing, the word cloud is used as a metaphor for "the Internet," so the phrase cloud computing means "a type of Internet-based computing," where different services — such as servers, storage and applications — are delivered to the computers and devices through the Internet.Cloud computing is comparable to grid computing, a type of computing where unused processing cycles of all computers in a network are harnesses to solve problems too intensive for any stand-alone machine.
4Brief History of Cloud Computing In the 1960′s the concept for cloud computing was born, straight from the ideas of trail blazers John McCarthy. McCarthy wrote that “computation may someday be organized as a public utility.”Next was grid computing, the concept that came to in the early 1990′s as a way for making computing power as easy to access as an electric power grid, this idea helped to push the idea of cloud computing along for businesses to see it in effect.In 1997, the actual term “Cloud Computing” was coined by Information Systems professor Ramnath Chellappa during a lecture where he defined it at “a new computing paradigm where the boundaries of computing will be determined by economic rationale rather than technical limits alone.”. A few years later, organizations started switching from hardware to cloud services. Many were attracted to benefits like a reduction in capital cost and increased efficiency.In 1999, Salesforce.com introduced their business model of delivering enterprise applications via a website. This spured the launch of other companies to dive into the world of virtual hosting. By 2009, revenue for cloud services reached over $58.6 billion.
5Essential Characteristics of Cloud Computing On-demand self-service. A consumer can unilaterally provision computing capabilities, such as server time and network storage, as needed automatically without requiring human interaction with each service provider.Broad network access. Capabilities are available over the network and accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms (e.g., mobile phones, tablets, laptops, and workstations).Resource pooling. The provider's computing resources are pooled to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to consumer demand.Rapid elasticity. Capabilities can be elastically provisioned and released, in some cases automatically, to scale rapidly outward and inward commensurate with demand. To the consumer, the capabilities available for provisioning often appear unlimited and can be appropriated in any quantity at any time.Measured service. Cloud systems automatically control and optimize resource use by leveraging a metering capability at some level of abstraction appropriate to the type of service (e.g., storage, processing, bandwidth, and active user accounts). Resource usage can be monitored, controlled, and reported, providing transparency for both the provider and consumer of the utilized service.
7Architecture of the Cloud Physical layer: storage, serversOperating system layer: virtual machine, operating systemGrid Middleware Layer: It is the layer how multiple number of computers are inter-connected together and work together.Cloud Middleware Layer: How data are transferred between cloud and user devicesApplication Layer: User interface, application required to access the cloud.
10Software as a Service (SaaS) Cloud application services or “Software as a Service” (SaaS) are probably the most popular form of cloud computing and are easy to use.SaaS uses the Web to deliver applications that are managed by a third-party vendor and whose interface is accessed on the clients’ side. Most SaaS applications can be run directly from a Web browser, without any downloads or installations required. SaaS eliminates the need to install and run applications on individual computers.
11Platform as a Service (PaaS) The most complex of the three, cloud platform services or “Platform as a Service” (PaaS) deliver computational resources through a platform.What developers gain with PaaS is a framework they can build upon to develop or customize applications. PaaS makes the development, testing, and deployment of applications quick, simple, and cost-effective, eliminating the need to buy the underlying layers of hardware and software.
12Infrastructure as a Service (IaaS) Cloud infrastructure services, known as “Infrastructure as a Service” (IaaS), deliver computer infrastructure (such as a platform virtualization environment), storage, and networking.Instead of having to purchase software, servers, or network equipment, users can buy these as a fully outsourced service that is usually billed according to the amount of resources consumed. Basically, in exchange for a rental fee, a third party allows you to install a virtual server on their IT infrastructure.
17Future of Cloud Computing Cloud computing has reached a maturity that leads it into a productive phase.Most of the main issues with Cloud computing have been addressed to a degree that Clouds have become interesting for full commercial exploitation.The problems listed above have not actually been solved, only the according risks can be tolerated to a certain degree.Cloud computing is therefore still as much a research topic, as it is a market offering.