Hadoop硬实战PDF电子书下载
- 电子书积分:16 积分如何计算积分?
- 作 者:(美)霍姆斯著
- 出 版 社:北京:电子工业出版社
- 出版年份:2015
- ISBN:9787121250729
- 页数:511 页
第1部分 背景和基本原理 1
1跳跃中的Hadoop 3
1.1 什么是Hadoop 4
1.1.1 Hadoop的核心组件 5
1.1.2 Hadoop生态圈 9
1.1.3 物理架构 10
1.1.4 谁在使用Hadoop 12
1.1.5 Hadoop的局限性 13
1.2 运行Hadoop 14
1.2.1 下载并安装Hadoop 14
1.2.2 Hadoop的配置 15
1.2.3 CLI基本命令 17
1.2.4 运行MapReduce作业 18
1.3 本章小结 24
第2部分 数据逻辑 25
2将数据导入导出Hadoop 27
2.1 导入导出的关键要素 29
2.2 将数据导入Hadoop 30
2.2.1 将日志文件导入Hadoop 31
技术点1使用Flume将系统日志文件导入HDFS 33
2.2.2 导入导出半结构化和二进制文件 42
技术点2自动复制文件到HDFS的机制 43
技术点3使用Oozie定期执行数据导入活动 48
2.2.3 从数据库中拉数据 52
技术点4使用MapReduce将数据导入数据库 53
技术点5使用Sqoop从MySQL导入数据 58
2.2.4 HBase 68
技术点6 HBase导入HDFS 68
技术点7将HBase作为MapReduce的数据源 70
2.3 将数据导出Hadoop 73
2.3.1 将数据导入本地文件系统 73
技术点8自动复制HDFS中的文件 73
2.3.2 数据库 74
技术点9使用Sqoop将数据导入MySQL 75
2.3.3 Hbase 78
技术点10将数据从HDFS导入HBase 78
技术点11使用HBase作为MapReduce的数据接收器 79
2.4 本章小结 81
3数据序列化——处理文本文件及其他格式的文件 83
3.1 了解MapReduce中的输入和输出 84
3.1.1 数据输入 85
3.1.2 数据输出 89
3.2 处理常见的序列化格式 91
3.2.1 XML 91
技术点12 MapReduce和XML 91
3.2.2 JSON 95
技术点13 MapReduce和JSON 95
3.3 大数据的序列化格式 99
3.3.1 比较SequenceFiles、Protocol Buffers、Thrift和Avro 99
3.3.2 Sequence File 101
技术点14处理SequenceFile 103
3.3.3 Protocol Buffers 109
技术点15 整合Protocol Buffers和MapReduce 110
3.3.4 Thrift 117
技术点16使用Thrift 117
3.3.5 Avro 119
技术点17 MapReduce的下一代数据序列化技术 120
3.4 自定义文件格式 127
3.4.1 输入输出格式 127
技术点18 输入和输出格式为CSV的文件 128
3.4.2 output committing的重要性 136
3.5 本章小结 136
第3部分 大数据模式 137
4处理大数据的MapReduce模式 139
4.1 Join 140
4.1.1 Repartition Join 141
技术点19优化repartition join 142
4.1.2 Replicated Join 146
4.1.3 Semi-join 147
技术点20实现semi-join 148
4.1.4 为你的数据挑选最优的合并策略 154
4.2 排序 155
4.2.1 二次排序 156
技术点21二次排序的实现 157
4.2.2 整体并行排序 162
技术点22通过多个reducer对key进行排序 162
4.3 抽样 165
技术点23蓄水池抽样(reservoir抽样) 165
4.4 本章小结 168
5优化HDFS处理大数据的技术 169
5.1 处理小文件 170
技术点24使用Avro存储大量小文件 170
5.2 通过压缩提高数据存储效率 178
技术点25选择合适的压缩解码器 178
技术点26在HDFS、MapReduce、Pig和Hive中使用数据压缩 182
技术点27在MapReduce、Hive和Pig中处理可分割的LZOP 187
5.3 本章小结 193
6诊断和优化性能问题 194
6.1 衡量MapReduce和你的环境 195
6.1.1 提取作业统计信息的工具 195
6.1.2 监控 196
6.2 确定性能问题的原因 198
6.2.1 了解哪些因素会影响MapReduce作业的性能 198
6.2.2 map端异常 200
技术点28发现输入数据中的坑 200
技术点29确定map端数据倾斜问题 201
技术点30判定map任务吞吐量 203
技术点31小文件 204
技术点32 不可切割的文件 206
6.2.3 reduce端问题 207
技术点33 reducer任务数过大或过小 208
技术点34定位reduce端数据倾斜问题 209
技术点35确定reduce任务是否存在整体吞吐量过低 211
技术点36缓慢的洗牌(shuffle)和排序 213
6.2.4 任务的一般性能问题 213
技术点37作业竞争和调度器限制 215
技术点38使用堆转储来查找未优化的用户代码 216
6.2.5 硬件性能问题 218
技术点39查找硬件的失效 218
技术点40 CPU竞争 219
技术点41内存交换 220
技术点42磁盘健康 222
技术点43网络 224
6.3 可视化 226
技术点44提取并可视化任务执行时间 227
6.4 优化 229
6.4.1 剖析MapReduce的用户代码 230
技术点45剖析map和reduce任务 230
6.4.2 参数配置 232
6.4.3 优化shuffle和sort阶段 234
技术点46避免reducer 234
技术点47过滤和投影 235
技术点48使用combiner 236
技术点49超炫的使用比较器的快速排序 237
6.4.4 减轻倾斜 241
技术点50收集倾斜数据 242
技术点51减轻reducer阶段倾斜 243
6.4.5 在MapReduce中优化用户的Java代码 244
6.4.6 数据序列化 248
6.5 本章小结 249
第4部分 数据科学 251
7数据结构和算法的运用 253
7.1 使用图进行数据建模和解决问题 254
7.1.1 模拟图 255
7.1.2 最短路径算法 255
技术点52找出两个用户间的最短距离 256
7.1.3 friends-of-friends(FoF) 263
技术点53计算FoF 263
7.1.4 PageRank 269
技术点54通过Web图计算PageRank 269
7.2 Bloom filter 275
技术点55在MapReduce中并行创建Bloom filter 277
技术点56通过MapReduce对Bloom filter进行semi-join 281
7.3 本章小结 284
8结合R和Hadoop进行数据统计 285
8.1 比较R和MapReduce集成的几种方法 286
8.2 R基础知识 288
8.3 R和Streaming 290
8.3.1 Streaming和map-only R 290
技术点57计算股票日平均值 290
8.3.2 Streaming、R和完整的MapReduce 293
技术点58计算股票的累积均值 293
8.4 Rhipe——将客户端R和Hadoop进行集成 297
技术点59使用Rhipe计算CMA 297
8.5 RHadoop——更简单地在客户端集成R和Hadoop的技术 301
技术点60使用RHadoop计算CMA 302
8.6 本章小结 304
9使用Mahout进行预测分析 305
9.1 使用recommender提供产品建议 306
9.1.1 相似性度量的可视化 307
9.1.2 GroupLens数据集 308
9.1.3 基于用户的 recommender 310
9.1.4 基于物品的recommender 310
技术点61使用基于物品的recommender进行电影评级 311
9.2 classification 314
9.2.1 编写一个手动naive Bayesian分类器 315
9.2.2 可扩展的垃圾邮件侦测分类系统 321
技术点62使用Mahout训练和测试垃圾邮件分类器 321
9.2.3 其他分类算法 325
9.3 K-means clustering 325
9.3.1 简单介绍 326
9.3.2 并行执行K-means 327
技术点63 K-means处理合成的二维数据集 327
9.3.3 K-means和文本 331
9.3.4 其他Mahout clustering算法 332
9.4 本章小结 332
第5部分 驯服大象 333
10深入解析Hive 335
10.1 Hive基础 336
10.1.1 安装 336
10.1.2 元存储 336
10.1.3 数据库、表、分区和存储 336
10.1.4 数据模型 337
10.1.5 查询语言 337
10.1.6 交互式和非交互式Hive 337
10.2 使用Hive进行数据分析 338
10.2.1 序列化和反序列化 338
技术点64载入日志文件 338
10.2.2 UDF、分区、分桶和压缩 344
技术点65编写UDF和压缩分区表 344
10.2.3 数据合并 350
技术点66优化Hive合并 350
10.2.4 分组、排序和explain 355
10.3 本章小结 358
11 Pig流管道 359
11.1 Pig基础 360
11.1.1 安装 360
11.1.2 架构 360
11.1.3 PigLatin 360
11.1.4 数据类型 361
11.1.5 操作符和函数 361
11.1.6 交互式和非交互式的Pig 362
11.2 使用Pig在日志数据中发现恶意行为者 362
11.2.1 加载数据 363
技术点67加载Apache日志文件 363
11.2.2 过滤和投影 368
技术点68通过过滤和投影减少数据处理量 368
11.2.3 分组和聚合UDF 370
技术点69 IP地址的分组和计数 370
11.2.4 使用UDF进行定位 374
技术点70使用分布式缓存进行IP地理定位 375
11.2.5 流 378
技术点71使用你的脚本合并Pig 378
11.2.6 合并 379
技术点72在Pig中合并数据 380
11.2.7 排序 381
技术点73元组排序 381
11.2.8 存储数据 382
技术点74在SequenceFiles中存储数据 382
11.3 使用Pig优化用户的工作流程 385
技术点75通过4步快速处理大数据 385
11.4 性能 390
技术点76 Pig优化 390
11.5 本章小结 393
12 Crunch及相关技术 394
12.1 什么是Crunch 395
12.1.1 背景和概念 395
12.1.2 基本原理 395
12.1.3 简单示例 398
12.2 发现日志中最热门的URL 401
技术点77使用Crunch进行日志解析和基本分析 402
12.3 合并 405
技术点78 Crunch的repartition join 405
12.4 Cascading 407
12.5 本章小结 409
13测试和调试 410
13.1 测试 410
13.1.1 有效的单元测试的基本要素 411
13.1.2 MRUnit 413
技术点79 MapReduce函数、作业和管道的单元测试 413
13.1.3 LocalJobRunner 420
技术点80用LocalJobRunner进行重量级的作业测试 421
13.1.4 集成和QA测试 423
13.2 调试用户空间的问题 424
13.2.1 访问任务日志 424
技术点81检查任务日志 424
13.2.2 调试不可预期的输入 429
技术点82定位input split问题 429
13.2.3 调试JVM配置 432
技术点83解决任务的JVM启动参数 433
13.2.4 高效调试的编码准则 433
技术点84调试和错误处理 433
13.3 MapReduce陷阱 437
技术点85 MapReduce反模式 438
13.4 本章小结 441
附录A 相关技术 443
附录B Hadoop内置的数据导入导出工具 471
附录C HDFS解剖 486
附录D 优化MapReduce合并框架 493
索引 503
- 《Maya 2018完全实战技术手册》来阳编著 2019
- 《Python3从入门到实战》董洪伟 2019
- 《大数据Hadoop 3.X分布式处理实战》吴章勇,杨强 2020
- 《星空摄影后期实战》阿五在路上著 2020
- 《半小时漫画股票实战法》财经杂质著 2019
- 《深度学习与飞桨PaddlePaddle Fluid实战》于祥 2019
- 《数字插画实战 人像创作30例》王鲁光著 2019
- 《2017国家执业药师资格考试 全考点实战通关必备 中药学综合知识与技能 第3版》国家执业药师资格考试命题研究专家组 2017
- 《微软Azure实战参考》李竞,陈勇华编著 2019
- 《Cocos Creator微信小游戏开发实战》王绍明编著 2020
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017