出版社:人民邮电出版社
年代:2015
定价:59.0
本书主要介绍Hadoop技术的相关知识,并将理论知识与实际项目相结合。全书共分为三个部分:基础篇、应用篇和结束篇。基础篇详细介绍了Hadoop、MapReduce、HDFS、Hive和Sqoop,并深入探讨了Hadoop的运维和调优;应用篇则包含了一个具有代表性的完整的基于Hadoop的商业智能系统的设计和实现;结束篇对全书进行总结,并对技术发展做了展望。本书最大的特点是面向实践。
基础篇:Hadoop基础第1章 绪论 1.1 Hadoop和云计算 1.1.1 Hadoop的电梯演讲 1.1.2 Hadoop生态圈 1.1.3 云计算的定义 1.1.4 云计算的类型 1.1.5 Hadoop和云计算 1.2 Hadoop和大数据 1.2.1 大数据的定义 1.2.2 大数据的结构类型 1.2.3 大数据行业应用实例 1.2.4 Hadoop和大数据 1.2.5 其他大数据处理平台 1.3 数据挖掘和商业智能 1.3.1 数据挖掘的定义 1.3.2 数据仓库 1.3.3 操作数据库系统和数据仓库系统的区别 1.3.4 为什么需要分离的数据仓库 1.3.5 商业智能 1.3.6 大数据时代的商业智能 第2章 环境准备 2.1 Hadoop的发行版本选择 2.1.1 Apache Hadoop 2.1.2 CDH 2.1.3 Hadoop的版本 2.1.4 如何选择Hadoop的版本 2.2 Hadoop架构 2.2.1 Hadoop HDFS架构 2.2.2 Hadoop MapReduce架构 2.2.3 Hadoop架构 2.3 安装Hadoop 2.3.1 安装运行环境 2.3.2 修改主机名和用户名 2.3.3 配置静态IP地址 2.3.4 配置SSH无密码连接 2.3.5 安装JDK 2.3.6 配置Hadoop 2.3.7 格式化HDFS 2.3.8 启动Hadoop并验证安装 2.4 安装Hive 2.4.1 安装元数据库 2.4.2 修改Hive配置文件 2.4.3 验证安装 2.5 安装Sqoop 2.6 Eclipse Hadoop插件的安装和使用 2.6.1 安装并配置Eclipse Hadoop插件 2.6.2 Eclipse插件的使用 第3章 Hadoop的基石:HDFS 3.1 认识HDFS 3.1.1 HDFS的设计理念 3.1.2 HDFS的架构 3.1.3 HDFS容错 3.2 HDFS读取文件和写入文件 3.2.1 块的分布 3.2.2 数据读取 3.2.3 写入数据 3.2.4 数据完整性 3.3 如何访问HDFS 3.3.1 命令行接口 3.3.2 Java API 3.3.3 其他常用的接口 3.3.4 Web UI 第4章 分而治之的智慧:MapReduce 4.1 认识MapReduce 4.1.1 MapReduce的编程思想 4.1.2 MapReduce运行环境 4.1.3 MapReduce作业和任务 4.1.4 MapReduce的计算资源划分 4.1.5 MapReduce的局限性 4.2 Hello WordCount 4.2.1 WordCount的设计思路 4.2.2 编写WordCount 4.2.3 运行程序 4.2.4 还能更快吗 4.3 MapReduce的过程 4.3.1 从输入到输出 4.3.2 input 4.3.3 map及中间结果的输出 4.3.4 shuffle 4.3.5 reduce及最后结果的输出 4.3.6 sort 4.3.7 作业的进度组成 4.4 MapReduce的工作机制 4.4.1 作业提交 4.4.2 作业初始化 4.4.3 任务分配 4.4.4 任务执行 4.4.5 任务完成 4.4.6 推测执行 4.4.7 MapReduce容错 4.5 MapReduce编程 4.5.1 Writable类 4.5.2 编写Writable类 4.5.3 编写Mapper类 4.5.4 编写Reducer类 4.5.5 控制shuffle 4.5.6 控制sort 4.5.7 编写main函数 4.6 MapReduce编程实例:连接 4.6.1 设计思路 4.6.2 编写Mapper类 4.6.3 编写Reducer类 4.6.4 编写main函数 4.7 MapReduce编程实例:二次排序 4.7.1 设计思路 4.7.2 编写Mapper类 4.7.3 编写Partitioner类 4.7.4 编写SortComparator类 4.7.5 编写Reducer类 4.7.6 编写main函数 4.8 MapReduce编程实例:全排序 4.8.1 设计思路 4.8.2 编写代码 第5章 SQL on Hadoop:Hive 5.1 认识Hive 5.1.1 从MapReduce到SQL 5.1.2 Hive架构 5.1.3 Hive与关系型数据库的区别 5.1.4 Hive命令的使用 5.2 数据类型和存储格式 5.2.1 基本数据类型 5.2.2 复杂数据类型 5.2.3 存储格式 5.2.4 数据格式 5.3 HQL:数据定义 5.3.1 Hive中的数据库 5.3.2 Hive中的表 5.3.3 创建表 5.3.4 管理表 5.3.5 外部表 5.3.6 分区表 5.3.7 删除表 5.3.8 修改表 5.4 HQL:数据操作 5.4.1 装载数据 5.4.2 通过查询语句向表中插入数据 5.4.3 利用动态分区向表中插入数据 5.4.4 通过CTAS加载数据 5.4.5 导出数据 5.5 HQL:数据查询 5.5.1 SELECT…FROM语句 5.5.2 WHERE语句 5.5.3 GROUP BY和HAVING语句 5.5.4JOIN语句 5.5.5 ORDER BY和SORT BY语句 5.5.6 DISTRIBUTE BY和SORTBY语句 5.5.7 CLUSTER BY 5.5.8 分桶和抽样 5.5.9 UNION ALL 5.6 Hive函数 5.6.1 标准函数 5.6.2 聚合函数 5.6.3 表生成函数 5.7 Hive用户自定义函数 5.7.1 UDF 5.7.2 UDAF 5.7.3 UDTF 5.7.4 运行 第6章 SQL to Hadoop : Sqoop 6.1 一个Sqoop示例 6.2 导入过程 6.3 导出过程 6.4 Sqoop的使用 6.4.1 codegen 6.4.2 create-hive-table 6.4.3 eval 6.4.4 export 6.4.5 help 6.4.6 import 6.4.7 import-all-tables 6.4.8 job 6.4.9 list-databases 6.4.10 list-tables 6.4.11 merge 6.4.12 metastore 6.4.13 version 第7章 Hadoop性能调优和运维 7.1 Hadoop客户端 7.2 Hadoop性能调优 7.2.1 选择合适的硬件 7.2.2 操作系统调优 7.2.3 JVM调优 7.2.4 Hadoop参数调优 7.3 Hive性能调优 7.3.1 JOIN优化 7.3.2 Reducer的数量 7.3.3 列裁剪 7.3.4 分区裁剪 7.3.5 GROUP BY优化 7.3.6 合并小文件 7.3.7 MULTI-GROUP BY和MULTI-INSERT
Hadoop是目前最受关注的大数据处理平台和解决方案,并且已经广泛应用于生产环境。本书主要介绍Hadoop技术的相关知识,不但详细介绍了Hadoop、MapReduce、HDFS、Hive和Sqoop,还深入探讨了Hadoop的运维和调优,并包含了一个具有代表性的完整的基于Hadoop的商业智能系统的设计和实现。 本书的最大特点是面向实践。基础篇介绍Hadoop及相关组件的同时,包含了大量动手实例,而应用篇包含的基于Hadoop的完整实例脱胎于生产环境的真实项目。在应用篇中,读者不仅能够通过项目实战巩固基础篇的学习效果,还能学习商业智能系统的开发过程。 本书由浅至深,从理论基础到项目实战,适合Hadoop的初学者阅读,也适合作为高等院校相关课程的教学参考书。《Hadoop海量数据处理:技术详解与项目实战》介绍了Hadoop技术的相关知识,并将理论知识与实际项目相结合。全书共分为三个部分:基础篇、应用篇和总结篇。基础篇详细介绍了Hadoop、MapReduce、HDFS、Hive和Sqoop,并深入探讨了Hadoop的运维和调优;应用篇则包含了一个具有代表性的完整的基于Hadoop的商业智能系统的设计和实现;结束篇对全书进行总结,并对技术发展做了展望。 《Hadoop海量数据处理:技术详解与项目实战》结构针对学习曲线进行了优化,由浅至深,从理论基础到项目实战,适合Hadoop的初学者阅读,也适合作为高等院校相关课程的教学参考书。【作者简介】作者介绍 范东来 北京航空航天大学硕士,就职于清华大学苏州汽车研究院大数据处理中心,数据挖掘工程师,对Apache Hadoop、Apache Spark的开发、运维和数据处理有较丰富的经验,研究方向为分布式计算、机器学习。