出版時間:2012-5 出版社:機械工業(yè)出版社 作者:(美)Kai Hwang,(美)Geoffrey C. Fox,(美)Jack J. Dongarra 頁數:648
Tag標簽:無
內容概要
隨著信息技術的廣泛應用和快速發(fā)展,云計算作為一種新興的商業(yè)計算模型日益受到人們的廣泛關注。本書是一本完整講述云計算與分布式系統(tǒng)基本理論及其應用的教材。書中從現代分布式模型概述開始,介紹了并行、分布式與云計算系統(tǒng)的設計原理、系統(tǒng)體系結構和創(chuàng)新應用,并通過開源應用和商業(yè)應用例子,闡述了如何為科研、電子商務、社會網絡和超級計算等創(chuàng)建高性能、可擴展的、可靠的系統(tǒng)。
《云計算與分布式系統(tǒng):從并行處理到物聯網(英文版)》特色:
全面覆蓋現代分布式計算技術,包括集群、網格、面向服務的體系結構、大規(guī)模并行處理器、對等網絡和云計算。
提供的案例研究來自主流分布式計算供應商,如亞馬遜、微軟、谷歌等。
解釋如何利用虛擬化來促進管理、調試、遷移和災難恢復。
專為本科生或研究生的分布式系統(tǒng)課程而設計——每章后都配有習題和進一步閱讀建議,并為教師提供配套的PPT等教輔資源。
作者簡介
Kai
Hwang(黃鎧)美國南加州大學電子工程與計算機科學教授,互聯網/云計算研究實驗室主任;清華大學IV客座講席教授;IEEE終身會士。他擁有加州大學伯克利分校
EECS博士學位,主要研究領域為云計算、分布式系統(tǒng)、高性能計算、普適計算、信任網格計算等。
現已發(fā)表論文220多篇,出版8本計算機體系結構、數字運算、并行處理、分布式系統(tǒng)、互聯網安全和云計算方面的相關著作。他還創(chuàng)建了《the
Journal of Parallel and Distributed
Computing》,并獲得了中國計算機學會2004杰出成就獎、IEEE2011 IPDPS創(chuàng)立者獎。
Geoffrey Fox
美國印第安那大學計算機科學、信息與物理學杰出教授,社會網格實驗室主任。之前曾在加州理工和錫拉丘茲大學任教,并領導多個研究組。他擁有英國劍橋大學的
博士學位。Fox在并行體系結構、分布式編程、網格計算、Web服務和互聯網應用方面做了廣泛的工作并發(fā)表了大量作品。
Jack Dongarra 美國田納西大學電子工程與計算機科學杰出教授,橡樹嶺國家實驗室杰出研究員,曼徹斯特大學Turning
Fellow。他是ACM/IEEE/SIAM/AAAS
會士,是超級計算機基準測試、數值分析、線性代數解算器和高性能計算領域的先驅。多年以來,他都在負責Top
500最快計算機的Linpack基準測試評估?;谒诔売嬎愫透咝阅茴I域的巨大貢獻,他被評為美國國家工程院院士。
書籍目錄
Preface
About the Authors.
PART SYSTEMS MODELING, CLUSTERING
AND VIRTUALIZATION
CHAPTER Distributed System Models and Enabling Technologies
Summary
1.1 Scalable Computing over the Internet
1.1.1 The Age of Internet Computing
1.1.2 Scalable Computing Trends and New Paradigms8
1.1.3 The Internet of Things and Cyber-Physical Systems
1.2 Technologies for Network-Based Systems.13
1.2.1 Multicore CPUs and Multithreading Technologies
1.2.2 GPU Computing to Exascale and Beyond.
1.2.3 Memory, Storage, and Wide-Area Networking.
1.2.4 Virtual Machines and Virtualization Middleware.
1.2.5 Data Center Virtualization for Cloud Computing.
1.3 System Models for Distributed and Cloud Computing.
1.3.1 Clusters of Cooperative Computers.
1.3.2 Grid Computing Infrastructures.
1.3.3 Peer-to-Peer Network Families
1.3.4 Cloud Computing over the Internet.
1.4 Software Environments for Distributed Systems and Clouds.
1.4.1 Service-Oriented Architecture (SOA)
1.4.2 Trends toward Distributed Operating Systems.
1.4.3 Parallel and Distributed Programming Models.
1.5 Performance, Security, and Energy Efficiency
1.5.1 Performance Metrics and Scalability Analysis.
1.5.2 Fault Tolerance and System Availability.
1.5.3 Network Threats and Data Integrity
1.5.4 Energy Efficiency in Distributed Computing.
1.6 Bibliographic Notes and Homework Problems.
Acknowledgments.
References
Homework Problems.
Foreword.
CHAPTER Computer Clusters for Scalable Parallel Computing
Summary.
2.1 Clustering for Massive Parallelism
2.1.1 Cluster Development Trends
2.1.2 Design Objectives of Computer Clusters.
2.1.3 Fundamental Cluster Design Issues.
2.1.4 Analysis of the Top Supercomputers.
2.2 Computer Clusters and MPP Architectures
2.2.1 Cluster Organization and Resource Sharing
2.2.2 Node Architectures and MPP Packaging.
2.2.3 Cluster System Interconnects
2.2.4 Hardware, Software, and Middleware Support.
2.2.5 GPU Clusters for Massive Parallelism
2.3 Design Principles of Computer Clusters
2.3.1 Single-System Image Features
2.3.2 High Availability through Redundancy.
2.3.3 Fault-Tolerant Cluster Configurations
2.3.4 Checkpointing and Recovery Techniques
2.4 Cluster Job and Resource Management
2.4.1 Cluster Job Scheduling Methods
2.4.2 Cluster Job Management Systems.
2.4.3 Load Sharing Facility (LSF) for Cluster Computing
2.4.4 MOSIX: An OS for Linux Clusters and Clouds.
2.5 Case Studies of Top Supercomputer Systems.
2.5.1 Tianhe-1A: The World Fastest Supercomputer in 10
2.5.2 Cray XT5 Jaguar: The Top Supercomputer in 09
2.5.3 IBM Roadrunner: The Top Supercomputer in 08
2.6 Bibliographic Notes and Homework Problems
Acknowledgments. 1
References.
Homework Problems.
CHAPTER Virtual Machines and Virtualization of Clusters and Data
Centers.
Summary
3.1 Implementation Levels of Virtualization
3.1.1 Levels of Virtualization Implementation.
3.1.2 VMM Design Requirements and Providers.
3.1.3 Virtualization Support at the OS Level
3.1.4 Middleware Support for Virtualization
3.2 Virtualization Structures/Tools and Mechanisms.
3.2.1 Hypervisor and Xen Architecture.
3.2.2 Binary Translation with Full Virtualization.
3.2.3 Para-Virtualization with Compiler Support.
xii Contents
3.3 Virtualization of CPU, Memory, and I/O Devices.
3.3.1 Hardware Support for Virtualization
3.3.2 CPU Virtualization
3.3.3 Memory Virtualization.
3.3.4 I/O Virtualization150
3.3.5 Virtualization in Multi-Core Processors.
3.4 Virtual Clusters and Resource Management.
3.4.1 Physical versus Virtual Clusters
3.4.2 Live VM Migration Steps and Performance Effects.
3.4.3 Migration of Memory, Files, and Network Resources.
3.4.4 Dynamic Deployment of Virtual Clusters
3.5 Virtualization for Data-Center Automation
3.5.1 Server Consolidation in Data Centers
3.5.2 Virtual Storage Management. 1
3.5.3 Cloud OS for Virtualized Data Centers.
3.5.4 Trust Management in Virtualized Data Centers.
3.6 Bibliographic Notes and Homework Problems
Acknowledgments.
References.
Homework Problems.
PART COMPUTING CLOUDS, SERVICE-ORIENTED
ARCHITECTURE, AND PROGRAMMING
CHAPTER Cloud Platform Architecture over Virtualized Data
Centers
Summary
4.1 Cloud Computing and Service Models.
4.1.1 Public, Private, and Hybrid Clouds.
4.1.2 Cloud Ecosystem and Enabling Technologies.
4.1.3 Infrastructure-as-a-Service (IaaS)
4.1.4 Platform-as-a-Service (PaaS) and Software-as-a-Service
(SaaS).
4.2 Data-Center Design and Interconnection Networks206
4.2.1 Warehouse-Scale Data-Center Design206
4.2.2 Data-Center Interconnection Networks
4.2.3 Modular Data Center in Shipping Containers.
4.2.4 Interconnection of Modular Data Centers
4.2.5 Data-Center Management Issues
4.3 Architectural Design of Compute and Storage Clouds.
4.3.1 A Generic Cloud Architecture Design
4.3.2 Layered Cloud Architectural Development.
4.3.3 Virtualization Support and Disaster Recovery.
4.3.4 Architectural Design Challenges
Contents xiii
4.4 Public Cloud Platforms: GAE, AWS, and Azure
4.4.1 Public Clouds and Service Offerings.
4.4.2 Google App Engine (GAE)229
4.4.3 Amazon Web Services (AWS).
4.4.4 Microsoft Windows Azure.
4.5 Inter-cloud Resource Management
4.5.1 Extended Cloud Computing Services.
4.5.2 Resource Provisioning and Platform Deployment
4.5.3 Virtual Machine Creation and Management.
4.5.4 Global Exchange of Cloud Resources
4.6 Cloud Security and Trust Management.
4.6.1 Cloud Security Defense Strategies.
4.6.2 Distributed Intrusion/Anomaly Detection
4.6.3 Data and Software Protection Techniques
4.6.4 Reputation-Guided Protection of Data Centers
4.7 Bibliographic Notes and Homework Problems
Acknowledgements
References.
Homework Problems.
CHAPTER Service-Oriented Architectures for Distributed
Computing
Summary
5.1 Services and Service-Oriented Architecture
5.1.1 REST and Systems of Systems.
5.1.2 Services and Web Services.
5.1.3 Enterprise Multitier Architecture
5.1.4 Grid Services and OGSA.
5.1.5 Other Service-Oriented Architectures and Systems.
5.2 Message-Oriented Middleware
5.2.1 Enterprise Bus.
5.2.2 Publish-Subscribe Model and Notification
5.2.3 Queuing and Messaging Systems.
5.2.4 Cloud or Grid Middleware Applications.
5.3 Portals and Science Gateways
5.3.1 Science Gateway Exemplars
5.3.2 HUBzero Platform for Scientific Collaboration
5.3.3 Open Gateway Computing Environments (OGCE).
5.4 Discovery, Registries, Metadata, and Databases.
5.4.1 UDDI and Service Registries.
5.4.2 Databases and Publish-Subscribe
5.4.3 Metadata Catalogs308
5.4.4 Semantic Web and Grid
5.4.5 Job Execution Environments and Monitoring.
xiv Contents
5.5 Workflow in Service-Oriented Architectures.
5.5.1 Basic Workflow Concepts.315
5.5.2 Workflow Standards316
5.5.3 Workflow Architecture and Specification.
5.5.4 Workflow Execution Engine319
5.5.5 Scripting Workflow System Swift.
5.6 Bibliographic Notes and Homework Problems
Acknowledgements
References.
Homework Problems.
CHAPTER Cloud Programming and Software Environments.
Summary
6.1 Features of Cloud and Grid Platforms
6.1.1 Cloud Capabilities and Platform Features
6.1.2 Traditional Features Common to Grids and Clouds.
6.1.3 Data Features and Databases.
6.1.4 Programming and Runtime Support341
6.2 Parallel and Distributed Programming Paradigms
6.2.1 Parallel Computing and Programming Paradigms
6.2.2 MapReduce, Twister, and Iterative MapReduce.
6.2.3 Hadoop Library from Apache.355
6.2.4 Dryad and DryadLINQ from Microsoft.
6.2.5 Sawzall and Pig Latin High-Level Languages.
6.2.6 Mapping Applications to Parallel and Distributed
Systems
6.3 Programming Support of Google App Engine
6.3.1 Programming the Google App Engine
6.3.2 Google File System (GFS).
6.3.3 BigTable, Google’s NOSQL System
6.3.4 Chubby, Google’s Distributed Lock Service.
6.4 Programming on Amazon AWS and Microsoft Azure.
6.4.1 Programming on Amazon EC2.
6.4.2 Amazon Simple Storage Service (S3).
6.4.3 Amazon Elastic Block Store (EBS) and SimpleDB.
6.4.4 Microsoft Azure Programming Support.
6.5 Emerging Cloud Software Environments.
6.5.1 Open Source Eucalyptus and Nimbus.
6.5.2 OpenNebula, Sector/Sphere, and OpenStack.
6.5.3 Manjrasoft Aneka Cloud and Appliances.
6.6 Bibliographic Notes and Homework Problems399
Acknowledgement
References.
Homework Problems.
Contents xv
PART GRIDS, P2P, AND THE FUTURE INTERNET
CHAPTER Grid Computing Systems and Resource Management
Summary 16
7.1 Grid Architecture and Service Modeling.
7.1.1 Grid History and Service Families.
7.1.2 CPU Scavenging and Virtual Supercomputers419
7.1.3 Open Grid Services Architecture (OGSA)
7.1.4 Data-Intensive Grid Service Models425
7.2 Grid Projects and Grid Systems Built
7.2.1 National Grids and International Projects.
7.2.2 NSF TeraGrid in the United States.
7.2.3 DataGrid in the European Union
7.2.4 The ChinaGrid Design Experiences
7.3 Grid Resource Management and Brokering
7.3.1 Resource Management and Job Scheduling.
7.3.2 Grid Resource Monitoring with CGSP
7.3.3 Service Accounting and Economy Model
7.3.4 Resource Brokering with Gridbus.
7.4 Software and Middleware for Grid Computing
7.4.1 Open Source Grid Middleware Packages.
7.4.2 The Globus Toolkit Architecture (GT4).
7.4.3 Containers and Resources/Data Management.
7.4.4 The ChinaGrid Support Platform (CGSP)
7.5 Grid Application Trends and Security Measures
7.5.1 Grid Applications and Technology Fusion
7.5.2 Grid Workload and Performance Prediction.
7.5.3 Trust Models for Grid Security Enforcement
7.5.4 Authentication and Authorization Methods
7.5.5 Grid Security Infrastructure (GSI).
7.6 Bibliographic Notes and Homework Problems
Acknowledgments
References471
Homework Problems
CHAPTER Peer-to-Peer Computing and Overlay Networks
Summary
8.1 Peer-to-Peer Computing Systems.
8.1.1 Basic Concepts of P2P Computing Systems.
8.1.2 Fundamental Challenges in P2P Computing.
8.1.3 Taxonomy of P2P Network Systems.
8.2 P2P Overlay Networks and Properties
8.2.1 Unstructured P2P Overlay Networks
xvi Contents
8.2.2 Distributed Hash Tables (DHTs)
8.2.3 Structured P2P Overlay Networks.
8.2.4 Hierarchically Structured Overlay Networks
8.3 Routing, Proximity, and Fault Tolerance
8.3.1 Routing in P2P Overlay Networks.
8.3.2 Network Proximity in P2P Overlays
8.3.3 Fault Tolerance and Failure Recovery
8.3.4 Churn Resilience against Failures.
8.4 Trust, Reputation, and Security Management
8.4.1 Peer Trust and Reputation Systems
8.4.2 Trust Overlay and DHT Implementation
8.4.3 PowerTrust: A Scalable Reputation System.
8.4.4 Securing Overlays to Prevent DDoS Attacks.
8.5 P2P File Sharing and Copyright Protection
8.5.1 Fast Search, Replica, and Consistency
8.5.2 P2P Content Delivery Networks
8.5.3 Copyright Protection Issues and Solutions
8.5.4 Collusive Piracy Prevention in P2P Networks
8.6 Bibliographic Notes and Homework Problems
Acknowledgements
References
Homework Problems.
CHAPTER Ubiquitous Clouds and the Internet of Things
Summary
9.1 Cloud Trends in Supporting Ubiquitous Computing
9.1.1 Use of Clouds for HPC/HTC and Ubiquitous Computing
9.1.2 Large-Scale Private Clouds at NASA and CERN
9.1.3 Cloud Mashups for Agility and Scalability
9.1.4 Cloudlets for Mobile Cloud Computing
9.2 Performance of Distributed Systems and the Cloud
9.2.1 Review of Science and Research Clouds
9.2.2 Data-Intensive Scalable Computing (DISC)
9.2.3 Performance Metrics for HPC/HTC Systems
9.2.4 Quality of Service in Cloud Computing
9.2.5 Benchmarking MPI, Azure, EC2, MapReduce, and Hadoop
9.3 Enabling Technologies for the Internet of Things
9.3.1 The Internet of Things for Ubiquitous Computing
9.3.2 Radio-Frequency Identification (RFID)
9.3.3 Sensor Networks and ZigBee Technology
9.3.4 Global Positioning System (GPS)
9.4 Innovative Applications of the Internet of Things
9.4.1 Applications of the Internet of Things
Contents xvii
9.4.2 Retailing and Supply-Chain Management
9.4.3 Smart Power Grid and Smart Buildings
9.4.4 Cyber-Physical System (CPS)
9.5 Online Social and Professional Networking
9.5.1 Online Social Networking Characteristics
9.5.2 Graph-Theoretic Analysis of Social Networks
9.5.3 Communities and Applications of Social Networks
9.5.4 Facebook: The World’s Largest Social Network
9.5.5 Twitter for Microblogging, News, and Alert Services
9.6 Bibliographic Notes and Homework Problems
Acknowledgements
References.
Homework Problems
Index
章節(jié)摘錄
版權頁: 插圖: SUMMARY This chapter presents the evolutionary changes that have occurred in parallel,distributed,and cloudcomputing over the past 30 years,driven by applications with variable workloads and large datasets.We study both high-performance and high-throughput computing systems in parallel computersappearing as computer clusters,service-oriented architecture,computational grids,peer-to-peer networks,Internet clouds,and the Internet of Things.These systems are distinguished by their hardware architectures,OS platforms,processing algorithms,communication protocols,and servicemodels applied.We also introduce essential issues on the scalability,performance,availability,security,and energy efficiency in distributed systems. 1.1 SCALABLE COMPUTING OVER THE INTERNET Over the past 60 years,computing technology has undergone a series of platform and environmentchanges.In this section,we assess evolutionary changes in machine architecture,operating systemplatform,network connectivity,and application workload.Instead of using a centralized computerto solve computational problems,a parallel and distributed computing system uses multiplecomputers to solve large-scale problems over the Internet.Thus,distributed computing becomesdata-intensive and network-centric.This section identifies the applications of modern computersystems that practice parallel and distributed computing.These large-scale Internet applicationshave significantly enhanced the quality of life and information services in society today. 1.1.1 The Age of Internet Computing Billions of people use the Internet every day.As a result,supercomputer sites and large data centersmust provide high-performance computing services to huge numbers of Internet users concurrently.Because of this high demand,the Linpack Benchmark for high-performance computing(HPC)applications is no longer optimal for measuring system performance.The emergence of computingclouds instead demands high-throughput computing(HTC) systems built with parallel and distributed computing technologies [5,6,19,25].We have to upgrade data centers using fast servers,storagesystems,and high-bandwidth networks.The purpose is to advance network-based computing andweb services with the emerging new technologies. 1.1.1.1 The Platform Evolution Computer technology has gone through five generations of development,with each generation lastingfrom 10 to 20 years.Successive generations are overlapped in about 10 years.For instance,from1950 to 1970,a handful of mainframes,including the IBM 360 and CDC 6400,were built to satisfythe demands of large businesses and government organizations.From 1960 to 1980,lower-cost mini-computers such as the DEC PDP 11 and VAX Series became popular among small businesses and oncollege campuses.
媒體關注與評論
“網格計算、對等計算、云計算這些新興領域近幾年日益受到學術界和工業(yè)界的關注。預計這些新技術將對商業(yè)、科學和工程及社會等眾多方面產生巨大影響。本書的及時出版將會幫助讀者了解分布式計算領域的最新技術。” —— Yi Pan, 佐治亞州立大學 “本書是一本全面而新穎的教材,內容覆蓋高性能計算、分布式與云計算、虛擬化和網格計算。作者將應用與技術趨勢相結合,揭示了計算的未來發(fā)展。無論是對在校學生還是經驗豐富的實踐者,本書都是一本優(yōu)秀的讀物。” ——Thomas J. Hacker, 普度大學
編輯推薦
《云計算與分布式系統(tǒng):從并行處理到物聯網(英文版)》編輯推薦:你是學習分布式系統(tǒng)或分布式計算課程的學生嗎?如果是,那么《云計算與分布式系統(tǒng):從并行處理到物聯網(英文版)》是你的最佳選擇?!对朴嬎闩c分布式系統(tǒng):從并行處理到物聯網(英文版)》作者做了一項杰出的工作,《云計算與分布式系統(tǒng):從并行處理到物聯網(英文版)》中講述了硬件和軟件、系統(tǒng)體系結構、新的編程范式和生態(tài)系統(tǒng)方面的最新進展,既關注速度和性能優(yōu)化,又考慮能源效率與節(jié)能?!对朴嬎闩c分布式系統(tǒng):從并行處理到物聯網(英文版)》的目的是將傳統(tǒng)的多處理器和多計算機集群轉換成Web規(guī)模網格和云。也許更重要的是?!对朴嬎闩c分布式系統(tǒng):從并行處理到物聯網(英文版)》關注未來互聯網中泛在使用的對等網絡,包括近年來快速發(fā)展的大型社會網絡和物聯網。
名人推薦
“網格計算、對等計算、云計算這些新興領域近幾年日益受到學術界和工業(yè)界的關注。預計這些新技術將對商業(yè)、科學和工程及社會等眾多方面產生巨大影響。本書的及時出版將會幫助讀者了解分布式計算領域的最新技術?!?——Yi Pan 佐治亞州立大學 “本書是一本全面而新穎的教材,內容覆蓋高性能計算、分布式與云計算、虛擬化和網格計算。作者將應用與技術趨勢相結合,揭示了計算的未來發(fā)展。無論是對在校學生還是經驗豐富的實踐者,本書都是一本優(yōu)秀的讀物。” ——Thomas J.Hacker 普度大學
圖書封面
圖書標簽Tags
無
評論、評分、閱讀與下載