计算机
类型
8.1
豆瓣评分
可以朗读
语音朗读
277千字
字数
2015-03-01
发行日期
展开全部
主编推荐语
Hadoop技术实践与实际项目结合,分为基础篇、应用篇和结束篇。
内容简介
本书主要介绍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.4 JOIN语句
- 5.5.5 ORDER BY和SORT BY语句
- 5.5.6 DISTRIBUTE BY和SORT BY语句
- 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
- 7.3.8 利用UNION ALL特性
- 7.3.9 并行执行
- 7.3.10 全排序
- 7.3.11 Top N
- 7.4 Hadoop运维
- 7.4.1 基础运维
- 7.4.2 集群节点动态扩容和卸载
- 7.4.3 利用SecondaryNameNode恢复NameNode
- 7.4.4 常见的运维技巧
- 7.4.5 常见的异常处理
- 应用篇:商业智能系统项目实战
- 第8章 在线图书销售商业智能系统
- 8.1 项目背景
- 8.2 功能需求
- 8.2.1 并行数据导入
- 8.2.2 数据清洗
- 8.2.3 购书转化率分析
- 8.2.4 购书用户聚类分析
- 8.2.5 其他分析需求
- 8.2.6 并行数据导出
- 8.2.7 报表系统
- 8.3 非功能需求
- 8.3.1 性能需求
- 8.3.2 可靠性需求和可用性需求
- 8.3.3 容错性需求
- 8.3.4 硬件需求
- 8.3.5 扩展性需求
- 第9章 系统结构设计
- 9.1 系统架构
- 9.1.1 数据源
- 9.1.2 数据导入层
- 9.1.3 数据存储层
- 9.1.4 数据获取层
- 9.1.5 数据管理层
- 9.1.6 数据服务层
- 9.1.7 数据应用层
- 9.1.8 数据访问层
- 9.2 功能设计
- 9.3 数据仓库结构
- 9.4 系统网络拓扑与硬件选型
- 9.4.1 系统网络拓扑
- 9.4.2 系统硬件选型
- 9.5 技术选型
- 9.5.1 平台选型
- 9.5.2 系统开发语言选型
- 第10章 在开发之前
- 10.1 新建一个工程
- 10.1.1 安装Python
- 10.1.2 安装PyDev插件
- 10.1.3 新建PyDev项目
- 10.2 代码目录结构
- 10.3 项目的环境变量
- 10.4 如何调试
- 第11章 实现数据导入导出模块
- 11.1 处理流程
- 11.2 导入方式
- 11.2.1 全量导入
- 11.2.2 增量导入
- 11.3 读取配置文件
- 11.4 SqoopUtil
- 11.5 整合
- 11.6 导入说明
- 11.7 导出模块
- 第12章 实现数据分析工具模块
- 12.1 处理流程
- 12.2 读取配置文件
- 12.3 HiveUtil
- 12.4 整合
- 12.5 数据分析和报表
- 12.5.1 OLAP和Hive
- 12.5.2 OLAP和多维模型
- 第13章 实现业务数据的数据清洗模块
- 13.1 ETL
- 13.1.1 数据抽取
- 13.1.2 数据转换
- 13.1.3 数据清洗工具
- 13.2 处理流程
- 13.3 数据去重
- 13.3.1 产生原因
- 13.3.2 去重方法
- 13.3.3 一个很有用的UDF:RowNum
- 13.3.4 第二种去重方法
- 13.3.5 进行去重
- 第14章 实现点击流日志的数据清洗模块
- 14.1 数据仓库和Web
- 14.2 处理流程
- 14.3 字段的获取
- 14.4 编写MapReduce作业
- 14.4.1 编写IP地址解析器
- 14.4.2 编写Mapper类
- 14.4.3 编写Partitioner类
- 14.4.4 编写SortComparator类
- 14.4.5 编写Reducer类
- 14.4.6 编写main函数
- 14.4.7 通过Python调用jar文件
- 14.5 还能做什么
- 14.5.1 网站分析的指标
- 14.5.2 网站分析的决策支持
- 第15章 实现购书转化率分析模块
- 15.1 漏斗模型
- 15.2 处理流程
- 15.3 读取配置文件
- 15.4 提取所需数据
- 15.5 编写转化率分析MapReduce作业
- 15.5.1 编写Mapper类
- 15.5.2 编写Partitioner类
- 15.5.3 编写SortComparator类
- 15.5.4 编写Reducer类
- 15.5.5 编写Driver类
- 15.5.6 通过Python模块调用jar文件
- 15.6 对中间结果进行汇总得到最终结果
- 15.7 整合
- 第16章 实现购书用户聚类模块
- 16.1 物以类聚
- 16.2 聚类算法
- 16.2.1 k-means算法
- 16.2.2 Canopy算法
- 16.2.3 数据向量化
- 16.2.4 数据归一化
- 16.2.5 相似性度量
- 16.3 用MapReduce实现聚类算法
- 16.3.1 Canopy算法与MapReduce
- 16.3.2 k-means算法与MapReduce
- 16.3.3 Apache Mahout
- 16.4 处理流程
- 16.5 提取数据并做归一化
- 16.6 维度相关性
- 16.6.1 维度的选取
- 16.6.2 相关系数与相关系数矩阵
- 16.6.3 计算相关系数矩阵
- 16.7 使用Mahout完成聚类
- 16.7.1 使用Mahout
- 16.7.2 解析Mahout的输出
- 16.7.3 得到聚类结果
- 16.8 得到最终结果
- 16.9 评估聚类结果
- 16.9.1 一份不适合聚类的数据
- 16.9.2 簇间距离和簇内距离
- 16.9.3 计算平均簇间距离
- 第17章 实现调度模块
- 17.1 工作流
- 17.2 编写代码
- 17.3 crontab
- 17.4 让数据说话
- 结束篇:总结和展望
- 第18章 总结和展望
- 18.1 总结
- 18.2 YARN和CDH5
- 18.3 Apache Spark
- 18.4 NoSQL和NewSQL
- 18.4.1 NoSQL
- 18.4.2 NewSQL
- 参考文献
展开全部
出版方
人民邮电出版社
人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。