1、 A Tale of Clouds: Paradigm Comparisons and Some Thoughts on Research Issues* Lijun Mei The University of Hong Kong Pokfulam, Hong Kong ljmeics.hku.hk Cloud computing is an emerging computing paradigm. It aims to share data, calculations, and services transparentlyamong users of a massive grid. Alth
2、ough theindustry has started selling cloud-computing products, research challenges in various areas, such as UI design, task decomposition, task distribution, and task coordination, are still unclear. Therefore, we study the methods toreason and model cloud computing as a step towardidentifying fund
3、amental research questions in this paradigm. In this paper, we compare cloud computing withservice computing and pervasive computing. Both the industry and research community have actively examined these three computing paradigms. We draw a qualitative comparison among them based on the classic mode
4、l of computer architecture. We finally evaluate the comparison results and draw up a series of research questions in cloud computing for future exploration. Keywords: cloud computing, paradigm comparison. 1. Introduction Cloud computing is a paradigm that focuses on sharing data and computations ove
5、r a scalable network of nodes. Examples of such nodes include end user computers, data centers, and Web Services. We term such a network of nodes as a cloud. An application based on such clouds is taken as a cloud application. This paradigm is increasingly popular in the industry, where industrial l
6、eaders such as Microsoft 26, Google 2, and IBM 5 strongly promote the paradigm in recent years. An early attempt to formulate cloud computing dates back to at least 1997 8. However, to our best knowledge, the adoption and promotion of cloud computing has been slow until 2007 9. We observe that the h
7、istory of early industrial adoptions of cloud computing share some common milestones with that of service computing 4. For example, it took service computing 27 a long time (ten years or so) to receive worldwide support from leading companies like IBM, Microsoft 25, BEA, and Oracle. Similarly, it ha
8、s been many years since the early formalization effort 8 toward cloud computing. Besides, the wide adoption of a computing paradigm usually depends highly on the maturity of supporting technologies and industry recognitions. Service computing has become much more popular since the success of Web ser
9、vices, although a Web service is only one of the technologies to fulfill the notion of service orientation 4. Similarly, the distributed computing community has pointed out that many distributed computing techniques for cloud computing have been mature 71011. Many companies such as Dell and IBM have
10、 begun to ship cloud computing machines 510. Last but not the least, in either service computing or cloud computing, research developments lag behind industrial adoptions. For instance, COSCON, a leading international container shipper, has a successful adoption of service computing. It successfully
11、 used service-oriented architecture to improve the business responsibility to customers in 2004 3. Yet, research studies in serviceoriented architecture from the software engineering community 19 are still inadequate. Despite our survey over the Internet, to our best knowledge, there are few article
12、s to pinpoint research * 2008 IEEE. This material is presented to ensure timely dissemination of scholarly and technical work. Personal use of this material is permitted. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are
13、expected to adhere to the terms and constraints invoked by each authors copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder. Permission to reprint/republish this material for advertising or promotional purposes or for creating new collect
14、ive works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE. This research is supported in part by the General Research Fund of the Research Grant Council of Hong Kong (project nos. 111107, 717308, and 7
15、17506). Corresponding author. 2 issues in cloud computing. This would slow down the next research advances. We will alleviate this problem in the present paper. In this paper, we use the classic computer architecture model 15 to provide a qualitative comparison framework to compare cloud computing w
16、ith pervasive computing and service computing. The qualitative comparison framework includes three features: input-output (I/O), storage, and calculation. For each feature, we draw the comparison using multiple characteristics. Through such comparisons, we identify the connections between cloud comp
17、uting and the other two computing paradigms from the perspective of software engineering. Based on the connections, we draw up a few research issues and discuss them in the paper to promote future exploration. The main contribution of the paper is twofold: (i) To our best knowledge, we provide the f
18、irst qualitative comparison on cloud computing, service computing, and pervasive computing. (ii) We present a series of research issues in cloud computing on top of the comparison framework. These issues promote future explorations. The rest of the paper is organized as follows: Section 2 presents t
19、he preliminaries of cloud computing, service computing, and pervasive computing. Section 3 introduces our qualitative framework to compare the above three computing paradigms and present our efforts to identify research issues in cloud computing. Finally, we review related work in Section 4 and draw
20、 a conclusion in Section 5. 2. Preliminaries This section reviews the preliminaries of cloud computing, service computing, and pervasive computing. 2.1. Cloud computing As we have introduced in Section 1, a computing cloud is a massive network of nodes. Thus, scalability should be a quality feature
21、of the computing cloud. It has at least two dimensions, namely horizontal cloud scalability and vertical cloud scalability (adapted from 9). Horizontal cloud scalability is the ability to connect and integrate multiple clouds to work as one logical cloud. For instance, a cloud providing calculation
22、services (calculation cloud) can access a cloud providing storage services (storage cloud) to keep intermediate results. Two calculation clouds can also integrate into a larger calculation cloud. Vertical cloud scalability is the ability to improve the capacity of a cloud by enhancing individual existing nodes in the cloud (such as providing a server with more physical memory) or improving the bandwidth that connects two nodes. In addition, to meet increasing