雲計算(典藏版)

劉鵬

買這商品的人也買了...

商品描述

本書是國內銷量大、被眾多高校採用的教材《雲計算》的典藏版,是中國信息協會教育分會人工智能教育專家委員會主任劉鵬教授團隊的心血之作。在應對大數據挑戰的過程中,雲計算技術日趨成熟,擁有大量成功的商業應用。本書追蹤最新技術,包括大數據與雲計算、Google雲計算原理與應用、Amazon雲計算 AWS、微軟雲計算Microsoft Azure、Hadoop3.0:主流開源雲架構、虛擬化技術、容器技術、雲原生技術、雲計算數據中心、雲計算核心算法、雲際計算技術、中國雲計算技術及總結與展望等。“讓學習變得輕松”是本書的初衷。通過本書可掌握雲計算的概念和原理,學習主要的雲計算平臺和技術,還可瞭解雲計算的核心算法和發展趨勢。本書適合作為相關專業本科和研究生的教材,也可作為雲計算研發人員和愛好者的參考資料。

目錄大綱

第1章 大數據與雲計算 1
1.1 大數據時代 1
1.2 雲計算概述 3
1.3 雲計算發展現狀 5
1.4 雲計算實現機制 7
1.5 雲計算壓倒性的成本優勢 8
習題 12
第2章 Google雲計算原理與應用 13
2.1 Google文件系統 13
2.1.1 系統架構 14
2.1.2 容錯機制 16
2.1.3 系統管理技術 17
2.2 分佈式計算編程模型MapReduce 17
2.2.1 產生背景 17
2.2.2 編程模型 18
2.2.3 實現機制 19
2.2.4 案例分析 20
2.3 分佈式鎖服務Chubby 22
2.3.1 Paxos算法 22
2.3.2 Chubby系統設計 23
2.3.3 Chubby中的Paxos算法 24
2.3.4 Chubby文件系統 26
2.3.5 通信協議 27
2.3.6 正確性與性能 29
2.4 分佈式結構化數據表BigTable 30
2.4.1 設計動機與目標 31
2.4.2 數據模型 31
2.4.3 系統架構 32
2.4.4 主服務器 33
2.4.5 子表服務器 34
2.4.6 性能優化 37
2.5 分佈式存儲系統Megastore 39
2.5.1 設計目標及方案選擇 39
2.5.2 Megastore數據模型 40
2.5.3 Megastore中的事務及並發控制 42
2.5.4 Megastore基本架構 43
2.5.5 核心技術——復制 45
2.5.6 產品性能及控制措施 48
2.6 分佈式監控系統Dapper 50
2.6.1 基本設計目標 50
2.6.2 Dapper監控系統簡介 50
2.6.3 關鍵性技術 53
2.6.4 常用Dapper工具 54
2.6.5 Dapper使用經驗 56
2.7 海量數據的交互式分析工具Dremel 58
2.7.1 產生背景 58
2.7.2 數據模型 59
2.7.3 嵌套式的列存儲 60
2.7.4 查詢語言與執行 64
2.7.5 性能分析 66
2.8 內存大數據分析系統PowerDrill 67
2.8.1 產生背景與設計目標 67
2.8.2 基本數據結構 68
2.8.3 性能優化 69
2.8.4 性能分析與對比 71
2.9 Google應用程序引擎 72
2.9.1 Google App Engine簡介 72
2.9.2 應用程序環境 74
2.9.3 Google App Engine服務 77
習題 87
第3章 Amazon雲計算AWS 88
3.1 基礎存儲架構Dynamo 88
3.1.1 Dynamo概況 88
3.1.2 Dynamo架構的主要技術 90
3.2 彈性計算雲 97
3.2.1 EC2的基本架構 97
3.2.2 EC2的關鍵技術 99
3.2.3 EC2的安全及容錯機制 101
3.3 簡單存儲服務 102
3.3.1 S3的基本概念和操作 102
3.3.2 S3的數據一致性模型 103
3.3.3 S3的安全措施 104
3.4 非關系型數據庫服務 106
3.4.1 非關系型數據庫與傳統關系型數據庫的比較 106
3.4.2 SimpleDB 107
3.4.3 DynamoDB 109
3.4.4 SimpleDB和DynamoDB的比較 109
3.5 關系型數據庫服務 110
3.5.1 RDS的基本原理 110
3.5.2 RDS的使用 111
3.6 簡單隊列服務 111
3.6.1 SQS的基本模型 111
3.6.2 SQS的消息 112
3.7 內容推送服務 114
3.7.1 CDN 114
3.7.2 CloudFront 116
3.8 其他Amazon雲計算服務 117
3.8.1 快速應用部署Elastic Beanstalk和服務模板CloudFormation 117
3.8.2 DNS服務Route53 118
3.8.3 虛擬私有雲VPC 118
3.8.4 簡單通知服務和簡單郵件服務 119
3.8.5 彈性MapReduce服務 119
3.8.6 電子商務服務DevPay、FPS和簡單支付服務 121
3.8.7 Amazon執行網絡服務 125
3.8.8 土耳其機器人 125
3.8.9 數據倉庫服務Redshift 126
3.8.10 應用流服務AppStream和數據流服務Kinesis 127
3.8.11 增強現實(AR)和虛擬現實(VR)應用Sumerian 128
3.8.12 區塊鏈應用Managed Blockchain 128
3.9 AWS應用實例 129
3.9.1 照片和視頻共享網站SmugMug 129
3.9.2 視頻製作網站Animoto 129
3.9.3 網站排名公司Alexa 130
3.10 小結 130
習題 131
第4章 微軟雲計算Microsoft Azure 132
4.1 微軟雲計算平臺 132
4.2 微軟雲操作系統Microsoft Azure 134
4.2.1 Microsoft Azure概述 134
4.2.2 Microsoft Azure計算服務 135
4.2.3 Microsoft Azure存儲服務 139
4.2.4 Microsoft Azure Connect 147
4.2.5 Microsoft Azure CDN 148
4.2.6 Fabric控制器 149
4.3 微軟雲關系數據庫SQL Azure 150
4.3.1 SQL Azure概述 150
4.3.2 SQL Azure關鍵技術 151
4.3.3 SQL Azure和SQL Server對比 153
4.4 Microsoft Azure Service Fabric 154
4.4.1 Service Fabric 概述 154
4.4.2 Service Fabric體系結構 155
4.4.3 Service Fabric群集 157
4.5 Microsoft Azure Marketplace 163
4.6 Microsoft Azure服務平臺 164
4.6.1 網站 164
4.6.2 虛擬機 165
4.6.3 雲服務 166
4.6.4 移動服務 167
4.6.5 大數據處理 168
4.6.6 媒體服務 169
4.6.7 物聯網平臺 170
4.6.8 人工智能服務 171
習題 172
第5章 Hadoop 3.0:主流開源雲架構 173
5.1 挑戰與對策 173
5.1.1 問題概述 173
5.1.2 常規解決方案 173
5.1.3 分佈式下的解決方案 174
5.1.4 小結 178
5.2 Hadoop 3.0簡述 178
5.2.1 Hadoop發展 178
5.2.2 Hadoop 3.0生態圈項目 179
5.2.3 Hadoop應用 181
5.3 Hadoop 3.0部署 181
5.3.1 部署綜述 182
5.3.2 傳統解壓包方式部署 186
5.4 Hadoop 3.0體系架構 192
5.4.1 公共組件Common 192
5.4.2 分佈式文件系統HDFS 194
5.4.3 分佈式操作系統YARN 199
5.5 Hadoop 3.0訪問接口 206
5.5.1 配置項接口 206
5.5.2 瀏覽器接口 207
5.5.3 命令行接口 207
5.5.4 HDFS編程 209
5.5.5 YARN編程 212
5.6 Hadoop 3.0生態組件 220
5.6.1 組件簡介 220
5.6.2 Hive 224
5.6.3 Spark 228
5.6.4 ZooKeeper 239
5.6.5 HBase 243
5.6.6 Mahout 250
5.6.7 Redis 253
5.6.8 Kafka 258
5.6.9 Flink 263
5.6.10 Flume 266
5.6.11 Pig 271
習題 275
第6章 虛擬化技術 276
6.1 虛擬化技術簡介 276
6.2 服務器虛擬化 277
6.2.1 服務器虛擬化的層次 277
6.2.2 服務器虛擬化的底層實現 278
6.2.3 虛擬機遷移 279
6.2.4 隔離技術 281
6.2.5 案例分析 283
6.3 存儲虛擬化 284
6.3.1 存儲虛擬化的一般模型 284
6.3.2 存儲虛擬化的實現方式 284
6.3.3 案例分析 285
6.4 網絡虛擬化 287
6.4.1 網絡虛擬化簡介 287
6.4.2 案例分析:VMware的網絡虛擬化技術 288
6.5 桌面虛擬化 290
6.5.1 桌面虛擬化簡介 290
6.5.2 技術現狀 291
6.5.3 案例分析 292
6.6 OpenStack開源虛擬化平臺 292
6.6.1 OpenStack背景介紹 293
6.6.2 Nova 294
6.6.3 Swift 299
6.6.4 Glance 305
6.7 超融合技術 306
6.7.1 概念 306
6.7.2 產生背景 306
6.7.3 超融合技術簡介 308
習題 310
第7章 容器技術 311
7.1 容器技術簡介 311
7.1.1 容器技術的發展歷程 311
7.1.2 容器技術的架構 313
7.1.3 容器的底層技術 314
7.1.4 容器的關鍵技術 315
7.1.5 容器技術的優勢和局限性 316
7.1.6 容器技術的典型應用 317
7.1.7 容器和虛擬機對比 318
7.2 Docker技術 320
7.2.1 Docker是什麽 320
7.2.2 Docker的架構和流程 322
7.2.3 Docker的優勢和局限性 323
7.2.4 分佈式Docker網絡環境搭建 327
7.3 Rocket(Rkt)技術簡介 328
7.3.1 Rkt的標準化嘗試 329
7.3.2 Rkt是什麽 331
7.3.3 Rkt的基本使用方法 333
7.4 其他容器技術 335
7.4.1 Garden容器技術 335
7.4.2 Kata容器技術 337
7.5 容器編排系統 338
7.5.1 Google Kubernetes 339
7.5.2 Docker Swarm 346
7.5.3 Apache Mesos 350
7.5.4 CoreOS Fleet 356
習題 357
第8章 雲原生技術 359
8.1 雲原生簡介 359
8.2 微服務 361
8.2.1 Spring Cloud架構 361
8.2.2 服務網格架構 370
8.3 敏捷基礎設施 374
8.3.1 分佈式消息中間件服務 375
8.3.2 分佈式緩存服務 383
8.3.3 分佈式任務調度服務 386
8.3.4 監控告警服務 390
8.4 DevOps 392
8.4.1 概念 393
8.4.2 Ansible 394
8.4.3 SaltStack 395
8.4.4 Jenkins 397
8.5 持續交付 399
8.5.1 持續交付與持續集成、持續部署 400
8.5.2 持續交付vs. DevOps 401
8.6 雲原生應用場景 401
8.6.1 深度學習應用場景 402
8.6.2 區塊鏈應用場景 403
8.6.3 邊緣計算應用場景 404
8.6.4 傳統行業因特網化應用場景 404
習題 405
第9章 雲計算數據中心 406
9.1 雲計算數據中心的特徵 406
9.2 雲計算數據中心網絡部署 407
9.2.1 改進型樹形結構 407
9.2.2 遞歸層次結構 409
9.2.3 光交換網絡 412
9.2.4 無線數據中心網絡 414
9.2.5 軟件定義網絡 414
9.3 綠色節能技術 418
9.3.1 配電系統節能技術 418
9.3.2 空調系統節能技術 420
9.3.3 集裝箱數據中心節能技術 423
9.3.4 海底數據中心 424
9.3.5 數據中心節能策略和算法研究 427
9.3.6 新能源的應用 429
9.3.7 典型的綠色節能數據中心 432
9.4 自動化管理 434
9.4.1 自動化管理的特徵 434
9.4.2 自動化管理實現階段 435
9.4.3 Facebook自動化管理 436
9.5 容災備份 438
9.5.1 容災系統的等級標準 438
9.5.2 容災備份的關鍵技術 439
9.5.3 雲存儲在容災備份中的應用 441
習題 442
第10章 雲計算核心算法 443
10.1 Paxos算法 443
10.1.1 Paxos算法背景知識 443
10.1.2 Paxos算法詳解 444
10.1.3 Paxos算法舉例 447
10.1.4 Chubby中Paxos算法的具體實現 448
10.2 DHT算法 449
10.2.1 DHT原理介紹 450
10.2.2 Chord中DHT的具體實現 452
10.2.3 Pastry中DHT的具體實現 454
10.2.4 CAN中DHT的具體實現 455
10.2.5 Tapestry中DHT的具體實現 456
10.3 Gossip協議 457
10.3.1 Gossip協議的特點 457
10.3.2 Gossip協議的通信方式及收斂性 458
10.3.3 Gossip節點管理算法 459
10.3.4 Cassandra中Gossip協議的具體實現方式 460
10.3.5 CoolStreaming中Gossip協議的具體實現方式 463
10.3.6 Hyperledger Fabric中Gossip協議的具體實現方式 465
10.3.7 Chord網絡中Gossip協議的具體實現方式 467
習題 468
第11章 雲際計算技術 469
11.1 傳統雲計算面臨的挑戰 469
11.2 雲際計算誕生 470
11.2.1 雲際計算概念 470
11.2.2 技術優勢 470
11.3 雲際計算架構 471
11.3.1 集中式代理架構 472
11.3.2 地理分佈式代理架構 472
11.4 雲際計算關鍵技術 473
11.4.1 雲際協作環境 474
11.4.2 對等協作機制 477
11.5 雲際存儲關鍵技術 478
11.5.1 糾刪碼容錯技術 479
11.5.2 數據完整性證明機制 481
11.5.3 並發控制方法 483
11.5.4 安全重刪技術 485
11.6 雲際計算研究進展 487
11.6.1 Inter-Cloud 488
11.6.2 SuperCloud 489
11.6.3 Multi-Cloud 490
11.6.4 Federated Cloud 491
11.6.5 Cloud Service Broker 493
11.6.6 Internetware 494
11.6.7 iVCE 496
11.7 雲際計算應用場景 497
習題 498
第12章 中國雲計算技術 499
12.1 國內雲計算發展概況 499
12.2 國內雲存儲技術 500
12.2.1 淘寶文件系統 501
12.2.2 雲創大數據cStor超融合雲存儲系統 503
12.2.3 A8000超低功耗雲存儲一體機 507
12.3 國內大數據庫技術 510
12.3.1 阿裡巴巴OceanBase 510
12.3.2 雲創大數據數據立方 514
12.4 雲視頻監控技術 519
12.4.1 cVideo雲視頻監控系統 519
12.4.2 cVideo智能分析系統 521
12.4.3 cVideo雲轉碼系統 523
12.5 阿裡巴巴阿裡雲服務 525
12.5.1 阿裡雲計算體系架構 526
12.5.2 彈性計算服務 526
12.5.3 對象存儲服務 527
12.5.4 表格存儲服務 527
12.5.5 開放數據處理服務 528
12.5.6 關系型數據庫服務 528
12.6 雲創大數據萬物雲服務 529
12.6.1 平臺簡介 529
12.6.2 系統架構 530
12.6.3 功能服務 531
12.6.4 應用舉例 533
12.7 雲創大數據人工智能雲平臺 534
12.7.1 訓練平臺 534
12.7.2 推理平臺 536
12.7.3 開放平臺 540
習題 542
第13章 總結與展望 543
13.1 主流商業雲計算解決方案比較 543
13.1.1 應用場景 543
13.1.2 使用流程 545
13.1.3 體系結構 546
13.1.4 實現技術 546
13.1.5 核心業務 547
13.2 主流開源雲計算系統比較 549
13.2.1 開發目的 549
13.2.2 體系結構 551
13.2.3 實現技術 552
13.2.4 核心服務 552
13.3 雲計算發展趨勢 553
13.3.1 標準化 553
13.3.2 混合雲模式 558
13.3.3 多雲部署 559
13.3.4 雲計算與人工智能相融合 560
習題 561