Revision 500028041 of "Introduction to cloud computing" on enwiki{{merge-to|Cloud computing|discuss=Talk:Cloud computing#Introduction to Cloud computing|date=March 2012}}
{{Introductory article|Cloud computing}}
[[File:Cloud computing.svg|400px|thumb]]
The two words in the phrase ''cloud computing'' have the following interpretations:
* '''Cloud''': As a noun, this is a metaphor for the [[Internet]],<ref name=Metaphor>{{cite web|url=
http://www.reference.com/browse/cloud+computing |title=Cloud computing | publisher=Reference.com |date= 9 March 2011 |accessdate=28 February 2012}}</ref> and as an adjective it means ''pertaining to the Internet''.<ref name=Adjective>{{cite web|url= http://dictionary.reference.com/browse/cloud |title=Cloud as an adjective |publisher= Dictionary.com |date= |accessdate=28 February 2012}}</ref> This usage derives from the cloud symbols that represent the Internet on diagrams.<ref name=Metaphor/><ref name=AllPM>{{cite web|url=http://www.allpm.com/index.php/component/content/article/94-article/newsletter-article/132-whenprojectmanagementisfacetofacewithcloudcomputingbyandrescuevaspmp-132|title= When Project Management is Face to Face with Cloud Computing |publisher=allPM.com |date= 9 March 2011 |accessdate=5 May 2012}}</ref>
* '''Computing''': Any [[Information technology |IT]] activity carried out:
** When using "a local server or a personal computer",<ref name=OUPCC>{{cite web|url= http://oxforddictionaries.com/definition/cloud+computing|title=Cloud computing |publisher=Oxford University Press |date= |accessdate=28 February 2012}}</ref> which implies that the IT resources are under the ''exclusive control'' of the user.
** To "store, manage, and process data",<ref name=OUPCC/> which implies that the data is ''private'' to the user, in the sense that it is determined by them, even if it is accessible by others.
This means that '''cloud computing''' is a type of Internet-based computing, and it consists of every situation where the use of IT resources by an entity, including a person or an organisation, has all of the following characteristics:<ref name=Metaphor/><ref name=Adjective/><ref name=AllPM/><ref name=OUPCC/><ref name=CloudSystems>{{cite web|url= http://www.cloudcomputingworld.org/cloud-computing-platforms/cloud-systems-definition-and-explanation.html|title=Cloud Systems: Definition and Explanation |publisher= Cloud Computing World |date= |accessdate=28 February 2012}}</ref><ref name=DictionaryCC>{{cite web|url= http://dictionary.reference.com/browse/cloud+computing|title=Cloud computing |publisher=Dictionary.com |date= |accessdate=28 February 2012}}</ref>
* 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.<ref name=OUPCC/>
* The hosting and delivery service that provides this access.<ref name=AllPM/>
* A model for enabling such access and delivery.<ref name=NISTDefn>{{cite web|url= http://csrc.nist.gov/publications/nistpubs/800-145/SP800-145.pdf|title=The NIST Definition of Cloud Computing |author=Mell, Peter; Grance, Timothy |date=September 2011 |publisher= National Institute of Standards and Technology, U.S. Department of Commerce |accessdate=28 February 2012}}</ref>
* The hosted resources or services themselves.<ref name=CiscoCC>{{cite web|url= http://www.cisco.com/web/strategy/docs/gov/CiscoCloudComputing_WP.pdf|title= Cisco Cloud Computing - Data Center Strategy, Architecture, and Solutions |author= |date=2009 |publisher=Cisco Systems |accessdate=28 February 2012}}</ref>
* The computing execution carried out by the services.<ref name=CCWiki>{{cite web|url= http://sites.google.com/site/cloudcomputingwiki/Home|title=Cloud Computing Wiki|publisher=Google |date= |accessdate=28 February 2012}}</ref>
* Technology used for the provision of the services.<ref name=IndustryShift>{{cite web|url= http://mictunis.micnetwork.org/Technology/CloudComputing.aspx|title=An Industry Shift Toward Cloud Computing |publisher=Microsoft |date= |accessdate=28 February 2012}}</ref><ref name=CSCorp>{{cite web|url= http://www.csc.com/au/ds/39454/40514-what_is_cloud_computing/|title= What is Cloud Computing? |publisher= Computer Sciences Corporation |date= |accessdate=28 February 2012}}</ref>
{{TOC limit|limit=3}}
==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 [[Introduction_to_Cloud_computing#Consumption_model |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.<ref name=WhatsNeeded>{{cite web|url= http://viewer.media.bitpipe.com/1103725483_536/1280958977_896/ESG_-_What's_Needed_for_Cloud_Computing.pdf|title= What’s Needed for Cloud Computing? |author=Oltsik, John |date=June 2010|publisher= Enterprise Strategy Group, Inc. |accessdate=28 February 2012}}</ref> For example, no [[Introduction_to_Cloud_computing#Payment_and_pricing |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 [[Introduction_to_Cloud_computing#Deployment_models |deployment models]] that make cloud computing available on the Internet in a variety of public or private [[Computer | computer systems]].
Besides these, there are also IT systems that have some of the same typical characteristics and [[Introduction_to_Cloud_computing#Advantages |advantages]] as cloud computing, but that, for security reasons, are accessible only via a private [[Computer network |network]], rather than the Internet. These have been described as “cloud computing-like”,<ref name=GoogleVocab>{{cite web|url= http://sites.google.com/site/cloudcomputingwiki/Home/cloud-computing-vocabulary/|title=Cloud Computing Vocabulary |publisher=Google |date= |accessdate=28 February 2012}}</ref> but, because of the shared features, they are sometimes included as part of cloud computing itself.<ref name=NISTDefn/>
=Terminology=
==Cloud services==
As a hosting service, cloud computing is also known as ''cloud hosting'', or as a ''cloud service''.<ref name=Metaphor/><ref name=CloudSystems/><ref name=NISTDefn/><ref name=TerrificCS>{{cite web|url= http://www.pcmag.com/article2/0,2817,2361500,00.asp|title=13 Terrific Cloud Services for Small Business |author= Lynn, Samara |publisher=PCMAG.com |date= 18 March 2010 |accessdate=28 February 2012}}</ref>
==Cloud systems==
The hosted resources are known as ''cloud resources'' or ''cloud systems'',<ref name=CloudSystems/> and these include ''cloud software'' and ''cloud infrastructure''.<ref name=Metaphor/><ref name=Adjective/><ref name=NISTDefn/>
Cloud software includes ''cloud applications'',<ref name= TenApps1>{{cite web|url= http://www.touchstone-blog.com/2011/03/top-10-alternative-cloud-applications-for-freelancers-and-small-business/|title= Top 10 Cloud Applications for Freelancers and Small Business |publisher=IT Freelancers and Contractors |date= |accessdate=28 February 2012}}</ref><ref name= TenApps2>{{cite web|url= http://www.noobpreneur.com/2010/12/29/top-10-cloud-applications-for-small-business/|title= Top 10 Cloud Applications for Small Business |author= Widjaya, Ivan|publisher= Noobpreneur business blog |date= 29 December 2010 | accessdate=28 February 2012}}</ref> ''cloud databases''<ref name=CloudDB>{{cite web|url= http://xeround.com/ |title= Cloud Database||date= |publisher= Xeround.com |accessdate=28 February 2012}}</ref> and ''cloud platforms''.<ref name=Adjective/><ref name=CloudPlatforms>{{cite web|url= http://www.davidchappell.com/CloudPlatforms--Chappell.pdf|title=A Short Introduction to Cloud Platforms|author=Chappell, David|date= August 2008 |publisher= Chappell & Associates |accessdate=28 February 2012}}</ref>
Cloud infrastructure includes ''cloud storage'', ''cloud servers'' and ''cloud networks''.<ref name=Adjective/><ref name=NISTDefn/><ref name=CSCorp/><ref name=StorageaaS>{{cite web|url= http://searchstorage.techtarget.com/definition/Storage-as-a-Service-SaaS/|title= Storage as a Service (SaaS)|publisher=TechTarget |date= |accessdate=28 February 2012}}</ref>
==Cloud roles==
The consumption and provision of cloud computing involves the following roles:<ref name=NISTRef>{{cite web|url= http://www.cloudstandardscustomercouncil.org/062011/presentations/NIST_RA_062111.pdf|title= NIST Cloud Computing Reference Architecture & Taxonomy Working Group|author=Bohn, Robert |date=21 June 2011 |publisher= National Institute of Standards and Technology, U.S. Department of Commerce |accessdate=28 February 2012}}</ref>
* '''Cloud consumer''': Any person or organisation that arranges for the delivery of a cloud service, either for themselves, or for their individual users. In [[Introduction_to_cloud_computing#Payment_and_pricing |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.<ref name=CloudBroker>{{cite web|url= http://www.zdnet.com/blog/gardner/cloud-brokering-building-a-cloud-of-clouds/4140|title= Cloud brokering: Building a cloud of clouds |author = Gardner, Dana|publisher=ZDNet |date= 22 April 2011|accessdate=28 February 2012}}</ref>
* '''Cloud carrier''': An intermediary that connects consumers with the provider's cloud systems, such as an [[Internet_service_provider |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.<ref name=MultiOrDedicated>{{cite web|url= http://www.zdnet.com/blog/forrester/cloud-hosted-collaboration-multi-tenant-or-dedicated/356|title= Cloud-hosted collaboration: multi-tenant or dedicated?|author= Schadler, Ted|publisher= ZDNet |date= 8 January 2010|accessdate=28 February 2012}}</ref><ref name=MultiTenancy>{{cite web|url= http://www.computerworld.com/s/article/9175079/Multi_tenancy_in_the_cloud|title= Multi-tenancy in the cloud: Why it matters |author= Kajeepeta, Sreedhar
|publisher=Computerworld Inc |date= 12 April 2010|accessdate=28 February 2012}}</ref>
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:<ref name=Metaphor/><ref name=GoogleVocab/><ref name= MultiTenancy/><ref name=ExplainingCC>{{cite web|url= http://explainingcomputers.com/cloud.html|title=Cloud computing | author= Barnatt, Christopher |publisher= ExplainingComputers.com |date= 7 August 2011|accessdate=28 February 2012}}</ref><ref name=Glossary>{{cite web|url= http://www.bestpricecomputers.co.uk/glossary/cloud-computing.htm|title=Cloud computing |publisher=Best Price Computers |date= |accessdate=28 February 2012}}</ref>
* Cloud systems are said to be ''hosted'' or ''located in the cloud''.
* Cloud consumers are said to ''operate in the cloud''.<ref name=LawTechNews>{{cite web|url= http://www.law.com/jsp/lawtechnologynews/PubArticleLTN.jsp?id=1202437119330&slreturn=1&hbxlogin=1|title= A Case for Operating in the Cloud |author= Nolan, James C.|publisher=Law.com |date= 22 December 2009|accessdate=28 February 2012}}</ref>
* When an organisation converts its IT management to cloud computing, it is said to ''move into the cloud''.<ref name=MoveIntoCloud>{{cite web|url= http://blogs.cisco.com/channels/moving-into-the-cloud-cisco-partner-shares-success/|title= Moving into the Cloud: Cisco Partner Shares Success Story |author= Krasne, Alexandra |publisher= Cisco Systems|date= 27 January 2011|accessdate=28 February 2012}}</ref>
==Cloud of clouds==
When used as a noun, the term ''cloud'' is a metaphor for the Internet,<ref name=Metaphor/> but it is also applied to the cloud systems hosted by a cloud provider,<ref name=TopPlayers>{{cite web|url= http://cloudcomputing.sys-con.com/node/770174|title= The Top 150 Players in Cloud Computing |author= Geelan, Jeremy |publisher=Cloud Computing Journal |date= 29 October 2009 |accessdate=28 February 2012}}</ref> and these might be described, for example, as a [[Introduction_to_Cloud_computing#Public_cloud |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.<ref name=CloudBroker/>
==The Intercloud==
The term ''Intercloud'' is used for all cloud systems, after an analogy with the word Internet, meaning ''inter-networks''.<ref name=BalanceAndBurst>{{cite web|url= http://devcentral.f5.com/weblogs/macvittie/archive/2009/07/09/cloud-balancing-cloud-bursting-and-intercloud.aspx|title=Cloud Balancing, Cloud Bursting, and Intercloud|publisher=F5.com |date= 9 July 2009 |accessdate=28 February 2012}}</ref>
This is not the same as all [[Website |websites]] on the Internet, because there are many that are [[Introduction_to_Cloud_computing#Exclusions |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.<ref name=GoogleVocab/><ref name=BalanceAndBurst/>
==Cloud spanning==
''Cloud spanning'' is the use of more than one cloud service to run different components of an application.<ref name=GoogleVocab/>
==Cloud clients==
A client computer, or simply a [[Client_(computing) |client]], is an [[User (computing) |end-user]] access point to a computer system, and the term came to prominence with [[Client-server computing |client-server computing]].
The term ''cloud client'' is an application of this concept to cloud computing, and so it is an end-user access point to a cloud system. These include [[Personal computer |PCs]], [[Notebook_computer |notebooks]], [[Tablet computer |tablets]] and [[Mobile phone |mobile phones]], and the access may be through a [[Web browser |web browser]] or a program interface running on the client.<ref name=Metaphor/><ref name=NISTDefn/><ref name=ClientSide>{{cite web|url= http://www.softwareresearch.net/fileadmin/src/docs/teaching/SS09/SaI/Hoefer_Howanitz_Paper.pdf|title= The Client Side of Cloud Computing |author= Höfer, Mario; Howanitz, Gernot |date=1 July 2009|publisher=Salzburg University |accessdate=28 February 2012}}</ref>
They are used only to access cloud systems, and they aren’t part of cloud computing themselves.
==Cloud datacentres==
A [[ Data center |datacentre]] is a facility that houses [[ Server_(computing) |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''.<ref name=ExplainingCC/>
==Cloud operating systems==
'''Clients'''
A ''cloud operating system'' for a cloud client, such as [[Chrome OS |Chrome O/S]] and [[Cloud (operating system)|Cloud]], is a combination of a simple [[Operating_system |O/S]] and a web browser that enables a user device with minimal processor and memory resources to access cloud services.
'''Datacentres'''
Unlike a traditional server O/S, such as [[Windows NT]] and [[Unix]], which manages the resources of a single server computer, a ''cloud operating system'' for a cloud datacentre manages all the servers in the entire datacentre, which are possibly in distributed locations.<ref name=CloudOS>{{cite web|url= http://huanliu.wordpress.com/2009/07/20/what-is-a-cloud-operating-system/|title= What is a Cloud Operating System?|author= Liu, Huan|publisher= WordPress.com |date= 20 July 2009 |accessdate=28 February 2012}}</ref>
==Cloudware==
Cloud software is also known as ''cloudware'',<ref name=GoogleVocab/><ref name=CloudWareInc>{{cite web|url= http://cloudwareinc.com|title=CloudWare |publisher= CloudWare Inc |date= |accessdate=28 February 2012}}</ref> and it includes cloud:
* Applications<ref name= TenApps1/><ref name= TenApps2/>
* Databases<ref name=CloudDB/>
* Platforms<ref name=CloudPlatforms/>
* Datacentre operating systems.<ref name=CloudOS/>
==Cloud operations==
''Cloud operations'' are [[Information technology operations |IT operations]] that provide, support or develop cloud systems, or that manage cloud datacentres.<ref name=CloudOperations>{{cite web|url= http://www.9apps.net/cloud-operations/|title=Cloud Operations |publisher=9Apps |date= |accessdate=28 February 2012}}</ref>
Cloud operations use ''cloud engineering'', which is the application of [[Systems engineering |systems engineering]] and [[Software engineering |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.<ref name=Metaphor/><ref name=CloudOperations/>
==Cloud washing==
''Cloud washing'' is "the purposeful and sometimes deceptive attempt by a vendor to rebrand an old product or service by associating the buzzword ''cloud'' with it”.<ref name=CloudWashing1>{{cite web|url= http://searchcloudstorage.techtarget.com/definition/cloud-washing/|title=Cloud washing |publisher=TechTarget |date= |accessdate=28 February 2012}}</ref><ref name=CloudWashing2>{{cite web|url= http://summitdiary.com/2011/11/05/what-exactly-is-cloud-washing/|title= What exactly is cloud washing? |author= Wolf, Peter|publisher= Summit Diary |date= 5 November 2011|accessdate=28 February 2012}}</ref>
=Models=
Cloud computing has been described as a “model for enabling” particular types of access to and delivery of IT services.<ref name=NISTDefn/>
==Service models==
There are three main cloud-computing '''service models''', and these represent the three types of computing generally required by consumers: ''software applications'' ([[Introduction_to_Cloud_computing#Software_as_a_Service |SaaS]]) to process their data, ''platforms'' ([[Introduction_to_Cloud_computing#Platform_as_a_Service |PaaS]]) to develop applications, and ''infrastructure'' ([[Introduction_to_Cloud_computing#Infrastructure_as_a_Service |IaaS]]) to run software and store data.<ref name=NISTDefn/><ref name=CloudJargon>{{cite web|url= http://cloudcomputing.sys-con.com/node/613070|title= Cloud Computing - The Jargon is Back! |author= de Haaff, Brian|publisher=Cloud Computing Journal |date= 8 August 2008|accessdate=28 February 2012}}</ref>
===Software as a Service===
'''Software in the cloud'''
'''Software as a Service''' ([[Software as a service |SaaS)]] provides [[ Software |software]] that is specific to its consumer’s end-user requirements, including traditional applications, such as [[ Accounting_software |accounting]], and [[Email |email]]. This is the largest group of cloud services,<ref name=CloudJargon/> and it provides a very wide range of software.<ref name=TerrificCS/><ref name= TenApps1/><ref name= TenApps2/><ref name=CCD>{{cite web|url= http://explainingcomputers.com/clouddir.html|title=Cloud Computing Directory | author= Barnatt, Christopher |publisher=ExplainingComputers.com |date= 7 August 2011|accessdate=28 February 2012}}</ref>
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 [[Downtime |outage]], the host will regularly [[Backup |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_suite |office-productivity applications]], such as [[Word_processing |word processing]], by a SaaS provider.<ref name=OracleSapErp>{{cite web|url= http://www.oracle.com/us/solutions/sap/database/sap-erp-cloud-352626.pdf|title= SAP ERP in the Cloud |author= |date=April 2010|publisher=Oracle ||accessdate=28 February 2012}}</ref> This is done so that only a [[ Thin client |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''.<ref name=CloudDesktop>{{cite web|url= http://virtualdesktoponline.com/cloud-desktop/|title=Cloud Desktop |publisher=Virtual Desktop Online |date= |accessdate=28 February 2012}}</ref>
'''Database as a Service''' (DbaaS) is the hosting of [[Database |database]] software by a SaaS provider.<ref name=DbAAS>{{cite web|url= http://dbaas.wordpress.com/2008/05/14/what-exactly-is-database-as-a-service/|title= What exacly is Database as a Service? |publisher= WordPress.com |date= 14 May 2008 |accessdate=28 February 2012}}</ref>
These are known as [[ Cloud database |cloud databases]].
'''Identity as a Service''' (IDaaS) is the hosting of [[ Identity management system |identity-management software]] by a SaaS provider.<ref name=IDAAS>{{cite web|url= http://cloudbestpractices.net/2011/11/15/idaas-identity-as-a-shared-service/|title= IDaaS – Identity as a (Shared) Service |author= McEvoy, Neil|publisher= CloudBestPractices.net |date= 15 November 2011|accessdate=28 February 2012}}</ref>
===Platform as a Service===
'''Development platforms in the cloud'''
'''Platform as a Service''' ([[Platform as a service |PaaS]]) consists of software-development and deployment platforms, known as cloud platforms, located in the cloud.<ref name=CloudPlatforms/>
With this type of service, the host provides a complete [[Software development |software-development]] and [[Run-time system |run-time]] environment, including [[Programming_language |programming languages]] and related infrastructure, so that the consumers can either create their own software on this platform, or deploy software that was developed elsewhere, but that needs this same environment to run.
The infrastructure can include a database and identity-management, or access-control, software.
'''SaaS development platforms'''
A form of PaaS that can be hosted by SaaS providers consists of their development environment being made available for cloud consumption by third-party developers, so that the applications for their main consumers can be enhanced.<ref name=CloudJargon/> One advantage of this approach is that the third-party developers have access to the user data that is stored and processed by the main application.
Also, in some cases, consumers can use the development platform to customise the application for themselves.
'''SaaS versus PaaS'''
Software development is itself performed using software, so PaaS and SaaS are related, but PaaS involves software used specifically for development, and all related activities, such as testing and deployment.<ref name=Glossary/><ref name=SaaSorPaaS>{{cite web|url= http://www.billingworld.com/news/2009/01/cloud-computing-saas-or-paas.aspx|title= Cloud Computing: SaaS or PaaS?|publisher=Virgo Publishing |date= 30 January 2009 |accessdate=28 February 2012}}</ref>
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 [[ Computer_hardware |hardware infrastructure]] that is located in the cloud. It includes [[ Cloud storage |cloud storage]], cloud servers and cloud networks, and is also known as '''Hardware as a Service''' (HaaS).<ref name=Glossary/> The infrastructure can be used to run software or simply to store data.
The consumers can be end-users, developers or other cloud providers. For example, SaaS providers can use IaaS providers to run their applications or to store their consumers’ data.
'''Application agnostic'''
IaaS is application and platform ''agnostic'', which means that any software can be deployed on the infrastructure by the consumers, including different operating systems, applications or development platforms. On the other hand, with SaaS, only the provided application can be used by the tenants, and with PaaS, only applications that run on the provided platform can be used.
The servers may run a [[ Hypervisor |hypervisor]], in which case they can run several different operating systems at the same time, and any application that runs on these operating systems.
'''Storage as a Service'''
Cloud storage is also known as '''Storage as a Service''' (SaaS).<ref name=StorageaaS/>
'''Network as a Service'''
Cloud networks are also known as '''Network as a Service''' (NaaS).<ref name=OracleSapErp/>
==Deployment models==
There are several cloud-computing '''deployment models''', and these represent different types of exclusive and non-exclusive clouds provided to consumers or groups of consumers.<ref name=NISTDefn/>
===Public cloud===
'''Public clouds''' are cloud systems that are made available to any member of a non-exclusive group, such as the general public, or all organisations in a specific industry. Because there are many consumers, these are multi-tenanted clouds. They are owned by cloud providers, and are off-premise for all consumers.
The cloud is ''public'' only in the sense that, potentially, any person or organisation that requires the provided services can become a consumer, and a public cloud may not necessarily be of universal interest. For example, a SaaS public cloud might provide an accounting system that is useful only to certain types of small business.
===Private cloud===
{{redirect|Private cloud}}
{{See also|Intranet}}
'''Private clouds''' are cloud systems that are accessible only by a single consumer, or by an exclusive group, such as all the business units in a single organisation. They are generally single-tenanted, but they can be multi-tenanted if the individual group members act as separate consumers. They may be owned by a cloud provider and be located off-premise, or they may be operated by the consumer and be located on-premise. In the latter case, they can also be known as '''internal clouds''' or '''corporate clouds'''.<ref name=PrivateInternal>{{cite web|url= http://searchcloudcomputing.techtarget.com/definition/private-cloud/|title= Private cloud (internal cloud or corporate cloud) |publisher= TechTarget |date= |accessdate=28 February 2012}}</ref>
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 (computing) |firewall]] that restricts access to a limited set of client devices.<ref name=PrivateInternal/> However, private clouds need to be deployed by the operator and lack the economic characteristics of a public cloud.<ref>{{cite web|last=Foley |first=John |url=http://www.informationweek.com/news/services/business/showArticle.jhtml?articleID=209904474 |title=Private Clouds Take Shape |publisher=InformationWeek |date= |accessdate=2010-08-22}}</ref><ref>{{cite web |last=Haff |first=Gordon |url=http://news.cnet.com/8301-13556_3-10150841-61.html |title=Just don't call them private clouds |publisher=CNET News |date=2009-01-27 |accessdate=2010-08-22}}</ref><ref>{{cite web |url=http://www.informationweek.com/cloud-computing/blog/archives/2009/01/theres_no_such.html |title=There's No Such Thing As A Private Cloud |publisher=InformationWeek |date=2010-06-30 |accessdate=2010-08-22}}</ref>
There are IT systems that have some of the same [[Introduction to Cloud computing#Consumption_model |characteristics]] and [[Introduction to Cloud computing#Advantages |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”,<ref name=GoogleVocab/> but, because of the shared features, they are sometimes included as part of cloud computing itself.<ref name=NISTDefn/>
===Virtual private cloud===
When a service provider uses a public-cloud system to create a private cloud, the result is known as a '''virtual private cloud'''.<ref name=GoogleVocab/>
===Community cloud===
'''Community clouds''' are cloud systems that are available only to a specific group of related entities that share a common purpose, such as mission, security requirements, policy or compliance considerations, and that therefore need the same type of hosting. These are multi-tenanted clouds that may be managed by the community or by a third party, and they may be off-premise for all the consumers, or on-premise for one of the consumers.
Unlike a private cloud, the community of consumers isn't narrowly exclusive. However, they are not truly public clouds, because entities outside the community that could benefit from the service, may not be able to become consumers.
===Hybrid cloud===
A '''hybrid cloud''' is a composition of two or more public, private and community clouds,<ref name=NISTDefn/> that are used on a day-to-day basis or for cloud bursting.<ref name=GoogleVocab/>
Becoming part of such a cloud can be attractive to the providers, because it results in a larger pool of resources that can be made available to their consumers, so that variations in demand can be managed more flexibly. Also, for consumers, it may be that some of their data must be in a private cloud, for security and privacy reasons, but it may be more economical to keep some other, perhaps less sensitive, data in a public cloud, because the cost of these is generally lower.<ref name=CloudSystems/>
A hybrid cloud is also a cloud of clouds, but the difference with the latter is that it can contain only one type of cloud deployment, rather than a mixture of public and private clouds, as with a hybrid.<ref name=CloudSystems/><ref name=GoogleVocab/>
===Vertical cloud===
A '''vertical cloud''' is a public cloud optimised for a specific, vertical industry.<ref name=VerticalCloud>{{cite web|url= http://www.webopedia.com/TERM/V/vertical_cloud_computing.html|title= Vertical cloud computing |publisher=Webopedia |date= |accessdate=28 February 2012}}</ref>
==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'''.<ref name=WhatsNeeded/>
Some of them have been described as essential,<ref name=NISTDefn/> but it has also been observed that “no single feature is proposed by all definitions”,<ref name=Vaquero>{{cite web|url= http://ccr.sigcomm.org/drupal/files/p50-v39n1l-vaqueroA.pdf|title= A Break in the Clouds: Towards a Cloud Definition |author=Vaquero, Luis, M et al|date=1 January 2009 |publisher= ACM SIGCOMM |accessdate=28 February 2012}}</ref> 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.<ref name=Metaphor/><ref name=CloudSystems/><ref name=NISTDefn/><ref name=CSCorp/><ref name=WhatsNeeded/><ref name=Vaquero/>
===Payment and pricing===
'''Free services'''
There are cloud services that are entirely free, and some that are offered on a [[ Freemium |freemium]] basis.<ref name=TerrificCS/><ref name= TenApps1/><ref name= TenApps2/>
'''Commercial services'''
Where payment is made, typically it is on the basis of consumption in a given time period, such as per concurrent user per month for SaaS, or per unit of storage per month for IaaS.<ref name=CloudSystems/><ref name=NISTDefn/><ref name=Glossary/><ref name=Vaquero/>
Charging by usage can be by any of the following methods:<ref name=Metaphor/><ref name=CloudSystems/>
* '''Utility''': Consumers pay only for what they use - so called because it is similar to the pricing of services from electricity utilities.
* '''Subscription''': Consumers pay for a fixed amount of resource whether they use it or not, which is similar to some contracts for cable TV or mobile telecommunications.
* A combination of these, where consumers pay a subscription to consume up to a certain amount, and then as a utility for resources consumed above that amount.
'''Ownership'''
In some cases, cloud systems can be wholly owned by the consumer.<ref name=Metaphor/><ref name=CSCorp/>
===Measured service===
Payment on the basis of consumption requires a ''measured service'' and a ''metering'' capability, but even free services may need to be metered if they apply only up to some level of resource.
===Resource pooling===
Multi-tenant hosting involves ''pooled resources'' that are shared among the several tenants. This can be a consumer advantage, because sharing the resources may lead to lower costs for each tenant.
However, resource pooling doesn't apply to a [[Introduction_to_Cloud_computing#Private_cloud |private cloud]] with only one tenant, because this type of resource sharing applies only between different tenants, rather than among a tenant's individual users. Sharing resources among users applies to any server or datacentre, whether it is part of cloud computing or not.
===Scaling and provisioning===
[[Scalability |Scaling]] means reconfiguring resources to change their size. ''Scaling in'' means to release resources, and ''scaling out'' means to acquire more resources. Systems that can easily scale in or out are said to be ''elastic''. [[ Provisioning#Server_provisioning |Provisioning]] refers to the mechanisms used to provide and release resources, and hence to manage scaling.<ref name=NISTDefn/><ref name=CCWiki/> Agile provisioning allows the size of resources to be changed very easily, for example without the lengthy decision-making and budgetary process required when purchasing IT equipment for delivery on-premise. Elastic resources and agile provisioning are important for flexible and cost-effective management of variations in user demand.
The following terms are used to describe the various scaling and provisioning features that are available with some cloud services:<ref name=NISTDefn/><ref name=CCWiki/><ref name=WhatsNeeded/><ref name=Vaquero/>
* '''On-demand self service''': Scaling that can be performed by the consumer, rather than by the host.
* '''Dynamic scaling''': Scaling that can be done via software, so that it can happen automatically, and possibly in a way that is invisible to the consumer.
* '''Infinite scaling''': There is no effective limit to the amount of resource that the consumer can have, although it is always actually finite at any one time.
* '''Rapid provisioning''': Provisioning that can be immediate, rather than waiting for the cloud provider to respond to a request for resources.
There is some disagreement as to whether agile provisioning is a defining characteristic of cloud computing.<ref name=Vaquero/> This is partly because the [[Introduction_to_Cloud_computing#History |history]] of IT shows that flexible scaling and provisioning was available prior to the cloud era, and so it is more a feature of IT in general, rather than just cloud systems in particular. However, because large public clouds can have very many tenants, their datacentres can be much more massive than previously known, and so they can give the appearance of unlimited scalability.<ref name=NISTDefn/>
===Access===
'''Broad'''
Access to cloud services is via the Internet, and this leads to the possibility of consumers having ''broad access'', which means the ability to use the services from multiple types of cloud client, including desktop, portable and hand-held devices, or from many different locations.<ref name=Metaphor/>
To achieve access from many different clients, it is necessary for the websites to be made compatible with hand-held devices as well as PCs, for example because of the different screen sizes and the different mechanics of scrolling within large [[Web page |web pages]].
Access can be from any location where an Internet connection is available, either from a fixed PC, for example in an office or [[Internet café]], or from anywhere that mobile telephone access is available, for example using a [[Modem#Mobile_modems_and_routers |USB modem]] attached to a notebook.
However, a [[Introduction_to_Cloud_computing#Private_cloud |private cloud]] may only allow access from certain sources, for example if it is behind a firewall.
'''Transparent'''
In IT, something is ''transparent'' to users if they do not need to understand or be aware of it. For example, with cloud computing, consumers can have ''transparent access'', which means that the users of a service need not be aware of who provides the service or where the host is located.<ref name=NISTDefn/>
However, for legal and regulatory requirements regarding the security of data, and the laws that might apply to breaches of service levels, a consumer may need to have their hosting provided by a known organisation in a specific location.
=Examples=
All cloud services have a dedicated-resource aspect, with consumer-controlled access to these resources by authorised users, via a secure-access method, such as a login ID. Also, the resources process data that is private to the consumer and their associates, which means that it is entered or created by them, although it may be accessible by others, including the general public.
There are many organisations that supply cloud services, and there is a very wide range of such services.<ref name=Metaphor/><ref name=CCWiki/><ref name=TopPlayers/><ref name=CloudJargon/><ref name=ProductsServices>{{cite web|url= http://www.cloudbook.net/directories/product-services/ |title=Cloud computing directory: Products and Services |publisher=CloudBook |date= |accessdate=28 February 2012}}</ref><ref name=TopServices>{{cite web|url= http://newtech.about.com/od/cloudcomputing/tp/Top-10-As-A-Service-Solutions.htm/ |title=Top 10 “As a Service” solutions |author= Perdue, Tim|publisher=About.com |date= |accessdate=28 February 2012}}</ref>
==Application software==
A range of cloud applications is available, including common small-business applications, such as [[ Accounting_software |accounting]], and medium-to-large organisation line-of-business or [[Mission critical |mission-critical]] applications, such as [[Customer_relationship_management |CRM]] and [[Enterprise_resource_planning |ERP]].<ref name=TerrificCS/><ref name= TenApps1/><ref name= TenApps2/><ref name=CCD/><ref name=ProductsServices/>
These applications are:
* Part of [[Introduction_to_Cloud_computing#Software_as_a_Service |Software as a Service]], which is one of the cloud-computing [[Introduction_to_Cloud_computing#Service_models |service models]].
* Located in a [[Introduction_to_Cloud_computing#Private_cloud |private cloud]] if the software is supplied to just one consumer, or in a [[Introduction_to_Cloud_computing#Public_cloud |public cloud]] if any person or organisation needing the software can become a consumer. These are two of the cloud-computing [[Introduction_to_Cloud_computing#Deployment_models |deployment models]].
* Hosted by an [[Application_service_provider |Application Service Provider]] (ASP).<ref name=AppSP>{{cite web|url= http://www.cloudcomputingworld.org/customer-relationship-management/what-is-an-application-service-provider.html|title= What Is An Application Service Provider?|publisher=Cloud Computing World|date= |accessdate=28 February 2012}}</ref>
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 [[Comparison of shopping cart software |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.<ref name=CloudJargon/>
Some market-leading software systems, such as [[SAP_ERP |SAP]] and [[Sharepoint]], are available from third-party ASPs.<ref name=OracleSapErp/>
==Databases==
Database as a Service (DbaaS) hosts [[ Cloud database |cloud databases]],<ref name=DbAAS/> and “virtually all major database platforms are available in the cloud”,<ref name=TopServices/> including [[Amazon SimpleDB]] and [[Amazon Relational Database Service]].
The private data for these services consists of the records stored in the database.
DbaaS is part of [[Introduction_to_Cloud_computing#Software_as_a_Service |Software as a Service]].<ref name=DbAAS/>
==Email==
[[Email]] computing involves two aspects:
* Composing, reading and organising emails.
* Sending and receiving them via the Internet.
The first of these can be done on a user-device, such as a PC, in which case it is not part of cloud computing, or it can be done at the website of an ISP, in which case it is part of cloud computing.<ref name=Glossary/><ref name=CCD/> The second aspect is part of cloud computing in both cases.
For ''PC-based email'', composing and reading emails, and organising them in folders, is done with software running on a PC, and all of the permanent storage, such as for the inbox, sent and other folders, and address books, is allocated on the PC. This is not cloud computing, because the email software and storage are not accessed via the Internet, but directly on the PC, even though the send and receive software is hosted by an ISP. The latter software ''is'' part of cloud computing, and the private data for this computing consists of the received and sent emails stored, perhaps temporarily, by the ISP prior to being retrieved for reading on the PC, or sent via the Internet.
For ''web-based email'', or [[ Webmail |webmail]], such as [[Gmail]], the data is stored for the consumer in disk space allocated by the service provider, and emails are composed, read and organised using software hosted by the provider at their site. The private data for this computing includes all emails, folders and address books. Webmail is part of [[Introduction_to_Cloud_computing#Software_as_a_Service |Software as a Service]].
In both cases, a PC, or other user device, is a cloud client used to access the services.
==Office-productivity software==
Office-productivity software, such as [[Google Docs]], is available as a cloud service.<ref name= TenApps1/><ref name=TerrificCSHome>{{cite web|url= http://www.pcmag.com/article2/0,2817,2361502,00.asp|title=13 Terrific Cloud Services for Small Business |author= Lynn, Samara |publisher=PCMAG.com |date= 18 March 2010 |accessdate=28 February 2012}}</ref> The private data for this software consists of the user's created artefacts, such as [[Word_processor |word-processor]] documents and [[Spreadsheet |spreadsheet]] models, which are stored and managed on the provider's infrastructure.
This is part of [[Introduction_to_Cloud_computing#Software_as_a_Service |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 [[Introduction_to_Cloud_computing#Platform_as_a_Service |Platform as a Service]], which is one of the cloud-computing [[Introduction_to_Cloud_computing#Service_models |service models]].<ref name=CloudPlatforms/>
The private data for these services consists of all development information, which would be accessible only by the consumers and their authorised users, including any third-party developers.
===Customer support===
There are cloud services, such as [[Get Satisfaction]], that provide self-help and developer support for the customers of a software company. This support is obtained and entered at a website that hosts and sells the company’s products.
This is a service for the software company, and the private data includes the domain names of the websites for which support is required.
==Storage services==
Disk storage space can be rented from some cloud providers, and consumers of these services can upload software or data, for example by using the service for backup of client-device information.<ref name=TerrificCS/><ref name= TenApps1/><ref name= TenApps2/><ref name=StorageaaS/><ref name=ProductsServices/> The private data would consist of the uploaded material.
The infrastructure is:
* Known as Storage as a Service, and it is part of [[Introduction_to_Cloud_computing#Infrastructure_as_a_Service |Infrastructure as a Service]], which is one of the cloud-computing [[Introduction_to_Cloud_computing#Service_models |service models]].
* Hosted by a Storage Service Provider.<ref name=StorageaaS/>
==Co-operation and communication==
There are cloud services that use the remote connectivity features of the Internet to support distributed co-operative activities, such as systems support, project work or voice and video communication.
Examples of such services include:
* Screen-sharing systems, such as [[LogMeIn]] and [[Mikogo]], that can be used for remote support or co-operation on projects among geographically distributed participants.<ref name= TenApps1/>
* Teleconferencing systems, such as [[Skype]].<ref name=Metaphor/><ref name= TenApps2/>
For these systems, client software needs to be installed on a user device, and this isn't part of cloud computing, but there is also central storage of a user's identity, so that they can connect with others. This storage and the associated connectivity software are part of cloud computing.
The private data for this service includes the consumer’s identity.
==Websites==
===Creation and hosting===
There are cloud services that provide website creation and [[Web hosting service |hosting]].<ref name= TenApps2/><ref name=ProductsServices/>
The private data for the consumers of these services includes the website’s content, and the dedicated resources would include a [[Content_management_system |CMS]], so that they can manage the website, and possibly a [[Customer_relationship_management |CRM]], so that they can manage customers and purchases.
===Feedback===
There are cloud services for website operators, that allow visitors to a website to provide feedback to these operators, and that allow the operators to analyse this feedback.<ref name= TenApps1/>
The private data includes the consumer’s domain names for which feedback is required.
===Visitor statistics===
There are cloud services, such as [[Google Analytics]], that provide website visitor statistics to the operators, and that provide analysis of these statistics.<ref name= TenApps2/>
These are consumed by website operators, and the private data includes the consumer’s domain names for which statistics are required.
===Payment===
There are cloud services, such as [[PayPal]], that allow website visitors to pay for anything purchased at the site.
These are consumed by website operators, and the private data includes information on the consumer’s connected bank accounts, so that transfers of accumulated payment amounts can be made.
==Personal examples==
===Cloud storage===
Anyone with Internet access can rent cloud storage and upload their personal data, for backup or sharing purposes.<ref name=TerrificCS/><ref name= TenApps1/><ref name= TenApps2/> This is known as a '''personal cloud''',<ref name=SafePC>{{cite web|url= http://maketecheasier.com/four-options-to-create-a-safe-personal-cloud/2011/08/12|title=4 Options to Create a Safe Personal Cloud |author= Nesbitt, Scott | publisher=MakeTechEasier |date= 12 August 2011 |accessdate=28 February 2012}}</ref> and it is part of [[Introduction_to_Cloud_computing#Infrastructure_as_a_Service |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.<ref name=CloudTV>{{cite web|url=
http://www.cloudtweaks.com/2010/12/cloud-tv-may-replace-local-tv-altogether/ |title=Cloud tv may replace local tv altogether | publisher=Cloud Tweaks |date= 8 December 2010 |accessdate=28 February 2012}}</ref>
The private data for the consumers of these services includes their [[Multicast |multicast]] address.
===Online banking===
[[Online banking]] is an example of [[Introduction_to_Cloud_computing#Software_as_a_Service |SaaS]] for the bank’s customers, and the private data for each consumer includes their bank account transaction information.<ref name=BusinessOfCC>{{cite web|url=
http://www.cloudcomputingworld.org/customer-relationship-management/the-business-of-cloud-computing.html |title=The Business of Cloud Computing | publisher=Cloud Computing World |date= |accessdate=28 February 2012}}</ref>
Besides desktop and portable computers, the cloud clients used to access this service include [[Automated_teller_machine |ATMs]], [[ Mobile_payment#Online_Wallets |online or mobile wallets]], and [[Point_of_sale |point-of-sale terminals]].
===Social media and networking===
Media and networking sites, such as [[Facebook]] and [[LinkedIn]], are part of cloud computing.<ref name= TenApps1/>
The private data for the consumers includes uploaded information, and this is accessible by the authorised network consisting of their friends or colleagues.
===Synced data===
Different client devices owned by the same consumer can have their data synchronised, or ''synced'', via the cloud, so that each device can access the data produced by all the other devices. This is done by automatically backing up the data of each client using cloud infrastructure.
One example of this for personal use is the [[iCloud]],<ref name=HeadTowardsCloud>{{cite web|url= http://www.ebnonline.com/author.asp?section_id=1061&doc_id=207374&itc=ebnonline_gnews/|title= Heading Towards the Cloud |author= Baljko, Jennifer|publisher=EBN |date= 13 June 2011|accessdate=28 February 2012}}</ref> 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.com |WordPress]], that enable individuals to create and maintain a [[Blog |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”.<ref name=OUPCC/> These servers can be kept in a datacentre operated by a single cloud provider, but they can also be part of a distributed [[Peer-to-peer |P2P network]] that shares resources via the Internet.<ref name=Metaphor/><ref name=P2PIsCC>{{cite web|url=http://soc.cse.unsw.edu.au/node/76/ |title= Peer-to-Peer Service Provisioning in Cloud Computing Environments | author=Ranjan, Rajiv; Zhao, Liang| publisher= Service Oriented Computing Research Group, School of Computer Science and Engineering, The University of New South Wales, Sydney, Australia |date=6 March 2010 |accessdate=28 February 2012}}</ref> 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, [[Peer-to-peer_file_sharing |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 |file-sharing]] software, such as [[BitTorrent_(software) |BitTorrent]],<ref name=Metaphor/> that are on-line at any one time. For these participants, the service is the mutual sharing of files, and this sharing is:
* ''Consumed'' by each participant by uploading from another participant, or downloading to another participant.
* ''Provided'' by each participant by making available some of the files on their own device, for downloading or uploading.
For the participants, as:
* ''Consumers'', the:
** Private data consists of the files on their own device that they allow to be shared.
** Dedicated resources include their file-sharing software, which is used for the uploading and downloading of files, and to identify them as part of the network.
** Controlled access consists of allowing the use of their client device for uploading to, or downloading from, the other participants.
* ''Providers'', they host on their own behalf.
===Collaborative distributed computing===
The Internet services that control collaborative, distributed computing, such as [[Great_Internet_Mersenne_Prime_Search |GIMPS]] and [[SETI@home]], are part of cloud computing.<ref name=Metaphor/> This is also known as [[Volunteer computing |volunteer computing]].
These services divide up the computation into small parts that are then distributed to the participating user devices over the Internet. After carrying out its part of the task, a device sends the results back to the cloud–based control as a contribution to the whole process.
The consumers of these services are the participants whose user devices carry out parts of the computation. The private data for each consumer consists of their registration information, including the Internet address of their device.
==Deployment-model examples==
There are several cloud-computing [[Introduction_to_Cloud_computing#Deployment_models |deployment models]] that provide public, private, community or hybrid clouds, and there are many examples of these.<ref name=DeploymentExamples>{{cite web|url=
http://www.techno-pulse.com/2011/10/cloud-deployment-private-public-example.html |title= Cloud Deployment Models – Private, Community, Public, Hybrid with Examples |
author= Singh, Basant Narayan | publisher=Techno-Pulse |date= 1 October 2011 |accessdate=28 February 2012}}</ref>
Public clouds are the most ubiquitous,<ref name=DeploymentExamples/> and they include:
* Personal clouds, which are [[Introduction_to_Cloud_computing#Cloud_storage |storage services]] that can be consumed by anyone with Internet access.<ref name=SafePC/>
* Many [[Introduction_to_Cloud_computing#Application_software |application-software services]].
* Other software services, including [[Introduction_to_Cloud_computing#Databases |databases]], [[Introduction_to_Cloud_computing#Email |email]] and [[Introduction_to_Cloud_computing#Office-productivity_software |office-productivity software]].
* [[Introduction_to_Cloud_computing#Software_production |Platform services]].<ref name=DeploymentExamples/>
Private clouds can provide similar types of software, platform and infrastructure services as public clouds, except that they are hosted for one consumer behind a firewall that restricts access to a limited set of client devices. They can be on or off-premise for the consumer.<ref name=DeploymentExamples/>
[[Google Apps]] is available in a community cloud for Government agencies,<ref name=DeploymentExamples/> and there is a vertical cloud for health-care.<ref name=VerticalCloud/>
==Service-model examples==
Cloud computing includes [[Introduction_to_Cloud_computing#Service_models |SaaS, PaaS and IaaS]], and there are many examples of these.<ref name=ServiceExamples>{{cite web|url=
http://www.techno-pulse.com/2011/06/cloud-service-models-saas-paas-iaas.html |title= Cloud Service Models - SaaS PaaS IaaS - Which One is for You? |
author= Singh, Basant Narayan | publisher=Techno-Pulse |date= 1 October 2011 |accessdate=28 February 2012}}</ref>
'''SaaS''' constitutes the largest group of services,<ref name=CloudJargon/> and the following are some specific examples:
* [[Introduction_to_Cloud_computing#Application_software |Cloud applications]]<ref name= TenApps1/><ref name= TenApps2/>
* [[Introduction_to_Cloud_computing#Databases |Cloud databases]]<ref name=CloudDB/><ref name=DbAAS/>
* [[Introduction_to_Cloud_computing#Email|Email]]<ref name=Glossary/><ref name=CCD/>
* [[Introduction_to_Cloud_computing#Office-productivity_software|Office-productivity software]]<ref name= TenApps1/><ref name=TerrificCSHome/>
* Cloud desktops.<ref name=CloudDesktop/>
'''PaaS''' comprises all software-development and run-time platforms that are available as cloud services.<ref name=CloudPlatforms/><ref name=DeploymentExamples/>
'''IaaS''' examples include:
* [[Introduction_to_Cloud_computing#Cloud_storage |Personal clouds]]<ref name=SafePC/>
* Other [[Introduction_to_Cloud_computing#Storage_services |storage services]]<ref name=StorageaaS/><ref name=ProductsServices/>
* Cloud networks.<ref name=OracleSapErp/>
=Exclusions=
Cloud computing isn’t just the same as ''Internet computing'', and the Intercloud doesn’t include all the websites on the Internet.<ref name=AdvantagesAndRisks_1>{{cite web|url= http://www.microsoft.com/presspass/presskits/msfinancial/archive.aspx |title= Kynetix Cloud Computing Strategy Guide (Cloud Computing: A Strategy Guide for Board Level Executives) | publisher=Kynetix Technology Group |date= 2009 |accessdate=28 February 2012}}</ref>
For example, the following are excluded from cloud computing:
* Publicly accessible websites that process the same data for every visitor, such as [[Web search engine |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.<ref name=AdvantagesAndRisks_1/><ref name=AdvantagesAndRisks_2>{{cite web|url=
http://www.elctech.com/docs/ELC_Cloud_Computing_Guide.pdf |title=Cloud computing: What you should know | publisher=ELC Technologies |date= 2010 |accessdate=28 February 2012}}</ref>
==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.<ref name=Metaphor/><ref name=CloudSystems/><ref name=CiscoCC/><ref name=StorageaaS/><ref name=Vaquero/>
Also, there are reduced operating costs, because a cloud consumer does not need to house, staff and maintain their own equipment.
==Up-to-date software==
[[Introduction_to_Cloud_computing#Software_as_a_Service |SaaS]] consumers can always have the most up-to-date software, because versioning is controlled centrally by the cloud provider, and when they make a new release it is automatically available to every user.
This is particularly advantageous for cloud desktops, because deployment of new software versions can be very costly and time consuming for a large organisation with many PCs, and because it can therefore be difficult to ensure that everyone has the same version of the organisation's PC software applications at any one time.
==Improved access==
Cloud computing involves using the Internet, and this can provide access from multiple locations and many different types of user device.
==Sharing and co-operation==
Cloud services are advantageous, when compared to PCs and local servers, for activities that require co-operation among distributed groups.
==Flexible and infinite scaling==
Flexible and infinite scaling can be an advantageous feature of cloud-computing services, for example to allow for a sudden increase in demand by the users. This has traditionally been a difficulty for fully owned and self-managed IT resources, where there can be, for example, one server with a given, fixed size, and where some of its capacity may be wasted when demand is low, but where it may be overloaded, resulting in slow response times, when demand is high.<ref name=SOAMAG>{{cite web|url= http://www.soamag.com/I45/1207-3.php | title= Cloud Computing Basics|publisher= SOA Magazine | author= Castro-Leon, Enrique; Golden, Bernard; Gomez, Miguel | date=7 December 2010 |accessdate=28 February 2012}}</ref>
==Simpler capacity planning==
Cloud computing moves the IT [[Capacity management |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.<ref name=SOAMAG/>
For example, the provider may be able to supply better ''demand smoothing'', because they can perform capacity planning over a much larger pool of resources, and for a large group of consumers, whose peak loads will probably not occur all at the same time.
=Risks=
Besides the advantages of cloud computing, there are also risks, at least for some consumers.<ref name=AdvantagesAndRisks_1/><ref name=AdvantagesAndRisks_2/>
==Privacy and security==
Because data is stored on a cloud provider's systems, and possibly in a location that may not be known by the consumer, there can be data-privacy and security issues.
Concerns over lack of privacy arise because providers control the data, and so consumers could perceive a risk that they may:<ref name=SaasVsCloudSoft>{{cite web|url= http://www.mindtouch.com/blog/2008/05/28/differences-between-saas-and-cloud-software/|title=Differences between SaaS and Cloud Software |author= Bjorg, Steve |publisher=MindTouch Inc |date= 28 May 2008|accessdate=28 February 2012}}</ref>
* 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.
* [[ Service-level_agreement |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 |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.<ref name=AmazonOutage>{{cite web|url= http://aws.amazon.com/message/65648/|title= Summary of the Amazon EC2 and Amazon RDS Service Disruption in the US East Region |publisher=Amazon Web Services |date= |accessdate=28 February 2012}}</ref><ref name="PCWorld24Sep09">{{cite news|url=http://www.pcworld.com/businesscenter/article/172614/google_outages_damage_cloud_credibility.html|title=Google Outages Damage Cloud Credibility|date=25 September 2009|accessdate=28 February 2012}}</ref>
=History=
==Origins==
===The concept===
[[Telecommunications network |Telecom networks]] have been known as the ''cloud'' since at least the 1990s,<ref name=CCDevelopment>{{cite web|url= http://www.cloudcomputingworld.org/cloud-computing/when-did-cloud-computing-develop.html|title= When Did Cloud Computing Develop?|publisher= Cloud Computing World |date= |accessdate=28 February 2012}}</ref><ref name=CoinedTerm>{{cite web|url= http://www.thebusinesstechnologyforum.com/2011/10/who-coined-the-term-cloud-computing/|title=Who coined the term “Cloud Computing”?|author= Regalado, Antonio |publisher=Business Technology Forum |date= 31 October 2011|accessdate=28 February 2012}}</ref> 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.<ref name=Metaphor/>
Cloud computing can be seen as a movement to apply the telecom cloud concept to IT.<ref name=CCDevelopment/>
===Cloud symbols===
Cloud symbols were used to represent the public telephone system on diagrams. Since this was the original basis of the Internet, through the use of [[ Modem |dial-up modems]], the cloud symbol was also adopted for the Internet, and it came into common use for this purpose in the 1990s.<ref name=CloudSymbol>{{cite web|url= http://media.wiley.com/product_data/excerpt/85/04705063/0470506385.pdf |title= Surveying the Role of Cloud Computing |publisher=Wiley |date= |accessdate=28 February 2012}}</ref>
===New paradigm===
Cloud computing has been a paradigm shift in IT acquisition and management, from outright purchase as a [[Product_(business) |product]], to consumption as a [[Service_(economics) | service]].<ref name=Metaphor/><ref name=ProfRKC>{{cite web|url= http://www.bus.emory.edu/ram|title=Ramnath K. Chellappa |publisher=Emory University |date= |accessdate=28 February 2012}}</ref> 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.<ref name=SOAMAG/><ref name=ProfRKC/>
This is because visitors to an Internet website need only be concerned with the cost of using the available services, rather than with the IT infrastructure that supports the site. The technical details of this infrastructure can be left to the hosting organisation, and it is up to them to ensure that its performance and capacity specifications are adequate for the expected traffic. For these reasons, things are simpler for the users, as opposed to acquiring, sizing, housing, staffing and maintaining IT equipment for themselves.<ref name=Metaphor/><ref name=SOAMAG/>
The transition from ownership to cloud computing didn't happen in one step, and in the history of this change there were other business models, such as [[Introduction_to_Cloud_computing#IT_acquisition_and_management|outsourcing]], and some related technologies, such as [[Introduction_to_Cloud_computing#Utility_computing |utility computing]]. However, the major shift has been from the exclusive use of a whole resource, such as a server or entire datacentre, over an extended period of time, such as several years, to consumption of a third-party operated service that may provide access to only part of a shared resource possibly contracted for on a short-term basis, such as monthly.
===First uses of the term===
The first uses of the term ''cloud computing'' were in the late 1990s, and in:
* November 1996 it was coined by NetCentric, and applied as a marketing term.<ref name=CoinedTerm/>
* May 1997 it was the subject of a trademark application (which was not approved).<ref name=CoinedTerm/>
* October 1997 it was discussed in an academic conference, and described as a new “paradigm where the boundaries of computing will be determined by economic rationale rather than technical limits”.<ref name=ProfRKC/><ref name=INFORMSmeeting>{{cite web|url= http://meetings2.informs.org/Dallas97/TALKS/MD19.html | title= Intermediaries in Electronic Markets |publisher= Institute for Operations Research and the Management Sciences (INFORMS) |date= |accessdate=28 February 2012}}</ref><ref name=Chellappa>Chellappa, R. K., Intermediaries in Cloud-Computing: A New Computing Paradigm, INFORMS Annual Meeting, Dallas, TX, 26-29 October 1997</ref>
* November 1997, the first newspaper article on the subject was published.<ref name=CoinedTerm/>
===Widespread adoption===
Whilst there were earlier services,<ref name=CLOUDTWEAKS>{{cite web|url= http://www.cloudtweaks.com/2011/02/a-history-of-cloud-computing/| title= A History of Cloud Computing |author= Biswas, Souraya |publisher= Cloud Tweaks | date= 9 February 2011|accessdate=28 February 2012}}</ref> cloud computing started to gain widespread use from 2007.<ref name=Metaphor/>
[[Google Docs]] was launched in 2006, and it went mainstream in 2007.<ref name=CCDevelopment/> Also in 2007, [[Amazon.com |Amazon]], [[IBM]] and [[Microsoft]] started calling their Internet-based offerings ''cloud computing''.<ref name=CoinedTerm/>
[[Google Trends]] shows ''cloud computing'' taking off as a search term in 2007, and as a news item in 2008.<ref name=CloudSymbol/><ref name=GoogleTrends>{{cite web|url= http://www.google.com/trends?q=cloud+computing/|title=Google Trends - cloud computing |publisher= Google |date= |accessdate=28 February 2012}}</ref>
==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.<ref name=Vaquero/>
===Virtualisation===
In IT, anything that is ''virtual'' does not exist as such, but is made to appear to exist through the use of software.<ref name=OUPVirtual>{{cite web|url= http://oxforddictionaries.com/definition/virtual|title=Virtual |publisher=Oxford University Press |date= |accessdate=28 February 2012}}</ref> Of course, this software runs on real computers that do actually exist, but the use of [[Virtualisation |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 |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 private server |virtual servers]], with their own storage and software.<ref name=OracleSapErp/> For example, one of these, or even a network of them,<ref name=OracleSapErp/> can be made available to each of the many tenants of a [[Introduction_to_Cloud_computing#Public_cloud |public cloud]], using a much smaller collection of real [[Server (computing) |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===
[[Time-sharing |Timesharing]], which originated in the 1960s, and which became a prominent computing model in the 1970s, involved sharing the resources of a [[Mainframe computer |mainframe computer]] among many concurrent users.
In the 1960s and 1970s, companies began to operate [[Service bureau|service bureaus]] that provided timesharing access for a fee.<ref name=Metaphor/>
===Client-server computing===
The [[Client-server_model |client-server model]] of computing, which originated in the 1970s, is a type of [[ Distributed_computing |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 [[Introduction_to_Cloud_computing#Service_models |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 [[Peer-to-peer |P2P networks]], in which all participating devices are both clients and servers, and there are some [[Introduction_to_Cloud_computing#Peer-to-peer_file_sharing |examples]] 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 |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 (computer scientist) |John McCarthy]] predicted in 1961 that computing would one day be delivered as a public utility.<ref name=AdvantagesAndRisks_2/>
===Cluster computing===
[[Computer cluster |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 |grid computing]],<ref name=Metaphor/> which originated in the 1990s, and [[Server farm |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|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 computer |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 [[Server room |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 [[Operating_system#Mainframes |batch operating systems]]. With these systems, users would take their data on [[Punched card |punched cards]] to the computer room, where they would be fed into the computer by a specialist [[ Computer_operator |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_system |multi-user operating systems]], which were accessed via directly connected [[ Computer_terminal |terminals]] not necessarily in the computer room, and then [[ Computer_network |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 |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 [[Hardware_virtualization#Reasons_for_virtualization |virtualisation]], and the advantage of this technology is the ability to provision new [[Virtual private server |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 |Utility computing]], where users have access only to part of a shared resource, and where the size of their share can be easily changed.
=See also=
*[[Computing]]
*[[Information technology |Information Technology (IT)]]
*[[Cloud computing]]
*[[Mobile cloud computing]]
*[[Cloud computing comparison]]
*[[Cloud computing consulting]]
*[[Cloud Computing Manifesto]]
*[[Cloud computing security]]
*[[Cloud collaboration]]
*[[Cloud database]]
*[[Cloud storage]]
*[[Application service provider|Application Service Provider]]
*[[Platform as a service|Platform as a Service]]
*[[Software as a service|Software as a Service]]
=References=
{{Reflist|30em}}
{{DEFAULTSORT:Cloud computing}}
[[Category:Cloud computing]]All content in the above text box is licensed under the Creative Commons Attribution-ShareAlike license Version 4 and was originally sourced from https://en.wikipedia.org/w/index.php?oldid=500028041.
![]() ![]() This site is not affiliated with or endorsed in any way by the Wikimedia Foundation or any of its affiliates. In fact, we fucking despise them.
|