As usual there is always a lot of hype around the hottest buzz word in the IT industry at the moment – ‘THE CLOUD’. This hype is somewhat similar to Web 2.0 but in a different context. Even though the buzz word is on the tip of most IT professionals and senior executives tongues, before we talk about the potential benefits and risks of Cloud Computing, lets get a rundown on what Cloud Computing actually is.
What is Cloud Computing?
Cloud computing refers to the provision of computational resources on demand via a computer network.*
Cloud computing can be compared to the supply of electricity and gas, or the provision of telephone, television and postal services. All of these services are presented to the users in a simple way that is easy to understand without the users needing to know how the services are provided. This simplified view is called an abstraction. Similarly, cloud computing offers computer application developers and users an abstract view of services that simplifies and ignores much of the details and inner workings. A provider’s offering of abstracted Internet services is often called “The Cloud”.*
The leading cloud computing service providers are companies such as Google, Salesforce, Microsoft, Zoho, etc. The technology is evolving all the time, with more and more innovative solutions, services and applications being developed by more and more companies who want a piece of the ever-growing-huge pie!
Characteristics of Cloud Computing
The key characteristic of cloud computing is that the computing is “in the cloud”; that is, the processing (and the related data) is not in a specified, known or static place(s). This is in contrast to a model in which the processing takes place in one or more specific servers that are known. All the other concepts mentioned are supplementary or complementary to this concept.
The two most significant components of cloud computing architecture are known as the front end and the back end.
- The front end is the part seen by the client, i.e. the computer user. This includes the client’s network (or computer) and the applications used to access the cloud via a user interface such as a web browser.
- The back end of the cloud computing architecture is the ‘cloud’ itself, comprising various computers, servers and data storage devices.
Cloud computing incorporates several different types of computing layers through which services can be provided:
A cloud client consists of computer hardware and/or computer software that relies on cloud computing for application delivery, or that is specifically designed for delivery of cloud services and that, in either case, is essentially useless without it. Examples include some computers, phones and other devices, operating systems and browsers.
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. People tend to use the terms “SaaS” and “cloud” interchangeably, when in fact they are two different things.
Cloud platform services or “Platform as a Service (PaaS)” deliver a computing platform and/or solution stack as a service, often consuming cloud infrastructure and sustaining cloud applications. It facilitates deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers.
Cloud infrastructure services, also known as “Infrastructure as a Service (IaaS)“, delivers computer infrastructure – typically a platform virtualization environment – as a service. 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 and amount of resources consumed (and therefore the cost) will typically reflect the level of activity.
The servers layer consists of computer hardware and/or computer software products that are specifically designed for the delivery of cloud services, including multi-core processors, cloud-specific operating systems and combined offerings.
What are the benefits of Cloud Computing?
- Users can avoid capital expenditure on hardware, software, and other peripheral services, when they only pay a provider for those utilities they use;
- Consumption is billed as a utility or subscription with little or no upfront cost;
- Immediate access to a broad range of applications, that may otherwise be out of reach, due to: The lowering barriers to entry; Shared infrastructure, and therefore lower costs; Lower management overhead.
- Users will have the option to terminate a contract at any time, avoiding return on investment risk and uncertainty.
- Greater flexibility and availability of ‘shared’ information, enabling collaboration from anywhere in the world – with an internet connection.
What are the associated risks to Cloud computing?
- Cloud computing does not allow users to physically possess the storage of their data which leaves responsibility of data storage and control in the hands of their provider;
- Cloud Computing could limit the freedom of users and make them dependent on the cloud computing provider;
- Privileged user access – how do you control who has access to what information?
- Security of sensitive and personal information lay with the vendor. How do you explain this to your customers when their data is compromised without sounding like you’re ‘passing the buck’?
- From a business continuity stand point, can you rely on each vendor to have adequate resilience arrangements in place?
- Long-term viability — ask what will happen to data if the company goes out of business; how will data be returned and in what format?