《深入浅出云计算》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:鲍亮,陈荣编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2012
  • ISBN:9787302302384
  • 页数:437 页
图书介绍:本书是国内首部深入浅出介绍云计算技术及背后重要思想的技术书籍,笔者首先通过对云计算核心思想形象的解析和云计算关键技术的深入剖析,让读者能够全面、深刻地了解云计算技术,并结合基于云计算技术的应用系统开发实例,详细阐述系统设计和开发人员进行云计算应用系统开发时需要的流程和步骤,并介绍云计算技术的多种创新型应用。

第1篇 初始云计算 3

第1章 云计算介绍 3

1.1云计算相关概念 3

1.1.1云计算的定义 4

1.1.2云计算的服务方式 6

1.1.3云计算的部署模式 8

1.2云计算的历史 9

1.2.1虚拟化技术的发展 9

1.2.2分布式计算技术的发展 10

1.2.3软件应用模式的发展 13

1.3云计算的现状 14

1.3.1产业界现状 14

1.3.2学术界现状 19

1.3.3政府机构现状 25

1.4本章小结 28

第2章 云计算技术基础 29

2.1 HDFS相关技术 29

2.1.1 RPC 29

2.1.2基于Socket的Java网络编程 30

2.2 MapReduce相关技术 31

2.2.1 Java反射机制 31

2.2.2序列化和反序列化 33

2.3 HBase相关技术 34

2.3.1 NoSQL 34

2.3.2 ACID 36

2.3.3 CAP理论 36

2.3.4一致性模型 37

2.4 ZooKeeper相关技术 38

2.4.1 Paxos算法介绍 38

2.4.2 Java NIO库 38

2.5本章小结 39

第3章 云计算开发环境搭建 40

3.1集群环境介绍 40

3.2 Hadoop环境搭建 41

3.2.1 Hadoop简介 41

3.2.2安装前准备 41

3.2.3安装环境搭建 42

3.2.4详细安装步骤 42

3.3 Hadoop集群配置 49

3.3.1配置Hadoop守护进程的运行环境 49

3.3.2配置Hadoop守护进程的运行参数 50

3.4 HBase环境搭建 51

3.4.1 HBase简介 51

3.4.2 HBase的数据模型 51

3.4.3 HBase安装前的准备 52

3.4.4 HBase的安装配置 52

3.4.5 HBase的运行 55

3.5 ZooKeeper环境搭建 57

3.5.1 ZooKeeper简介 57

3.5.2安装前的准备 58

3.5.3独立服务器的安装与配置 59

3.5.4集群服务器的安装与配置 60

3.6本章小结 62

第2篇 浅出云计算 65

第4章 应用实例:图像百科系统 65

4.1应用背景 65

4.2需求分析 66

4.2.1功能需求 66

4.2.2非功能需求 69

4.3核心业务处理流程 70

4.3.1查询百科条目处理流程 70

4.3.2编辑百科条目处理流程 72

4.3.3更新百科条目处理流程 74

4.4总体设计 75

4.5本章小结 78

第5章 使用HDFS存储海量图像数据 79

5.1 HDFS介绍 79

5.1.1 HDFS架构 79

5.1.2 HDFS的特点 80

5.1.3 HDFS存取机制简介 81

5.2 HDFS接口介绍 83

5.3图像百科系统中的图像存储 87

5.3.1图像存储基本思想 87

5.3.2图像存储设计目标 88

5.3.3图像存储体系结构 88

5.3.4图像百科系统的功能结构 89

5.4系统实现 90

5.4.1存储模块类交互图 90

5.4.2核心类详细介绍 92

5.4.3 HDFS存储小文件 97

5.5本章小结 98

第6章 使用MapReduce处理图像 99

6.1分布式数据处理MapReduce 99

6.1.1 MapReduce简介 99

6.1.2编程模型 100

6.1.3执行概括 101

6.2使用MapReduce编程模型 102

6.2.1 MapReduce程序模板 102

6.2.2 MapReduce编程思想 107

6.3更新图像百科条目的MapReduce设计 107

6.3.1设计目标 107

6.3.2更新条目的体系结构 109

6.3.3更新条目的逻辑流程 110

6.4 MapReduce对更新条目的实现 112

6.4.1更新条目的核心类 112

6.4.2 MapReduce核心类实现 113

6.4.3编译运行 118

6.5本章小结 121

第7章 使用HBase存储百科数据 122

7.1 HBase的基本特征 122

7.1.1 RDBMS与HBase 122

7.1.2面向列的NoSQL数据库 123

7.1.3 HBase数据库架构 126

7.1.4 HBase的特点 128

7.2使用HBase编程 129

7.2.1 HBase的Java API 129

7.2.2 HBase客户端编程 130

7.2.3 HBase编程示例 150

7.3 Fotospedia系统的数据库设计 153

7.3.1数据库模块总体设计 154

7.3.2数据库模块详细设计 154

7.3.3数据库模块交互设计 158

7.4 Fotospedia系统的数据库实现 160

7.4.1数据库模块类交互图 160

7.4.2数据库模块核心类实现 161

7.5本章小结 167

第8章 使用ZooKeeper管理集群 168

8.1 ZooKeeper详细介绍 168

8.2 ZooKeeper的使用方法及API介绍 172

8.2.1 ZooKeeper的使用方法 172

8.2.2基本类和接口 173

8.2.3常用类与方法的实例介绍 173

8.3图像百科系统集群管理详细设计 179

8.3.1集群管理 179

8.3.2配置管理 181

8.4图像百科系统集群管理实现 182

8.4.1集群管理实现 182

8.4.2配置管理实现 188

8.4.3测试 194

8.5本章小结 197

第3篇 深入云计算 201

第9章 深入分析H D FS 201

9.1 HDFS核心设计机制 201

9.1.1 Namenode和Datanode 201

9.1.2数据副本策略 201

9.1.3数据组织 204

9.1.4健壮性 204

9.1.5存储空间回收 205

9.2 HDFS源码总体介绍 206

9.3核心代码分析 208

9.3.1 HDFS的通信协议 208

9.3.2 HDFS读文件源码分析 214

9.3.3 HDFS写文件源码分析 219

9.4 Hadoop支持的其他文件系统 222

9.4.1 KFS文件系统体系架构 223

9.4.2 KFS各模块关键技术 224

9.4.3 HDFS与KFS写数据的区别 225

9.5本章小结 227

第10章 深入分析MapReduce 228

10.1 MapReduce框架结构 228

10.1.1 MapReduce中的角色 228

10.1.2 MapReduce流程 230

10.2代码静态分析 233

10.2.1创建Job的相关类 233

10.2.2初始化Job的相关类 234

10.2.3作业调度相关类 234

10.2.4执行MapTask的相关类 235

10.3代码详细分析 236

10.3.1 JobClient提交Job 236

10.3.2 JobTracker初始化作业 237

10.3.3 TaskTracker启动 240

10.3.4 JobTracker调度作业 242

10.3.5 TaskTracker加载Task 245

10.3.6子进程执行MapTask 247

10.3.7子进程执行ReduceTask 251

10.4本章小结 254

第11章深入分析HBase 255

11.1 HBase体系与原理 255

11.1.1 HBase的集群架构 255

11.1.2 HBase的系统架构 258

11.1.3 HBase的存储架构 259

11.2 HBase总体结构 264

11.2.1总体包图 265

11.2.2常用类分析 266

11.3 HBase关键剖析 269

11.3.1集群启动与关闭 269

11.3.2 HBase配置过程 279

11.3.3读取图像百科数据 282

11.3.4写入图像百科数据 289

11.4本章小结 294

第12章 深入分析ZooKeeper 295

12.1概述 295

12.1.1 ZooKeeper角色 295

12.1.2 ZooKeeper工作原理 295

12.2代码静态分析 297

12.2.1包概述 297

12.2.2核心类浅析 298

12.3代码情景分析 302

12.3.1服务器的启动 302

12.3.2 Leader服务器 311

12.3.3 Follower服务器 318

12.3.4客户端服务请求 320

12.4本章小结 325

第4篇应用云计算 329

第13章 应用Pig实现并行数据处理 329

13.1 Apache Pig简介 329

13.2 Pig的安装与配置 330

13.2.1Pig安装准备 330

13.2.2安装配置过程 331

13.2.3运行模式 331

13.3深入分析Pig 335

13.3.1 Pig数据模型 335

13.3.2 Pig常用命令和数据读写操作 337

13.3.3 Pig诊断操作 338

13.3.4 Pig关系操作 339

13.3.5 Pig表达式和函数 340

13.3.6 Pig用户自定义函数(UDF) 342

13.3.7探索逻辑执行计划 346

13.4 Pig实例分析 347

13.4.1 Pig Latin示例 347

13.4.2简单实例解析 348

13.4.3深入使用Pig 352

13.5 Pig与SQL比较 355

13.6本章小结 356

第14章 应用Hive构建数据处理平台 357

14.1 Hive简介 357

14.1.1 Hive架构 357

14.1.2 Hive和Hadoop关系 358

14.1.3 Hive和传统数据库进行比较 359

14.1.4 Hive的数据存储 360

14.1.5 Hive元数据Metastore 361

14.2 Hive安装配置 363

14.2.1安装前准备 363

14.2.2安装Hive 363

14.2.3安装MySQL与Hive配置 365

14.3 Hive使用与操作 369

14.3.1 Hive基本操作 369

14.3.2查询数据Hive Select 375

14.3.3 Hive函数 380

14.4实例介绍 384

14.5本章小结 389

第15章 应用Mahout实现机器学习算法 390

15.1 Mahout概述 390

15.1.1 Mahout简介 390

15.1.2机器学习简介 390

15.2 Mahout安装配置 392

15.2.1安装前准备 392

15.2.2 Mahout安装 393

15.3 Mahout使用简介 394

15.3.1使用Mahout实现集群 395

15.3.2使用Mahout实现分类 406

15.3.3使用Mahout实现决策树 408

15.3.4使用Mahout实现推荐挖掘 409

15.4本章小结 411

第16章 应用HAMA实现分布式计算 412

16.1 HAMA简介 412

16.1.1 HAMA系统架构 412

16.1.2 BSPMaster 413

16.1.3 GroomServer 414

16.1.4 ZooKeeper 414

16.2 HAMA BSP介绍 415

16.2.1 BSP并行计算 416

16.2.2创建自定义的BSP 417

16.2.3用户接口 418

16.3 HAMA安装配置 421

16.3.1安装前准备 421

16.3.2安装和环境配置 421

16.3.3 HAMA运行模式 423

16.3.4运行HAMA 425

16.3.5 HAMA Web接口 426

16.3.6在Eclipse中创建HAMA工程 427

16.4实例介绍 429

16.4.1打印“Hello BSP” 429

16.4.2估算PI值 430

16.5本章小结 432

附录 433