作品简介

本书所介绍的实例都是从原理谈优化,让读者知其然也知其所以然。例如,在介绍HiveSQL调优时,我们会转换成计算引擎执行的等价代码,让读者知道HiveSQL的实际运行流程,从而直观地理解其可能引发的性能问题。

林志煌,曾在中国互联网头部公司长期从事大数据相关项目的研发。擅长并能够熟练使用Hive、MapReduce和Spark等大数据相关技术。经手过日数据流量TB级别和总量PB级别的Hadoop大数据平台建设。从事过数据采集、数据清洗、数据仓库模型构建及数据产品研发等工作,涵盖了数据生命周期的主要阶段。

作品目录

  • 前言
  • 第1章 举例感受Hive性能调优的多样性
  • 1.1 感受改写SQL对性能的影响
  • 1.2 感受调整数据块大小对性能的影响
  • 1.3 感受不同数据格式对性能的提升
  • 1.4 感受不同的表设计对性能的影响
  • 1.5 调优其实不难
  • 第2章 Hive问题排查与调优思路
  • 2.1 小白推演Hive的优化方法
  • 2.2 老工对Hive的调优理解
  • 2.3 总结调优的一般性过程
  • 第3章 环境搭建
  • 3.1 Docker基础
  • 3.2 Cloudera Docker搭建伪分布式环境
  • 3.3 Docker搭建分布式集群
  • 3.4 CDM搭建分布式集群
  • 3.5 使用GitHub开源项目构建集群
  • 第4章 Hive及其相关大数据组件
  • 4.1 Hive架构
  • 4.2 YARN组件
  • 4.3 HDFS架构
  • 4.4 计算引擎
  • 第5章 深入MapReduce计算引擎
  • 5.1 MapReduce整体处理过程
  • 5.2 MapReduce作业输入
  • 5.3 MapReduce的Mapper
  • 5.4 MapReduce的Reducer
  • 5.5 MapReduce的Shuffle
  • 5.6 MapReduce的Map端聚合
  • 5.7 MapReduce作业输出
  • 5.8 MapReduce作业与Hive配置
  • 5.9 MapReduce与Tez对比
  • 第6章 HiveSQL执行计划
  • 6.1 查看SQL的执行计划
  • 6.2 简单SQL的执行计划解读
  • 6.3 带普通函数/操作符SQL的执行计划解读
  • 6.4 带聚合函数的SQL执行计划解读
  • 6.5 带窗口/分析函数的SQL执行计划解读
  • 6.6 表连接的SQL执行计划解读
  • 第7章 Hive数据处理模式
  • 7.1 过滤模式
  • 7.2 聚合模式
  • 7.3 连接模式
  • 第8章 YARN日志
  • 8.1 查看YARN日志的方式
  • 8.2 快速查看集群概况
  • 8.3 查看集群节点概况
  • 8.4 查看集群的队列调度情况
  • 8.5 查看集群作业运行信息
  • 第9章 数据存储
  • 9.1 文件存储格式之Apache ORC
  • 9.2 与ORC相关的Hive配置
  • 9.3 文件存储格式之Apache Parquet
  • 9.4 数据归档
  • 第10章 发现并优化Hive中的
  • 10.1 监控Hive数据库的状态
  • 10.2 监控当前集群状态
  • 10.3 定位性能瓶颈
  • 10.4 数据倾斜
  • 第11章 Hive知识体系总结
  • 11.1 Hive知识体系
  • 11.2 数据粒度
  • 11.3 SQL相关
  • 11.4 文件操作
展开全部