《Hadoop集群程序设计与开发》
- 作者 :王宏志,李春静编著
- 出版发行 : 北京:人民邮电出版社 , 2018.08
- ISBN号 :978-7-115-48304-1
- 页 数 : 319
- 丛书名 : 华为信息与网络技术学院指定教材
- 原书定价 : 59.80开本 : 16开
- 主题词 : 数据处理软件-程序设计-教材
- 中图法分类号 : TP274 ( 工业技术->自动化技术、计算机技术->自动化技术及设备->自动化系统 )
内容提要:
本书主要内容包括:第1章初识Hadoop、第2章Hadoop基础、第3章Hadoop开发环境配置与搭建、第4章Hadoop分布式文件系统(HDFS)、第5章资源管理器(Yarn)、第6章MapReduce基础程序设计、第7章MapReduce高级程序设计、第8章分布式数据库HBase、第9章分布式数据仓库Hive、第10章项目测试与发布……
参考文献格式 : 王宏志,李春静编著. Hadoop集群程序设计与开发[M]. 北京:人民邮电出版社, 2018.08
本书适用读者
本书适合作为本科生和研究生“Hadoop系统程序设计”“大数据系统开发”等课程的教材,也可以作为“高级语言程序设计”“分布式系统”“数据库系统”等课程的补充教材或课外读物。同时,本书也可供大数据领域从业人员参考。
为什么59学习网要推荐这本书呢?
它是国内第一套成专业课程体系规划的数据科学与大数据技术专业系列教材,作者均来自国内一流高校,且具有丰富的大数据教学、科研、实践经验。它的出版发行,对完善大数据人才培养体系,加强人才储备和梯队建设,推进贯通大数据理论、方法、技术、产品与应用等的复合型人才培养,完善大数据领域学科布局,推动大数据领域学科建设具有重要意义。同时,本次产教融合的成功经验,对其他学科领域的人才培养也具有重要的参考价值。
我们有理由相信,在国家战略指引下,在社会各界的广泛参与和推动下,我国的大数据技术和产业发展一定会有光明的未来。
本图书目录
- 第1章 初识Hadoop 1
- 1.1 为什么要学习Hadoop 2
- 1.1.1 信息化项目衍生过程 2
- 1.1.2 Hadoop产生过程 5
- 1.1.3 Hadoop成功案例介绍 8
- 1.2 Hadoop与云计算的关系 8
- 1.2.1 什么是云计算 8
- 1.2.2 云计算演进历史 10
- 1.2.3 云计算相关技术介绍 12
- 1.2.4 Hadoop在云项目中扮演的角色 12
- 1.3 Hadoop与大数据的关系 13
- 1.3.1 什么是大数据 13
- 1.3.2 大数据的存储结构 15
- 1.3.3 大数据的计算模式 15
- 1.3.4 Hadoop在大数据中扮演的角色 16
- 1.4 学习Hadoop需要具备的知识基础 16
- 1.5 学习Hadoop需要的实验环境 17
- 1.6 Hadoop的用途 17
- 1.7 小结 17
- 第2章 Hadoop基础知识 18
- 2.1 Hadoop简介 19
- 2.1.1 Apache Hadoop项目核心模块 19
- 2.1.2 Apache Hadoop项目的其他模块 20
- 2.2 Hadoop版本演化 22
- 2.3 RPC工作原理 23
- 2.3.1 RPC简介 24
- 2.3.2 Hadoop中的RPC 25
- 2.3.3 RPCoIB和JVM-旁路缓冲管理方案:在高性能网络InfiniBand上数据交换的改进 28
- 2.4 MapReduce工作原理 30
- 2.4.1 MapReduce计算模型 32
- 2.4.2 MapReduce经典案例 33
- 2.4.3 MapReduce应用场景 34
- 2.5 Hadoop改进 34
- 2.5.1 LATE算法:良好的适应异构性环境 35
- 2.5.2 Mantri:MapReduce异常处理 36
- 2.5.3 SkewTune:MapReduce中数据偏斜处理 37
- 2.5.4 基于RDMA的MapReduce设计:提升大数据应用的性能和规模 42
- 2.6 HDFS工作原理 44
- 2.6.1 HDFS介绍 45
- 2.6.2 HDFS体系结构 47
- 2.6.3 文件系统的命名空间 50
- 2.6.4 HDFS中Block副本放置策略 51
- 2.6.5 HDFS机架感知 51
- 2.6.6 HDFS安全模式 53
- 2.6.7 HDFS应用场景介绍 53
- 2.6.8 混合HDFS的设计:充分利用硬件能力获得最佳性能 53
- 2.7 YARN工作原理 55
- 2.7.1 YARN on HDFS的工作原理 55
- 2.7.2 MapReduce on YARN的工作原理 58
- 2.8 容错机制 64
- 2.9 安全性 66
- 2.10 小结 67
- 第3章 Hadoop开发环境配置与搭建 68
- 3.1 集群部署 69
- 3.1.1 安装包版本的选择 69
- 3.1.2 Hadoop安装先决条件 69
- 3.1.3 Hadoop安装模式 70
- 3.2 本地/独立模式搭建 71
- 3.2.1 JDK安装与配置 71
- 3.2.2 SSH无密码登录 72
- 3.2.3 Hadoop本地环境参数配置 74
- 3.2.4 Hadoop本地模式验证 74
- 3.3 伪分布模式搭建 74
- 3.3.1 配置过程 75
- 3.3.2 格式化HDFS 76
- 3.3.3 Hadoop进程启停与验证 76
- 3.4 全分布模式搭建 77
- 3.4.1 Hadoop网络配置 77
- 3.4.2 Hadoop集群SSH配置 79
- 3.4.3 时间同步 80
- 3.4.4 IP与机器名映射 82
- 3.4.5 Hadoop环境配置 82
- 3.4.6 Hadoop集群启停与验证 84
- 3.5 基于Hadoop平台的Eclipse开发环境的搭建 84
- 3.5.1 Hadoop Eclipse插件配置 85
- 3.5.2 编写第一个MapReduce程序 88
- 3.5.3 编译打包及运行程序 90
- 3.6 小结 93
- 第4章 Hadoop分布式文件系统 94
- 4.1 HDFS工作原理 95
- 4.1.1 HDFS读数据的过程 95
- 4.1.2 HDFS写数据的过程 96
- 4.1.3 HDFS删除与恢复数据的过程 97
- 4.2 HDFS常用命令行操作概述 98
- 4.2.1 HDFS命令行 98
- 4.2.2 HDFS常用命令行操作 102
- 4.3 通过Web浏览HDFS文件 105
- 4.4 HDFS API 106
- 4.4.1 使用FileSystem API读取数据命令行 112
- 4.4.2 使用FileSystem API写入数据命令行 115
- 4.4.3 FileUtil文件处理 116
- 4.5 小结 117
- 第5章 Hadoop的I/O操作 118
- 5.1 压缩 119
- 5.1.1 Hadoop压缩类型 119
- 5.1.2 CompressionCodec接口 121
- 5.1.3 CompressionCodecFactory类 123
- 5.1.4 压缩池 125
- 5.1.5 Hadoop中使用压缩 127
- 5.2 I/O序列化类型 128
- 5.2.1 Writable接口 129
- 5.2.2 Java基本类型的Writable封装器 131
- 5.2.3 IntWritable与VIntWritable类 133
- 5.2.4 Text类 134
- 5.2.5 BytesWritable类 135
- 5.2.6 NullWritable类 136
- 5.2.7 ObjectWritable类 136
- 5.2.8 自定义Writable接口 138
- 5.3 基于文件的数据结构 141
- 5.3.1 SequenceFile 141
- 5.3.2 MapFile 144
- 5.4 小结 145
- 第6章 MapReduce编程基础 146
- 6.1 剖析MapReduce编程过程 147
- 6.2 由WordCount理解MapReduce编程过程 147
- 6.2.1 准备工作 147
- 6.2.2 Mapper工作过程 148
- 6.2.3 Reducer工作过程 151
- 6.2.4 Job工作过程 153
- 6.3 MapReduce类型 155
- 6.4 Mapper输入 155
- 6.4.1 默认输入格式 156
- 6.4.2 FileInput输入 160
- 6.4.3 多路径输入 161
- 6.4.4 自定义输入分片 163
- 6.5 Shuffle 166
- 6.5.1 Shuffle运行原理 166
- 6.5.2 分区 168
- 6.5.3 排序 170
- 6.5.4 分组 171
- 6.6 Combiner 172
- 6.6.1 由WordCount案例讲解Combiner 172
- 6.6.2 由SVG案例进一步讲解Combiner 173
- 6.7 OutputFormat输出 178
- 6.8 编程模型的扩展——FlumeJava:云计算高级编程模型 181
- 6.8.1 FlumeJava结构 181
- 6.8.2 FlumeJava优化 183
- 6.9 小结 183
- 第7章 MapReduce高级编程 184
- 7.1 计数器 185
- 7.1.1 内置计数器 185
- 7.1.2 自定义计数器 188
- 7.1.3 计数器结果查看 190
- 7.2 最值 191
- 7.2.1 单一最值 191
- 7.2.2 Top N 195
- 7.3 全排序 198
- 7.3.1 全排序业务需求 198
- 7.3.2 实验数据准备 199
- 7.3.3 自定义分区实现全排序过程 200
- 7.3.4 通过抽样实现全排序过程 203
- 7.4 二次排序 206
- 7.4.1 解决方案 207
- 7.4.2 例子 210
- 7.5 连接 211
- 7.5.1 Reduce端连接 213
- 7.5.2 Map端连接 217
- 7.6 小结 220
- 第8章 初识HBase 221
- 8.1 HBase基础知识 222
- 8.1.1 HBase特征 222
- 8.1.2 HBase数据模型 223
- 8.1.3 HBase体系结构 225
- 8.2 HBase开发环境配置与安装 231
- 8.2.1 HBase环境配置基本准备条件 232
- 8.2.2 HBase配置文件 233
- 8.2.3 HBase独立安装 234
- 8.2.4 HBase伪分布式安装 234
- 8.2.5 HBase完全分布式安装 235
- 8.2.6 HBase启动、停止、监控 236
- 8.3 HBase基本Shell操作 237
- 8.3.1 HBase Shell启动 237
- 8.3.2 HBase Shell通用命令 237
- 8.3.3 HBase Shell表管理命令 238
- 8.3.4 HBase Shell表操作命令 238
- 8.3.5 HBase Shell应用举例 239
- 8.4 基于HBase API程序设计 239
- 8.4.1 管理表结构 240
- 8.4.2 管理表信息 242
- 8.4.3 Scan 244
- 8.4.4 过滤器 245
- 8.4.5 协处理器 247
- 8.4.6 计数器 247
- 8.4.7 MapReduce与HBase互操作 247
- 8.5 RowKey设计 250
- 8.5.1 HBase值的存储与读取的特点 250
- 8.5.2 HBase值存储特点引发的问题 250
- 8.5.3 RowKey设计遵循的原则 251
- 8.6 HBase的高性能设计:使用InfiniBand的RDMA 253
- 8.6.1 设计 254
- 8.6.2 优势 254
- 8.7 小结 255
- 第9章 初识Hive 256
- 9.1 Hive基础知识 257
- 9.1.1 Hive的存储结构 257
- 9.1.2 Hive与传统数据库的比较 258
- 9.2 Hive环境安装 260
- 9.2.1 Hive内嵌模式安装 261
- 9.2.2 Hive独立模式安装 262
- 9.2.3 Hive远程模式安装 263
- 9.2.4 初识Hive Shell 264
- 9.2.5 Java通过JDBC对Hive操作 266
- 9.3 HiveQL基本语法 269
- 9.3.1 Hive中的数据库 270
- 9.3.2 创建表的基本语法 271
- 9.3.3 表中数据的加载 273
- 9.3.4 HiveQL的数据类型 274
- 9.3.5 数据类型转换 277
- 9.3.6 文本文件数据编码 278
- 9.3.7 分区和桶 279
- 9.3.8 表维护 282
- 9.4 HiveQL基本查询 283
- 9.4.1 SELECT…FROM语句 284
- 9.4.2 WHERE语句 285
- 9.4.3 嵌套SELECT语句 286
- 9.4.4 Hive函数 287
- 9.4.5 GROUP BY语句 303
- 9.4.6 JOIN语句 305
- 9.4.7 UNION ALL语句 310
- 9.4.8 ORDER BY和SORT BY语句 310
- 9.4.9 含有SORT BY的DISTRIBUTEBY语句 311
- 9.4.10 CLUSTER BY语句 312
- 9.5 视图和索引 313
- 9.5.1 视图 313
- 9.5.2 索引 314
- 9.6 Hive与HBase集成 315
- 9.7 小结 318
- 附录 《Hadoop集群程序设计与开发》配套实验课程方案简介 319
《Hadoop集群程序设计与开发》PDF电子书下载地址
点关注不迷路!
如需提取码或者解压密码:
[打开微信]->[扫描左侧二维码]->[关注59学习网]
输入“5791” 获取提取码
[网盘下载链接]
Ps:本站点所有资源仅供学习交流之用,请勿用作商业用途,并请于下载后24小时内删除,如果喜欢,请支持正版,谢谢。
原创·59学习网 本文链接:https://www.59xuexi.com/?p=5791 未经允许不可转载!