The cloud computing concept originated in super large-scale internet companies such as Google and Amazon, and with the success of these companies, cloud computing, as its supporting technology, has been highly recognized and widely disseminated by the industry. Today, cloud computing has been widely regarded as the new phase of IT industry development, which has been endowed with a lot of industry and product level significance. Because of the multiplicity of meanings, various concepts are complex, many companies and practitioners have their own cloud, as Xu Zhimo in the "accidental" a poem said: "I am a cloud in the sky, and occasionally projected in your wave heart."
Traditional system design is mainly considered stand-alone environment, and cloud computing is the main environment is the data center. From stand-alone to data center, many design principles have radically changed, and the extreme point can even be said that the consistent system design principles of the PC era have been completely inapplicable to today.
Considering the many implications of cloud computing, data Center computing (Datacenter Computing) may be a more appropriate representation from a technical standpoint. In this paper, the technical field of data center calculation and the change of design principle are discussed. A view, for reference only.
Introduction to Cloud Computing
Since the development of personal computers in the the 1980s, the computing power of PCs has been increasing, with a single PC you can store all the data that you need and do the processing, such as writing documents, processing emails, etc. But in the internet age, when an internet company provides services, it needs to use data that is far more than a person's size, and the storage and processing of that data requires the concerted work of thousands of machines. This kind of server scale is not the individual can provide, only the big company or the organization can have, this seems to return to earlier mainframe times. From mainframe to PC to cloud, this is the development process of computer technology spiraling.
In short, cloud computing is the use of system architecture technology to integrate thousands of servers to provide users with flexible resource allocation and task scheduling capabilities. Here are a few keywords: one is super large, including the number of machines, the number of users and the number of concurrent tasks; second, resource integration, thousands of server resources can be assembled to do one thing, such as storing large amounts of data, or handling a large task; third, flexible and fast delivery, Large-scale server resources can be flexibly provisioned, broken down into several virtual resource pools by application requirements, and quickly support a large number of concurrent requests or jobs.
The advent of cloud computing technology has made it ever more powerful to collate and process data, and this ability can help us figure out the laws behind many seemingly unrelated events and use them to predict future developments. The combination of mobile and IoT technology can also better serve the society and People's daily life, such as disaster warning, smart city and intelligent transportation. The data processing capability is developed on the basis of massive data, and the system architecture technology which is supported as the foundation is developed and merged gradually, which makes up the cloud computing technology that we all see now.
Integrated system architecture and data processing technology, cloud computing technology from the bottom up can be divided into hardware infrastructure, software infrastructure and data intelligence three levels, as shown in Figure 1.
Figure 1 Cloud computing can be divided into three levels
The hardware infrastructure includes technology areas such as server, network, and data center design and implementation, and the software infrastructure focuses on technology areas such as storage, computing and large-scale distributed systems, while data intelligence focuses on data warehousing (Warehouse), machine learning (Machine Learning) and data analysis and visualization (visualization) and other technical fields. It is worth mentioning that these three levels of division are mainly in the technical field as the starting point, and the commonly mentioned three levels of cloud computing Saas/paas/iaas is more from the provision of resources and interfaces for the consideration of the Division, the two are not the same dimension.
The current concept of large data can be seen from the perspective of mass data analysis technology and software architecture support, including software infrastructure and data intelligence related technology. Both are related to data, but the difference is that the software infrastructure is concerned primarily with data format, capacity, and access patterns, and data intelligence is more concerned with the semantics of the data.
Data center computing is the design of hardware and software system from the perspective of architecture. The relevant technical areas and design principles will be discussed below.
Data center Calculations
Technical areas and challenges
As shown in Figure 2, data Center computing includes technology areas such as storage, computing, real-time storage and computing, hyper-scale systems, architecture, and data centers. Storage-system requirements come from two dimensions. First, a large number of unstructured data requires tables (table), objects (object) and files (file) and other storage structures, and secondly, the different access modes (such as read-only, write less, read and write evenly, etc.) will greatly affect the storage system design and optimization considerations.
Figure 2 Technology areas included in the datacenter
The requirements and technical characteristics of computing systems are closely related to the types of computing tasks. The data-intensive representation is mapreduce, which is more balanced between CPU and I/O requirements. Compute-intensive tasks and traffic-intensive tasks are CPU-intensive, but the data are accessed in different sizes. It is computationally intensive if only a small amount of data is required. And if you need access to large amounts of data, such as large matrix iterations, and memory limits that data must reside on multiple machines, then the system bottleneck is often shifted to the latency of communication, similar to traditional high-performance computing.
The usual storage system and computing systems can only support a certain level of latency and concurrency, and for higher requirements, real-time storage and computing systems are needed based on memory constructs. Considering the characteristics of memory, it is more suitable to provide rich semantic data structure on storage. On the basis of distributed data structure, the model of streaming data processing and triggering event processing is added to support real-time retrieval, OLAP, pubsub and other applications.
The large-scale system mainly through the distributed related technology to ensure the system availability (availability) and manageability (manageability), including system modeling, design, development and operational dimensions. Architecture includes virtual machines, server design, and so on. Data centers, including cabinet design, network planning and design, data center design and construction, mainly focus on energy efficiency (PUE).
123 Next