Silicon Valley Magazine: Looking to cloud computing development Trends Cloud Computing Research Overview
Source: Internet
Author: User
KeywordsCloud computing through delivering implementing
"Silicon Valley net November 4," according to the 16th issue of the 2012 edition of "Silicon Valley" magazine, the paper describes the definition, classification, supporting technology and architecture of cloud computing by using the method of literature analysis, and introduces the research status and some technical solutions of cloud computing related technologies from the aspects of Computing architecture, programming model and Looking forward to the development trend of cloud computing, it can provide reference for the research of cloud computing.
keywords: cloud computing, parallel computing, virtualization, on-demand use of
0 Introduction
Cloud Computing (cloudcomputing) was born in the 3rd quarter of 2007, and it evolved in the context of advances in information technology and the application of demand-driven maturity. At its most basic level, cloud computing is a delivery and usage model of information services, that is, access to the services required and easily scalable through the network. This service can be an IT infrastructure (hardware, platform, software), or it can be any other IT service. Cloud computing uses the way of resource virtualization to realize distributed and parallel processing of computing and storage, which enables users to acquire computing power, storage space and information service on demand, which is the new realm of resource optimization and integration. By sharing the software and hardware resources of the platform and optimizing the configuration and dynamic scheduling of all kinds of resources in finer granularity, cloud computing can significantly reduce the cost of hardware and software, energy consumption and management cost, and the utilization of data center can be greatly improved. Therefore, compared with the traditional computing mode, the overall benefit of the cloud computing model can be increased by about 30 times times [1].
1 definition of cloud computing
Wikipedia defines cloud computing as: Cloud Computing (cloudcomputing), an internet-based computing method in which shared hardware and software resources and information can be supplied to computers and other devices on demand. The whole operation is much like the grid [2].
industry and scientists on the scope of the definition of cloud computing is still a lot of differences, but the basic consensus that cloud computing is based on network and virtualization technology, optimize the centralized system computing capacity to meet the needs of multiple terminal parallel multitasking, to achieve a specific service level agreement, real-time flexible computing processing environment, is a collection of virtualized it resource services.
Research progress of
2
2.1 Cloud Computing Architecture
generally speaking, the architecture of cloud computing environment can be divided into three layers: infrastructure layer, platform layer and application layer, as shown in Figure 1.
Infrastructure layer: Also known as the virtualization layer, the infrastructure layer creates a storage pool of computing resources by dividing physical resources using virtualization technologies such as XEN,KVM and VMware. The infrastructure layer is an important part of cloud computing, and many key functions, such as dynamic resource allocation, are implemented only through virtualization. The role of this layer is to provide a variety of low-level computing and storage resources as a service to the user.
platform layer: Built on top of infrastructure, composed of operating system and application framework. The purpose of the platform layer is to minimize the burden of directly deploying applications to virtual machines. For example, the Google application engine runs on the platform layer, providing APIs to support the implementation of data storage, databases, and typical Web applications. The role of this layer is to provide an application development and deployment platform as a service to the user.
Figure 1 Cloud computing Architecture
fig.1architectureofcloudcomputing
Application Layer: Deploy the actual cloud application at the top of the hierarchy. Unlike traditional applications, cloud applications can leverage good scalability to achieve better performance, availability, and low operating costs. The role of this layer is to provide the application primarily in a web-based manner to the customer.
The physical entity of
Cloud computing is the data center, consisting of the "cloud" base unit (cloud) and the "cloud" operating system, as well as the data center network that connects the cloud elements. The level of resources provided by cloud computing services can be divided into IaaS (infrastructure as Service), PaaS (Platform as Service), and SaaS (software as a service). Cloud computing can be divided into a private cloud that provides services to the agency, a public cloud for public use, and a hybrid cloud that combines the two.
2.2 Programming Model
The
cloud computing programming model is represented by mapreduce[3] and Dryad, and others are mostly variants of these two ways.
MapReduce is a software architecture proposed by Google to support parallel computing, which is suitable for parallel processing of large datasets. Its core idea is to introduce the concept and processing mechanism of "map" and "Reduce (simplify)".
MapReduce's main idea is that the problem to be executed is broken down into two parallel phases, the map phase and the reduce phase: first, the problem is decomposed by the map function, the data is partitioned into unrelated chunks, distributed to the server for parallel processing, and the reduction function is used to reduce the result to the total output. In the reliability support of this distributed processing system, by using the work node periodicity and the master node to report its activity state, the identification, monitoring and isolation of the abnormal node (keeping silence over a preset time interval) is realized, and the data assigned to the corresponding work node is migrated to other active nodes. The mechanism of atomic operation guarantee is used to control the conflict between parallel threads.
Dryad[4] is a simple programming model proposed by Microsoft for data parallelism. Specifically, Dryad abstracts the tasks into nodes in the diagram, and the Run-time environment maps these nodes to available compute nodes. In the Dryad model, task nodes are very flexible, and the parallel processing capability is further improved by supporting multi-core and cluster. Compared with the MapReduce model, the Dryad is insufficient because of the partitioning mechanism of task nodes, which increases the complexity of data classification, and the simplicity of data description is worse than MapReduce. At present, the improved Dryad model can be fully compatible with the MapReduce model, and gradually become a more versatile data parallel processing model. DRYADLINQ[5] will dryad with Microsoft's. NET language-level integrated query (. Netlanguageintegratedquery), so that users can operate on large scale data simply by writing a query language like SQL.
2.3 Cloud computing platform research status
because cloud computing is the result of the hybrid evolution of many technologies, its maturity is higher, and the big company promotes, it develops extremely quickly. Amazon, Google, IBM, Microsoft and Yahoo are the pioneers of cloud computing. VMware, Facebook and YouTube are unique in different areas of cloud computing. For academia, the current research used in the more mature open source cloud computing platform has Hadoop, Enomalism, Eucalyptus, Nimbus, 10Gen and so on.
Google is the first publisher and user of cloud computing, and the biggest practitioner of cloud computing at the moment. Google's rapid growth in cloud computing has benefited from the three systems that make up its infrastructure, including Google's Distributed File System (GFS) [6], large-scale distributed database bigtable[7, and the mapreduee of Google application files. By using these technologies, Google has deployed a number of cloud services, such as Googlemap,gmail,googledocs. In addition, Google offers cloud development services, which are provided by googleappengine running large, parallel applications, enabling developers to build their own applications using the same infrastructure that Google's powerful applications rely on.
's cloud computing architecture, proposed by Amazon, is based on a large cluster of 4 types of services: Simple storage services (Simplestorageservice), Elastic Computing Cloud (ELASTICCOMPUTECLOUD,EC2) [8]; Simple Queue Services ( Simplequeuingservice) and the simpledb that are still in the beta phase. In the Amazon cloud computing environment, users only need to run their own service instance to obtain the computing, storage and other cloud services provided by the platform, and the creation, maintenance and cancellation of the service instance virtual machine are transparent to the users, and the users pay by the way of use instance.
IBM has proposed a BLUECLOUD[9] architecture based on its technical advantages in the field of large-scale data computing and supercomputers. The core of the blue Cloud Platform is virtualization technology and storage technology. Virtualization in the blue cloud is achieved through hardware and software level two virtualization. The IBM cloud Platform's storage architecture supports both the Google file system and the storage Area Network (SAN) model, and the two models can be used separately or in the same way.
Hadoop is an open source and based on the MapReduce parallel programming model of the cluster implementation, is the most representative of the current Cloud computing platform Architecture Scheme [10]. In Hadoop, the underlying data management is a distributed data management technology similar to the GFS file system, which functions like the GFs file system, Hadoopdistributedfilesystem,hdfs But the distributed file system of Hadoop also has the function of automatic fault tolerance. Hadoop is a parallel system based on the MapReduce programming model, so it has the advantage of MapReduce, it has high efficiency for the parallel access processing of large-scale data, because of the use of Java language, it has a good cross-platform characteristics, because the application is the most widely.
4 Concluding remarks
Cloud computing is not a new concept from scratch, is gradually evolved under the condition of applying demand-driven and technological progress. The nature of cloud computing is a kind of computing resource integration mode which must appear after the software and hardware technology has developed to a certain stage. Cloud computing application is a trend, but it is still in the development period, the current stage has put forward a lot of good business models and technology to achieve the idea, but there are many technical problems and challenges. In the future, no matter how cloud computing evolves into other forms of "x computing", there is still a need to promote the development of this industry. This paper introduces the basic concepts, architectures and related technologies of cloud computing system, introduces the research status of cloud computing and forecasts the development trend of cloud computing.
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.