Table of Contents
Problem Description
The problem addressed in this paper with respect to cloud are about Security, Portability and Interoperability.
The paper also gives a quick introduction to cloud computing, it starts by introduction of clouds, or cluster of distributed computers provide on-demand resources or service over a network, usually Internet, with scale and reliability of data center.
There are two different types of clouds, one that provides computing instances on-demand & other computing capacity.
- on-demand computing instances: designed to scale out by providing additional computing instances.
- on-demand computing capacity: designed to support data or compute-intensive applications via scaling capacity.
Both clouds make use of same machine.
Second, it gives example of the different type clouds. Amazon’s EC2 services is an example of first category; one that provides on-demand computing instances. There is also the mention of Eucalyptus system which is an open-source option. It shares the same API’s as Amazon’s EC2 cloud. Google’s MapReduce is an example of the second category that provides on-demand computing capacity.
Third, it mentions a few features of cloud computing such as Scalability, Simplicity and Pricing, cloud computing has gained increased focus due these features. It also discusses, Private and Hosted clouds, and the different cloud pricing models.
Finally, it states the advantages and disadvantages of cloud computing. Some of the advantages include usage-based pricing model, which provide reduce capital expense, and ability to scale up as demand requires. On the other hand, the disadvantage of cloud computing is, first the services are often remote and second is that the customer sharing the same piece of hardware.
Contribution
The paper mentions types of cloud such as Private, Public etc.
- Private cloud: is devoted to a single organization’s internal use, or it might be run by organization itself. It is dedicated to a single client with isolated access.
- Public cloud or hosted cloud: owned by a single organization which offer’s cloud services to other third-party applications or clients. Example Amazon Web Services (AWS) or Microsoft Axure.
Further it also discusses on Parallel Computing over clouds, Security in cloud and addresses some standard interoperability and benchmarks.
The author elaborates on Parallel Computing on Cloud, using MapReduce. MapReduce is a programming model used to compute large dataset in parallel fashion. Computation takes a list of input pair to produce output pairs. The computation involves two operations: Map & Reduce. The Map operation takes the input pair and produces set of intermediate pairs. The MapReduce library then groups all intermediate value associated with that key and passes it to the Reduce function. The Reduce function accepts those intermediate keys and sets a value for that key. It merges these values to form a pair of smaller values.
The fundamental phases of MapReduce model in cloud computing are:
- Map phase
- Shuffle & Sort phase: Shuffling is the process by which output from mapper is transferred to the reducer. In this phase the intermediate pair share the same key. These intermediate pair then get sorted by key.
- Reduce Phase
There are many concerns regarding Security with cloud. Security for cloud is still in its infancy state. The example of Hadoop in paper supports the claim, stating that it doesn’t provide user- level authentication or access control. Paper gives another example of Sector5, which provides all the security loopholes that Hadoop has.
The paper also discusses Standards, Interoperability and Benchmarks for cloud computing. But there are several problems associated with Standards, Interoperability and Benchmarks; the article gives example of Amazon’s APIs which have become the de facto standards for clouds that provide on-demand instances, the platforms which use this APIs enjoy portability and interoperability. The article supports this by giving example of Eucalyptus, the application which run on Amazon EC2 service can easily run on Eucalyptus.
The problem for portability and interoperability arises for clouds that provide on-demand capacity. For instance, Hadoop MapReduce would have trouble running on a platform which is written in another language, say C++. But there are many perspectives associated with cloud interoperability; to name a few, Technique Perspective, Economic Perspective, Management Perspective and Security Perspective. To overcome this barrier of interoperability the article, suggests a use of common language which would help provide an interoperable way for applications to access compute services across several different clouds.
As with standards and common languages, cloud doesn’t have well established benchmarks. A well-established benchmark for cloud till date is TeraSort benchmark, for on-demand instance it is CloudStone and for on-demand capacity it is MalStone.
Critique
In conclusion, cloud computing has not only changed the ‘unit of computing’ to data centers, it is helping a range of companies, by providing services for less charge and maximum benefits, it has also introduced software, systems and programming models that significantly reduce the complexity of accessing resources. If the Security, Portability and Interoperability issues are addressed, then every organization with access to internet can be able to make full use of the powerful services the Cloud provides.
References
- An Approach to MapReduce Model for Cloud Computing http://www.ijarcs.info/index.php/Ijarcs/article/viewFile/2925/2908
- Using MapReduce and load balancing on the cloud https://www.ibm.com/developerworks/cloud/library/cl-mapreduce/index.html
- MapReduce http://mapreduce-specifics.wikispaces.asu.edu/MapReduce