Introduction to cloud computing

The two words in the phrase cloud computing have the following interpretations:
* Cloud: As a noun, this is a metaphor for the Internet, and as an adjective it means pertaining to the Internet. This usage derives from the cloud symbols that represent the Internet on diagrams.
* Computing: Any IT activity carried out:
** When using "a local server or a personal computer", which implies that the IT resources are under the exclusive control of the user.
** To "store, manage, and process data",
* Access to the resources is:
** Controlled by the entity, and restricted by them to their authorised users.
** Delivered via the Internet to all of these users.
* The resources are:
** Hosted by a service provider on behalf of the entity.
** Dedicated to their exclusive use.
* Data processed by the resources is:
** Private to the entity and its associates.
** Entered or collected by them, or automatically produced for them.
Depending on the context, cloud computing can mean:
* Access to and use of the resources.
* The hosted resources or services themselves.
* The computing execution carried out by the services.
* Technology used for the provision of the services.
Typical versus essential characteristics
As well as the above essential features, there are several other characteristics that are typical of some types of cloud computing.
Consumption features
The cloud-computing consumption model represents characteristics, such as payment, resource-sharing, scaling and access methods, that typically apply only to some examples of cloud computing, because they are optional alternatives rather than being necessary features. For example, no payment method can be an essential characteristic of cloud computing, because there are some free services, and because each different payment method is only typical of certain types of commercial service.

Internet versus network accessibility
There are several deployment models that make cloud computing available on the Internet in a variety of public or private computer systems.
Besides these, there are also IT systems that have some of the same typical characteristics and advantages as cloud computing, but that, for security reasons, are accessible only via a private network, rather than the Internet. These have been described as “cloud computing-like”, but, because of the shared features, they are sometimes included as part of cloud computing itself.
Cloud systems
The hosted resources are known as cloud resources or cloud systems, cloud databases and cloud platforms.
Cloud infrastructure includes cloud storage, cloud servers and cloud networks.
Cloud roles
The consumption and provision of cloud computing involves the following roles:
* Cloud consumer: Any person or organisation that arranges for the delivery of a cloud service, either for themselves, or for their individual users. In commercial cases, this is the customer that enters into a contract and pays for the service.
* Cloud provider: A cloud-system host that delivers cloud services to cloud consumers.
* Cloud auditor: An independent assessor that vets cloud services on behalf of potential consumers, for example to check security and privacy arrangements.
* Cloud broker: A relationship manager and negotiator that connects a cloud consumer with a single cloud provider, or that aggregates services from more than one provider to satisfy the full range of a consumer’s needs.
* Cloud carrier: An intermediary that connects consumers with the provider's cloud systems, such as an ISP that provides Internet access and connectivity.
Cloud tenants
The cloud consumers serviced by the same cloud provider are known as tenants of the provider's cloud systems, which are said to be multi-tenanted if they have many consumers, and single-tenanted if they have only one consumer.
The tenants are the entities that contract for the services, rather than their individual users. Such an entity can be an organisation with many employees, so cloud systems can have a single tenant but many users.
In the cloud
Cloud computing happens in the cloud, and:
* Cloud systems are said to be hosted or located in the cloud.
* Cloud consumers are said to operate in the cloud.
* When an organisation converts its IT management to cloud computing, it is said to move into the cloud.
Cloud of clouds
When used as a noun, the term cloud is a metaphor for the Internet, and these might be described, for example, as a public cloud.
The term cloud of clouds is used for the aggregate of the clouds hosted by several providers that co-operate in delivering cloud services.
This is not the same as all websites on the Internet, because there are many that are excluded from cloud computing.
Cloud balancing and bursting
Cloud balancing is the day-to-day use by a consumer of more than one cloud provider for load balancing, and cloud bursting is the automatic overflow of demand to a different cloud provider only at peak times.
They are used only to access cloud systems, and they aren’t part of cloud computing themselves.
Cloud datacentres
A datacentre is a facility that houses server computers. For example, a small or medium-sized organisation may place all its servers in one datacentre, and a large organisation may need to place them in several datacentres.
Cloud systems are hosted in a cloud datacentre.
Cloudware
Cloud software is also known as cloudware, and it includes cloud:
* Applications
Cloud operations use cloud engineering, which is the application of systems engineering and software engineering to the design of cloud systems, and cloud architecture, which is the structure of these systems, in terms of their components and the way they interact with each other and with external systems.
Models
Cloud computing has been described as a “model for enabling” particular types of access to and delivery of IT services.
Software as a Service
Software in the cloud
Software as a Service (SaaS) provides software that is specific to its consumer’s end-user requirements, including traditional applications, such as accounting, and email. This is the largest group of cloud services,
The host manages the software, and the infrastructure that runs this software and that stores data. It may use its own infrastructure, which is then said to be in-house or on-premise, or it may use another cloud provider for this infrastructure.
The consumers do not control the software, beyond the usual configuration settings, or the infrastructure, beyond changing the resources they use, such as the amount of disk space required for their data.
For the usual security reasons that apply when managing a datacentre, such as to mitigate against the risk of an infrastructure outage, the host will regularly backup all data, across all tenants, but consumers can also backup their own data in their own disk space.
SaaS may be accessible from a variety of cloud clients.
Desktop as a Service (DaaS) is the hosting of a desktop PC software environment, including office-productivity applications, such as word processing, by a SaaS provider. This is done so that only a thin client, with perhaps just a web browser, need be used to access all the required software, and this can be financially advantageous for the consumer. Also, it simplifies deployment and administration of the PC environment.
DaaS is also known as a cloud desktop or desktop in the cloud.
Database as a Service (DbaaS) is the hosting of database software by a SaaS provider.
These are known as cloud databases.
Identity as a Service (IDaaS) is the hosting of identity-management software by a SaaS provider.
Platform as a Service
Development platforms in the cloud
Platform as a Service (PaaS) consists of software-development and deployment platforms, known as cloud platforms, located in the cloud.
Also, with SaaS, the application is controlled by the host, whether developed by the host or by a third party, but with PaaS, the consumer controls which applications are created or deployed on the provider’s infrastructure.
Infrastructure as a Service
Hardware in the cloud
Infrastructure as a Service (IaaS) consists of hardware infrastructure that is located in the cloud. It includes cloud storage, cloud servers and cloud networks, and is also known as Hardware as a Service (HaaS).
These clouds are usually private because of the need for system and data security, and, for this reason, they will usually be behind a firewall that restricts access to a limited set of client devices.
There are IT systems that have some of the same characteristics and advantages as cloud computing, but that are accessible only through a local area network (LAN) or a wide area network (WAN), rather than the Internet. These have been described as “cloud computing-like”,
Consumption model
There are several features of cloud computing that affect consumers in terms of their day-to-day use of the services, or the way they contract for the services, or their reasons for choosing one service over another, and these have been called the consumption model. and they have been discussed using terms such as alternatives, options, generally, recurrent ideas or typically, to indicate that they don’t necessarily apply to all cloud services.
Application software
A range of cloud applications is available, including common small-business applications, such as accounting, and medium-to-large organisation line-of-business or mission-critical applications, such as CRM and ERP.
The authorised users of the hosted software include the consumer's staff, and possibly the staff of their associates, such as customers and suppliers. The private data includes confidential information entered by the users, such as financial-transaction amounts, but there could also be a publicly-accessible aspect, such as a shopping-cart feature that can be used by visitors to a retail organisation's website.
Third-party application providers
ASPs may host software that they have developed themselves, or software developed by others. The private data for this software consists of the user's created artefacts, such as word-processor documents and spreadsheet models, which are stored and managed on the provider's infrastructure.
This is part of Software as a Service.
Software production
Development environments
There are cloud services, such as the Azure Services Platform, that provide software-development environments. These are part of Platform as a Service, which is one of the cloud-computing service models. and it is part of Infrastructure as a Service.
For example, with photos in the cloud, a family can share them with members and friends that are in distributed locations, in a way that couldn’t happen with data on their PCs. The private data consists of the uploaded information, and the authorised users consist of all those given access to this information.
Potentially, this type of service could have the largest group of tenants across all providers, because any member of the general public with a device that can access the Internet can become a consumer, if only to backup data.
Internet TV
Internet TV, also known as cloud TV, is a cloud service.
The private data for the consumers of these services includes their multicast address.
Online banking
Online banking is an example of SaaS for the bank’s customers, and the private data for each consumer includes their bank account transaction information.
Besides desktop and portable computers, the cloud clients used to access this service include ATMs, online or mobile wallets, and point-of-sale terminals.
Social media and networking
Media and networking sites, such as Facebook and LinkedIn, are part of cloud computing. which provides cloud storage for an individual's music downloads from the iTunes Store in such a way that they can be accessed from any of their client devices. In this case, the private data consists of the tunes that are automatically gathered for the consumer onto their cloud storage, regardless of how they are purchased.
Online retailing
There are cloud services, such as eBay, that allow individuals to sell items on the Internet.
The private data for these services includes details of the consumer’s sale items.
Blogging
There are cloud services, such as WordPress, that enable individuals to create and maintain a weblog.
The consumers of these services control access by allowing only themselves to contribute blog topics and to respond to visitor comments, or by authorising others to do so.
The private data includes the:
* Topics that are entered from time to time.
* Comments entered by blog visitors, which can be published or suppressed by the consumer.
* Responses of the consumer.
* Details of who can read or contribute to the blog, which can be the general public, or an exclusive group.
Peer-to-peer file sharing
Cloud computing involves “using a network of remote servers hosted on the Internet”. In such a network, all participating systems are peers, which means that they are both clients and servers, and so their users are both service consumers and service providers.
For example, P2P file-sharing is part of cloud computing. At any one time, the group participating in this service consists of the users of all devices with the same file-sharing software, such as BitTorrent,
Public clouds are the most ubiquitous,
SaaS constitutes the largest group of services,
For example, the following are excluded from cloud computing:
* Publicly accessible websites that process the same data for every visitor, such as web search engines. There is no private-data aspect for these sites.
* All web pages that provide a calculation feature, but without managing private data, such as a financial institution’s loan-repayment calculator.
* All sites that only provide information, rather than a computation facility.
Advantages
There are many possible advantages of cloud computing, but they may not apply to all consumers.
Reduced costs
Cloud services paid for on a usage basis can be financially advantageous for a consumer when compared to the outright purchase, or long-term rental, of what would be a big-budget item.
Simpler capacity planning
Cloud computing moves the IT capacity-planning role from the consumer to the cloud provider, and they can be in a better position to optimise the cloud resources used by their consumers than the consumers themselves would be for their own resources.
* Mine the data for their own use.
* Share it with other organisations.
* Lock the consumer out, for example if there is a commercial dispute.
* Lock the consumer in, so that they can’t migrate to a different provider.
* Lose data, particularly if their backup practices are not adequate to cope with emergencies.
Regulatory and customer requirements
There are some issues that may prevent the use of cloud services. For example:
* Some organisations are required by regulations and laws to be responsible for the security and confidentiality of their customer's data.
* SLAs with customers and other associates may place restrictions on an organisation's IT resource-management options.
Such issues may prevent organisations from using:
* Third-party hosting
* Hosting in any given location
* A public cloud, however hosted.
Service-provider outages
Any accidental downtime, or outage, of cloud systems can affect some or all of the provider’s tenants, and so this can deprive many users of access to their IT systems. This is particularly true of large public clouds.
History
Origins
The concept
Telecom networks have been known as the cloud since at least the 1990s, and this was a symbolic metaphor used to represent the unseen network that delivered services invisibly. The term was also applied to large ATM networks in the early 1990s.
New paradigm
Cloud computing has been a paradigm shift in IT acquisition and management, from outright purchase as a product, to consumption as a service. This has involved a change from dealing with technical capacity and performance specifications when choosing a supplier and a model number that can cope with projected user demand, to dealing only with economic considerations when choosing a service.
* November 1997, the first newspaper article on the subject was published. cloud computing started to gain widespread use from 2007.
Precursor technologies
There are many technologies that were in use before cloud computing, and that are either essential for its implementation, or that have some of the same characteristics. Of course, this software runs on real computers that do actually exist, but the use of virtualisation techniques can make a relatively small computer appear to have a very large capacity, so that it can be shared by many concurrent activities. It has been available since the 1960s, when multi-user computers needed to provide a virtual memory to each process, so that they could share a relatively small real memory. Full virtualization of complete servers has been in use since the late 1960s.
Cloud computing uses virtualisation to implement independent virtual servers, with their own storage and software.<ref nameOracleSapErp/> For example, one of these, or even a network of them,<ref nameOracleSapErp/> can be made available to each of the many tenants of a public cloud, using a much smaller collection of real servers, or possibly only one server. This sharing of one server, or a small number, among very many virtual servers that each support their own tenants is one reason that cloud computing is advantageous, because there are economies of scale. It also enables flexible scaling and agile provisioning, since another virtual server can be made available instantly, because it can be done automatically, without necessarily purchasing any more equipment.
Timesharing
Timesharing, which originated in the 1960s, and which became a prominent computing model in the 1970s, involved sharing the resources of a mainframe computer among many concurrent users.
In the 1960s and 1970s, companies began to operate service bureaus that provided timesharing access for a fee.<ref name=Metaphor/>
Client-server computing
The client-server model of computing, which originated in the 1970s, is a type of distributed computing that separates out the:
* Access points, called clients, which are used by only one person at a time, and which are therefore not shared.
* Central servers, which supply applications and data, and which are shared among several clients that can access them at any one time.
All cloud-computing service-model examples are a development of client-server computing, and cloud datacentres contain one or more servers that are accessed via separate cloud clients. This is in contrast to P2P networks, in which all participating devices are both clients and servers, and there are some of these that are also part of cloud computing.
Utility computing
One typical characteristic of cloud computing is consumption as a utility, with payment only for what is used. This is similar to utility computing, which was available from the 1980s.
Originally, utility computing was not necessarily Internet accessible, and it may have involved very centralised, on-premise resources. However, later it was combined with the client-server model and then networks, and became more distributed. Later still, when combined with the Internet, it evolved into cloud computing.
The computer pioneer John McCarthy predicted in 1961 that computing would one day be delivered as a public utility.<ref name=AdvantagesAndRisks_2/>
Cluster computing
Cluster computing, which originated in the 1960s, is the use of a network of servers that are co-ordinated to achieve a common goal. It includes grid computing,<ref name=Metaphor/> which originated in the 1990s, and server farms. For example, a large organisation may provide its email service using a server farm consisting of several computers each of which deals with email addresses beginning with a few letters of the alphabet, such as one for all addresses beginning with “a”, “b” or “c”, and another for addresses beginning with “d”, “e” or “f”, and so on through the alphabet.
The use of multiple servers has advantages over an equivalently powerful single computer:
* Fault tolerance: If there is an outage of one server, it may only lead to a partial degradation of service for some users, as opposed to an outage of one much larger computer, which could lead to a total degradation for all users.
* Redundancy: Extra, standby servers can be included for failover in exceptional circumstances.
* Load balancing: Further servers can be added at any time to cope with increased demand, without disturbing the other servers.
* Cost: Purchasing many midrange computers can be more cost-effective than purchasing one large mainframe.
For these reasons, cloud datacentres can contain a cluster of servers, and each one of these may be able to support many virtual servers so as to allow for flexible scaling and easy provisioning.
Autonomic computing
Autonomic computing, which originated in 2001, is computing carried out by self-managed systems that can autonomously and automatically react to changing circumstances. For example, they can be self-repairing when there are outages, or they can be self-adjusting in reaction to changing demand from users.
Autonomic computing techniques are used to implement cloud computing because it is advantageous for resources to self-adjust in some circumstances. For example, cloud bursting is an application of this type of computing.
Long-term trends
Computer access
Since the adoption of computers during the 1950s, users have become more-and-more physically removed from their IT resources, and cloud computing is a further step in this trend.
Originally, users were required to visit a special room one at a time to use the computer, and one motivation for changing this situation was to enable more people to have concurrent use of computer resources.
This began with the advent of batch operating systems. With these systems, users would take their data on punched cards to the computer room, where they would be fed into the computer by a specialist computer operator, for a batch of different users all at the same time. The users would not be able to access the computer directly themselves. This was followed by multi-user operating systems, which were accessed via directly connected terminals not necessarily in the computer room, and then networks, where access to the computer would be via intermediate switching devices so that the users and the computers could be in separate places, including in different buildings.
The Internet, short for inter-networks, developed out of these networks to enable users to be in one place, and their IT resources to be in any other place in the world. Also, users could access their resources from any location with Internet access, not just a computer terminal in their office.
IT acquisition and management
There has been a long-term trend in IT acquisition and management away from outright purchase and self hosting of IT equipment, and cloud computing is part of this trend.
A major step before cloud computing was outsourcing, and the use of vendor hosting or third-party hosting, rather than self hosting. Originally, the equipment would be on the user's premises, but with networks, the hosting could be in a different location, and then with the Internet there was even greater flexibility as to where resources could be hosted.
Resource sharing
Originally, any increase in the size of IT resources required the purchase, delivery and installation of extra hardware, which could involve a long delay. Because of this delay, resources were sometimes sized so as to cope with spikes, which meant purchasing a larger than normally required system, and so, since spikes may not occur frequently, if at all, the resources were very often under-utilised, and this was financially wasteful.<ref name=SOAMAG/>
For this reason, there has been a trend in IT away from a static, fixed size of infrastructure to systems that can be shared and that can scale to cater for changing circumstances, such as extra users, more flexibly. Cloud computing is a further step in this trend.
One of the first developments was the use of virtualisation, and the advantage of this technology is the ability to provision new virtual servers easily, without purchasing new equipment. This allows new users to share the resources. Other developments included:
* Pooling all of a large organisation’s IT resources in a datacentre, rather than housing them in different departments. This made resource sharing easier.
* Utility computing, where users have access only to part of a shared resource, and where the size of their share can be easily changed.
 
< Prev   Next >