Cloud Computing: Introduction, Evolution
Cloud Computing can be defined as delivering computing power (CPU, RAM, Network Speeds, Storage OS software) a service over a network (usually on the internet) rather than physically having the computing resources at the customer location.
Whenever you travel through a bus or train, you take a ticket for your destination and hold back to your seat till you reach your destination. Likewise other passengers also takes ticket and travel in the same bus with you and it hardly bothers you where they go. When your stop comes you get off the bus thanking the driver. Cloud computing is just like that bus, carrying data and information for different users and allows to use its service with minimal cost.
The term “Cloud” came from a network design that was used by network engineers to represent the location of various network devices and there inter-connection. The shape of this network design was like a cloud.
With increase in computer and Mobile user’s, data storage has become a priority in all fields. Large and small scale businesses today thrive on their data & they spent a huge amount of money to maintain this data. It requires a strong IT support and a storage hub. Not all businesses can afford high cost of in-house IT infrastructure and back up support services. For them Cloud Computing is a cheaper solution. Perhaps its efficiency in storing data, computation and less maintenance cost has succeeded to attract even bigger businesses as well.
Cloud computing decreases the hardware and software demand from the user’s side. The only thing that user must be able to run is the cloud computing systems interface software, which can be as simple as Web browser, and the Cloud network takes care of the rest. We all have experienced cloud computing at some instant of time, some of the popular cloud services we have used or we are still using are mail services like gmail, hotmail or yahoo etc.
While accessing e-mail service our data is stored on cloud server and not on our computer. The technology and infrastructure behind the cloud is invisible. It is less important whether cloud services are based on HTTP, XML, Ruby, PHP or other specific technologies as far as it is user friendly and functional. An individual user can connect to cloud system from his/her own devices like desktop, laptop or mobile.
Cloud computing harnesses small business effectively having limited resources, it gives small businesses access to the technologies that previously were out of their reach. Cloud computing helps small businesses to convert their maintenance cost into profit. Let’s see how?
In an in-house IT server, you have to pay a lot of attention and ensure that there are no flaws into the system so that it runs smoothly. And in case of any technical glitch you are completely responsible; it will seek a lot of attention, time and money for repair. Whereas, in cloud computing, the service provider takes the complete responsibility of the complication and the technical faults.
Benefits of Cloud Computing
The potential for cost saving is the major reason of cloud services adoption by many organizations. Cloud computing gives the freedom to use services as per the requirement and pay only for what you use. Due to cloud computing it has become possible to run IT operations as a outsourced unit without much in-house resources.
Following are the benefits of cloud computing:
- Lower IT infrastructure and computer costs for users
- Improved performance
- Fewer Maintenance issues
- Instant software updates
- Improved compatibility between Operating systems
- Backup and recovery
- Performance and Scalability
- Increased storage capacity
- Increase data safety
Types of Clouds
There are four different cloud models that you can subscribe according to business needs:
- Private Cloud: Here, computing resources are deployed for one particular organization. This method is more used for intra-business interactions. Where the computing resources can be governed, owned and operated by the same organization.
- Community Cloud: Here, computing resources are provided for a community and organizations.
- Public Cloud: This type of cloud is used usually for B2C (Business to Consumer) type interactions. Here the computing resource is owned, governed and operated by government, an academic or business organization.
- Hybrid Cloud: This type of cloud can be used for both type of interactions – B2B (Business to Business) or B2C ( Business to Consumer). This deployment method is called hybrid cloud as the computing resources are bound together by different clouds.
The evolution of cloud computing can be bifurcated into three basic phases:
- The Idea Phase: This phase incepted in the early 1960s with the emergence of utility and grid computing and lasted till pre-internet bubble era. Joseph Carl Robnett Licklider was the founder of cloud computing.
- The Pre-cloud Phase: The pre-cloud phase originated in 1999 and extended to 2006. In this phase the internet as the mechanism to provide Application as Service.
- The Cloud Phase: The much talked about real cloud phase started in the year 2007 when the classification of IaaS, PaaS, and SaaS got formalized. The history of cloud computing has witnessed some very interesting breakthroughs launched by some of the leading computer/web organizations of the world.
The trend toward cloud computing started in the late 1980s with the concept of grid computing when, for the first time, a large number of systems were applied to a single problem, usually scientific in nature and requiring exceptionally high levels of parallel computation. In Europe , long distance optical networks are used to tie multiple universities into a massive computing grid in order that resources could be shared and scaled for large scientific calculations.
Grid computing provided a virtual pool of computation resources but it’s different than cloud computing. Grid computing specifically refers to leveraging several computers in parallel to solve a particular, individual problem, or to run a specific application. Cloud computing, on the other hand, refers to leveraging multiple resources, including computing resources, to deliver a unified “service” to the end user.
In grid computing, the focus is on moving a workload to the location of the needed computing resources, which are mostly remote and are readily available for use. Usually a grid is a cluster of servers on which a large task could be divided into smaller tasks to run in parallel. From this point of view, a grid could actually be viewed as just one virtual server. Grids also require applications to conform to the grid software interfaces.
In a cloud environment, computing and extended IT and business resources, such as servers, storage, network, applications and processes, can be dynamically shaped or carved out from the underlying hardware infrastructure and made available to a workload. In addition, while a cloud can provision and support a grid, a cloud can also support non-grid environments, such as a three-tier Web architecture running traditional or Web 2.0 applications
In the 1990s, the concept of virtualization was expanded beyond virtual servers to higher levels of abstraction—first the virtual platform, including storage and network resources, and subsequently the virtual application, which has no specific underlying infrastructure. Utility computing offered clusters as virtual platforms for computing with a metered business model.
More recently software as a service (SaaS) has raised the level of virtualization to the application, with a business model of charging not by the resources consumed but by the value of the application to subscribers. The concept of cloud computing has evolved from the concepts of grid, utility and SaaS. It is an emerging model through which users can gain access to their applications from anywhere, at any time, through their connected devices. These applications reside in massively scalable data centers where compute resources can be dynamically provisioned and shared to achieve significant economies of scale.
Companies can choose to share these resources using public or private clouds, depending on their specific needs. Public clouds expose services to customers, businesses and consumers on the Internet. Private clouds are generally restricted to use within a company behind a firewall and have fewer security exposures as a result. The strength of a cloud is its infrastructure management, enabled by the maturity and progress of virtualization technology to manage and better utilize the underlying resources through automatic provisioning, re-imaging, workload rebalancing, monitoring, systematic change request handling and a dynamic and automated security and resiliency platform.
As more enterprises add cloud computing the level of applications is migrating toward more mission critical and SaaS will become a mainstay of IT strategies.
A number of companies, including Google, Microsoft, Amazon, and IBM, have built enormous datacenter-based computing capacity all over the world to support their Web service offerings (search, instant messaging, web-based retail). With this computing infrastructure in place these companies are already poised to offer new cloud-based software applications.
Large enterprise software solutions, such as ERP (Enterprise Resource Planning) applications, have traditionally only been affordable to very big enterprises with big IT budgets. However, companies that sell these solutions are finding they can reach small to medium businesses by making their very expensive, very complex applications available as Internet-based software services. This ability of SaaS to deliver expensive applications at affordable will continue to accelerate.