As information technology companies describe new ways to offer infrastructure to businesses, the term 'cloud computing' is becoming more common - but what exactly is it? The definition of the internet is quite simple and easily understood: a freely accessible network of servers for information, services and commerce. Cloud computing has no single, clear definition, partly because it is difficult to explain. As a consequence, it is not easy to see the advantages, disadvantages and how a particular company might exploit cloud computing.
Predictions by Gartner Research for 2011 and beyond suggest that, by 2012, one-fifth of all companies will no longer own their IT (information technology) assets and that, by 2015, information-smart businesses will increase recognised IT spending per head by 60 per cent. But, at the same time, in 2011 Gartner predicts a clash between cloud computing and more conventional ways of providing IT.
Although the idea for this type of computing has been around for at least a decade, it is only now that there is reliable software and infrastructure readily available to support it. The term 'cloud computing' comes from a way the IT industry has historically explained how systems function. There is what you know a lot about and have control over, usually a local computer (a PC, Apple Macintosh or other workstation), which is connected to something else that you do not have to worry about - and this undefined 'something' is depicted as a cloud (Fig.1). Connection between the two is usually through a network, although sometimes the diagram refers to processes coexisting in a single computer. What goes on in the cloud is often not explained but, whatever it is, it is assumed to work. In fact the technology involved is not new, although it is continually being improved as fresh commercial demands are met by more development.
Those instances not normally considered to be cloud computing are those where everything takes place within one computer, or where there is a single server providing multiple services. The latter case is common where there are many virtual private servers (VPSs) on a single physical server at an internet service provider (ISP), sometimes presented as a 'cloud' even though this is not really the case. The essential characteristics of cloud computing are that processing is carried out remotely from the user, using variable amounts of metered resource, with payment on the basis of a subscription or the resources used, rather like a pay-per-use mobile telephone (Fig.2). In business terms, it makes a user independent of hardware and moves IT expenditure from capital expenditure (capex) to operating expenditure (opex).
There are three basic types of cloud, all delivered over a network connection as computing services to the end-user.
Infrastructure clouds, which are also referred to as Infrastructure as a Service (IaaS), are where hardware resources - processing power and storage - are made available to the user, thereby removing the need for companies to have their own servers. The correct usage of the term refers either to data and storage clouds or compute clouds, which provide the infrastructure on which applications can be built.
Data and storage clouds (for example, Amazon S3) offer reliable access for varying amounts of data. Amazon's Simple Storage Service (S3) is built with a minimal feature set and allows reading, writing and deletion of files from 1byte to 5terabytes each. They are firewall-protected and have high reliability (designed for 99.99 per cent reliability).
Compute Clouds provide environments that include processing power, but there are many different models. The important characteristic is that they offer scalable, on-demand resources to run code that has been developed to use them. There are various restrictions on what they will do (languages and types of storage, for example) but they can offer an organisation reliable and flexible computing with high availability. Users often do not know where the code is executed or the data stored (which can be a problem) but the point is that it will be executed and stored remotely. Typical examples are Amazon's Elastic Compute Cloud (EC2), the Google App Engine and the Rackspace Cloud (see panel for other examples of cloud computing).
Sometimes vendors use cloud technology to offer scalable server environments built with cloud components. In this case the hybrid offering is similar to using a VPS but with the benefit of being able to have more than one instance of the server if required. There is no change needed in the software used, whether it is proprietary or written in-house, as the cloud just provides the underlying infrastructure for a given level of service.
Platform Clouds, which are also referred to as Platform as a Service (PaaS), feature computational resources that are made available on a platform for which applications and services can be developed. While this was once a separate class of service, the name survives despite the boundary between the latest compute clouds and PaaS clouds having almost disappeared. The difference is now more between environments that deliver application functionality (see Software Clouds) and those which do not. The Google App Engine is sometimes classed as a platform, rather than infrastructure.
Software Clouds, also referred to as Software as a Service (SaaS), are where a single application is made available as a service, possibly by using one or both of the types of cloud service described above. This is the oldest type of internet-based service and some vendors have always operated in this way. Typical examples are the Salesforce.com customer relationship management (CRM) system, Google Docs (office documents), and SAP Business by Design (a business management system). In this case the end user buys precisely the service that is advertised. For designers, Autodesk is one of the more advanced in terms of its cloud-based offering, which includes the Project Neon rendering service and Bluestreak collaboration software.
Cloud computing overcomes many problems inherent with conventional IT resourcing, but the newer technology is not without its risks. First, company data (and possibly also intellectual property) will be stored remotely, so organisations need to be sure that is it in the right jurisdiction for their type of work, that the service provider complies with all relevant regulations and that the provider is open to security audit. This could include questions about any of their staff who might access to the organisation's data - which may or may not be encrypted.