key ideas and principles of cloud computing
Cloud computing is one of the most popular, hottest, fashionable directions of information technology in progress. The concept of cloud has already been associated long ago with the metaphoric picture of the Internet that provides availability to a number of Web services. Cloud computing is a practical implementation of this idea, based on a structured collection of scalable and virtualized computing resources (software and data) available to the users via the Internet and implemented on the basis of powerful data (processing) centers. A cloud client entirely uses Web interface to the cloud enabled by a Web browser, and does not need any extra software to be installed on the client computing device for using the cloud.
Informally speaking, a cloud provided by some company is a good characteristic of this company. The cloud accumulates and expresses not only the technologies of the company but its spirit, trustworthiness, and its attitude also to the users “in one cloud cover.”
The general structure of the cloud is depicted below
From the viewpoint of the users, there exist various kinds of clouds, as considered below.
Public cloud is a cloud model in which the cloud applications, cloud storage, and other cloud resources are available to any registered cloud user who pays for the cloud services. This model is the most prospective and the most convenient for users but the most expensive to implement and the most resource consuming. Only a very large company can allow itself to develop and support such cloud model. The functioning of a public cloud is based on several big datacenters, each of which occupies a large building and consumes a lot of electric energy. An example of a public cloud is Microsoft Azure. Other examples are the Amazon Web Services cloud, Oracle cloud, and IBM Bluemix cloud.
Community cloud is a smaller cloud model in which the cloud infrastructure and services are available to some professional community. An example is the Institute of Electrical and Electronics Engineers(IEEE) community cloud. To use this cloud, the minimal requirement is to become an IEEE member.
Private cloud is a cloud model in which the cloud services are available only to the employees of some company. The development and maintenance of such a cloud is quite realistic for any company – even for a small one. I recommend the readers to start their own cloud development from creating a private cloud. Moreover, the providers of public clouds, such as Oracle, IBM, and Microsoft, provide support for the fast development of private clouds.
Hybrid cloud is a cloud model implementing a hybrid of several related public, community, or private clouds with the purpose of their joint use to solve some concrete tasks.
Clouds are offered by several companies (e.g., IBM, Oracle, Google, Microsoft, etc.) that serve as thecloud (service) providers. They provide, in the form of their clouds, structured collections of powerful computing resources, which the individual users typically do not have.
As a rule, the users must pay the cloud provider for the services of the cloud for a certain period of time (e.g., 1 year). There are also complimentary public cloud services, for example, those available on the Windows Live (http://www.live.com) portal.
Kinds of clouds in cloud computing (public, private and hybrid clouds) are illustrated below
No matter how prospective cloud computing is, there are some limitations and shortcomings of the cloud approach.
The first one is as follows. The user appears to be fully dependent on the cloud where the software and data consumed by the user are available and cannot directly control either the cloud computers in the datacenter, or even back up his or her data stored in the cloud. In this relation, there arise a lot of issues: security of cloud computing, keeping the privacy of the users’ data, and so on. Some of those issues are far from their solution as yet.
The second group of serious problems of organizing cloud computing is related to managing the datacenters: their power consumption and their load balancing, since cloud computing with a public cloud inevitable leads to the need of serving many million users at each moment of time. For reasons of heavy power consumption, currently some companies, in spite of all the cloud computing perspectives, have even had to close their cloud datacenters, each occupying one or several big buildings of several thousand square feet.