• No results found

What is cloud computing?

In document Data Warehousing in the Cloud (Page 32-37)

There is no definitive definition of cloud computing, but Kimball and Ross (2013) propose that “Cloud computing is a self-provisioning and on-demand delivery of computing resources and applications over the Internet with a pay-as-you-go pricing model”.

Cloud, by definition, is a self-service system that allows end users to setup applications and services in a cloud computing environment without the intervention of an IT service provider (Armbrust et al., 2010).

Cloud computing addresses large amounts of computing power by aggregating computing resources and offering a single view of the system.

There are some common characteristics to the most of cloud computing environments (Mell and Grance, 2011):

10

• On-demand usage: the capacity of unilaterally provision computing capabilities as needed without requiring human interaction;

• Broad network access: resources available over the network, supporting heterogeneous client platforms;

• Resource pooling: multiple customers from the same physical resources, by securely separating the resources logically;

• Rapid elasticity: computing resources scale as required in response to runtime conditions or demanded by the consumer;

• Metered usage: resource usage is monitored, measured and reported transparently based on utilization.

A cloud computing solution addresses three main areas of operation, see Figure 3 (“Above the Clouds: A Berkeley View of Cloud Computing | EECS at UC Berkeley,” n.d.) (Mell and Grance, 2011):

• Infrastructure as a service (IaaS): it is a layer where virtualization is present and has a pool of resources ready to be used. Storage, networking and computer nodes are present here and can be dynamically assigned on demand – this is only possible due to virtualization technologies. This resources are available through virtual machines provided by the provider where the consumer can install an operating system and any other applications. The consumer does not control the infrastructure that provides the service but has the power to manage all its resources;

• Platform as a service (PaaS): it is built on top of infrastructure layer and is made by the operating system and other application frameworks such as Java or .Net. All maintenance of the platform and its native components are in the responsibility of the provider but the consumer has full control of the applications that he implements on the platform. The main idea behind this model is to enable consumers to streamline and simplify applications, freeing them from the complexity of installing and configuring infrastructure and programming environments;

• Software as a service (SaaS): provides the users with a complete software application or the user interface to the application itself. The cloud service provider manages the underlying cloud infrastructure, including servers, network, operating systems, storage, and application software. The user is unaware of the underlying architecture of the cloud.

11 Figure 3 – Cloud computing architecture (source: (Zhang et al., 2010)) From the consumer point of view, Table 1 clearly illustrates its responsibilities comparing the traditional approach with the three cloud computing areas where the green blocks illustrate the areas managed and in responsibility of the cloud provider and the white ones illustrates the consumer responsibilities area. Table 1 — Consumer responsibilities comparison Traditional

Approach IaaS PaaS SaaS

Applications Applications Applications Applications

Data Data Data Data

Runtime Runtime Runtime Runtime

Middleware Middleware Middleware Middleware

Operating

System Operating System Operating System Operating System Virtualization Virtualization Virtualization Virtualization

Processing Processing Processing Processing

Storage Storage Storage Storage

Network Network Network Network

There are also four types of cloud (Zhang et al., 2010) or four different models of implementation of the cloud services (detailed in section 3.2.2):

12 • Private cloud, for personal use of an organization. It is also known as internal cloud; • Public cloud, where service providers offer their resources as services to the general public; • Hybrid cloud, is a combination of private and public cloud services; • Community cloud, for exclusive use by a specific community of consumers that have shared concerns. 2.2.1 Cloud environment actors Cloud brought new features and possibilities to improve its users life but also originated a new market segment for IT with new business opportunities. Many organizations build their business around the cloud not only to use its services but also to offer business solutions in this environment. Like any other service, we can identify at least two actors that are directly connected with it:

• User or consumer, is the one who uses the functionalities or resources provided by the cloud. It is the entity or organization that uses the cloud computing services, whether they are related with software, platform or infrastructure;

• Provider, is the entity or organization responsible for making cloud services available to consumers. The provider is also responsible for managing the necessary infrastructure which supports its services.

Although these actors are the main stakeholders of a cloud environment, they don’t represent the total number of actors. As this concept grown, several entities have tried to enter in this business by offering a number of activities related to the provisioning process between consumers and providers. From entities auditing cloud service implementations, to intermediaries and resellers that add functionality to existing services, or even organizations that provide tools for service implementation.

2.2.2 Cloud implementation models

The cloud implementation models are the different means by which consumers access cloud services. These models are different and are characterized by the target audience they serve. If this assumption is taken into account, there are only two models: private and public. Regarding the definition and characterization of

13

community and hybrid clouds, the NIST proposal was considered confusing, inconsistent and sometimes ambiguous (Chou, 2011).

2.2.2.1 Private Cloud

Private clouds are typically used in the distribution of services in an internal organization environment. The infrastructure that supports the private cloud can be delegated to a service provided and stays private at all, it has not to be acquired and managed by the private cloud users themselves.

When managed internally by users themselves, they have full control over the processes, data or applications used in the cloud, but the lose some of the general principals or benefits of cloud computing, such as access to infrastructure at reduced prices, elasticity, resources availability or rapid deployment times.

2.2.2.2 Public Cloud

Unlike private clouds, this model is used for the distribution of services to the general public, typically via the Internet. The service provider is responsible for the entire support infrastructure. This infrastructure fully shared by the various users of this cloud. Thanks to this sharing and optimization of resource management processes, providers are able to maximize their use and enable them to be supplied at reduced prices to consumers. The separation of resources by users is merely logical and is done for example through the use of access credentials. 2.2.2.3 Other NIST proposed models

NIST says that a community cloud is targeted by a specific set of users from various organizations that have some kind of common interest. It also mentions that the infrastructure that supports a community cloud can belong to one or more of the involved organizations, by a service provider outside the community or by any combination of these.

Regarding the hybrid cloud, NIST describes it as a composition of different types of cloud mentioned earlier (private, public and community). The various clouds are interconnected through standard or proprietary means in order to allow the portability of data or applications between them.

14

In document Data Warehousing in the Cloud (Page 32-37)

Related documents