第1章 环境部署
1.1 安装部署Hadoop集群
Java安装和配置
用户添加和配置
SSH认证配置
Hadoop下载
环境变量配置
Hadoop配置
配置core-site.xml
配置hdfs-site.xml
配置yarn-site.xml
配置mapred-site.xml
格式化HDFS
启动Hadoop进程
1.2 安装Elasticsearch及相关插件
下载Elasticsearch
配置Elasticsearch
安装Head插件
安装Marvel插件
启动Elasticsearch
1.3 运行WordCount示例
下载编译示例程序
将示例文件上传到HDFS
运行第一个作业
1.4 使用Head 和 Marvel浏览数据
使用Head浏览数据
初识Marvel
使用Sense浏览数据
小结
第2章 初识ES-Hadoop
2.1 理解WordCount程序
理解Mapper
理解Reducer
理解Driver
使用旧的API——org.apache.hadoop.mapred
2.2 实际案例——网络数据监控
获取并理解数据
明确问题
解决方案
解决方案1——预聚合结果
解决方案2——直接查询聚合结果
2.3 开发MapReduce作业
编写Mapper类
编写Driver
编译作业
上传数据到HDFS
运行作业
查看TOP N结果
2.4 将数据从Elasticsearch写回HDFS
了解Twitter数据集
导入Elasticsearch
创建MapReduce作业
编写Tweets2HdfsMapper
运行示例
确认输出
小结
第3章 深入理解Elasticsearch
3.1 理解搜索
观念转换
索引
类型
文档
字段
3.2 与Elasticsearch交互
Elasticsearch的CRUD
创建文档
获取文档
更新文档
删除文档
创建索引
映射
数据类型
创建映射
索引模板
3.3 控制索引过程
什么是反转索引
输入数据分析
停止词
大小写
词根
同义词
分析器
3.4 Elastic查询
编写查询语句
URI查询
match_all查询
term查询
boolean查询
match查询
range查询
wildcard查询
过滤器
3.5 聚合查询
执行聚合查询
terms聚合
histogram聚合
range聚合
geo distance聚合
嵌套聚合
自测题
小结
第4章 利用Kibana进行大数据可视化
4.1 安装部署
Kibana安装
准备数据
自测题
启动Kibana
4.2 数据发现
4.3 数据可视化
饼图
堆积柱状图
使用堆积柱状图完成日期直方图
面积图
饼图组图
环形图
瓦片地图
自测题
4.4 动态图表
小结
第5章 实时分析
5.1 了解Twitter趋势分析器
实现目标
Apache Storm安装
5.2 将流式数据接入Storm
编写Storm spout
编写Storm bolt
创建Storm topology
编译运行Storm作业
5.3 趋势分析
significant term聚合
使用Kibana分析趋势
5.4 使用Percolator对推文分类
Percolator
Percolator优化
推文分类
小结
第6章 ES-Hadoop配置
6.1 分布式环境中的Elasticsearch
集群和节点
节点类型
节点发现
数据分布
分片
副本
分片分配
6.2 ES-Hadoop架构
动态并行
写入Elasticsearch
从Elasticsearch中读取
失败捕获
数据本地化
6.3 生产环境配置
硬件
内存
CPU
磁盘
网络
集群安装
集群拓扑结构
设置名称
设置路径
设置内存
脑裂问题
设置恢复参数
预设配置
数据导入
全文检索
快速聚合
生产环境部署检查列表
6.4 集群管理
监控集群健康
备份和恢复
数据备份
数据恢复
小结
第7章 与Hadoop生态系统集成
7.1 与Pig集成
Pig安装
向Elasticsearch中导入数据
从JSON源写数据
类型转换
从Elasticsearch中读取数据
7.2 与Hive集成
安装Apache Hive
向Elasticsearch中导入数据
从JSON源写数据
类型转换
从Elasticsearch中读取数据
7.3 与Cascading集成
向Elasticsearch中导入数据
编写一个Cascading作业
运行作业
从Elasticsearch中读取数据
编写一个reader作业
使用Lingual
7.4 与Spark集成
安装Spark
向Elasticsearch中导入数据
使用SparkSQL向Elasticsearch中导入数据
从Elasticsearch中读取数据
使用SparkSQL从Elasticsearch中读取数据
7.5 与YARN集成
小结
附录 配置
基本配置
es.resource
es.resource.read
es.resource.write
es.nodes
es.port
读写配置
es.query
es.input.json
es.write.operation
es.update.script
es.update.script.lang
es.update.script.params
es.update.script.params.json
es.batch.size.bytes
es.batch.size.entries
es.batch.write.refresh
es.batch.write.retry.count
es.batch.write.retry.wait
es.ser.reader.value.class
es.ser.writer.value.class
es.update.retry.on.conflict
映射配置
es.mapping.id
es.mapping.parent
es.mapping.version
es.mapping.version.type
es.mapping.routing
es.mapping.ttl
es.mapping.timestamp
es.mapping.date.rich
es.mapping.include
es.mapping.exclude
索引配置
es.index.auto.create
es.index.read.missing.as.empty
es.field.read.empty.as.null
es.field.read.validate.presence
网络配置
es.nodes.discovery
es.nodes.client.only
es.http.timeout
es.http.retries
es.scroll.keepalive
es.scroll.size
es.action.heart.beat.lead
认证配置
es.net.http.auth.user
es.net.http.auth.pass
SSL配置
es.net.ssl
es.net.ssl.keystore.location
es.net.ssl.keystore.pass
es.net.ssl.keystore.type
es.net.ssl.truststore.location
es.net.ssl.truststore.pass
es.net.ssl.cert.allow.self.signed
es.net.ssl.protocol
es.scroll.size
代理配置
es.net.proxy.http.host
es.net.proxy.http.port
es.net.proxy.http.user
es.net.proxy.http.pass
es.net.proxy.http.use.system.props
es.net.proxy.socks.host
es.net.proxy.socks.port
es.net.proxy.socks.user
es.net.proxy.socks.pass
es.net.proxy.socks.use.system.props