《企业大数据处理》分成三绝大多数,共九章。第壹一部分(第1章)关键介绍了企业大数据系统软件的早期准备工作,包含怎样搭建公司大数据处理系统的手机软件自然环境和集群自然环境。第二一部分(第二~7章)最先介绍了Spark的基本原理,Spark2.0版本的SparkSQL、StructuredStreaming基本原理和操作方法,及其Spark的多种多样提升方法;随后,介绍了Druid的基本原理、集群的构建过程、数据信息摄取过程,及其在查寻过程中怎样完成Druid查寻API;然后介绍了系统日志搜集系统软件Flume的基础架构和重要部件,及其层次系统日志搜集架构的设计方案与实践活动;后介绍了分布式系统消息队列Kafka的基础架构和集群构建过程,及其应用Java語言完成手机客户端API的详尽过程。第三一部分(第八~9章)关键介绍了公司大数据处理的2个具体运用实例,分别是根据Druid搭建多维度数据统计分析服务平台和根据JMX指标值的视频监控系统。
目录
- Contents?目 录
- 前 言
- 第一部分 准备工作
- 第1章 基础环境准备 2
- 1.1 软件环境准备 2
- 1.2 集群环境准备 4
- 1.2.1 Zookeeper集群部署 4
- 1.2.2 Hadoop部署 6
- 1.3 小结 15
- 第二部分 核心技术
- 第2章 Spark详解 18
- 2.1 Spark概述 18
- 2.1.1 Spark概述 18
- 2.1.2 Shuff?le详解 25
- 2.2 Spark SQL 29
- 2.2.1 SparkSession 29
- 2.2.2 DataFrame 30
- 2.2.3 DataSet 35
- 2.3 Structured Streaming 35
- 2.3.1 数据源 36
- 2.3.2 输出到外部存储 38
- 2.3.3 WordCount示例 40
- 2.4 Spark优化 42
- 2.4.1 数据优化 42
- 2.4.2 代码优化 44
- 2.4.3 参数优化 46
- 2.5 小结 48
- 第3章 Druid原理及部署 49
- 3.1 架构设计 49
- 3.1.1 节点类型 49
- 3.1.2 Segment介绍 57
- 3.1.3 容错处理 59
- 3.1.4 路由节点 60
- 3.2 集群部署 63
- 3.2.1 集群规划 63
- 3.2.2 配置安装 64
- 3.3 小结 72
- 第4章 Druid数据摄入 73
- 4.1 模式设计 73
- 4.1.1 设计概述 73
- 4.1.2 数据解析 75
- 4.1.3 Segment分区 79
- 4.1.4 模式更改 81
- 4.2 批量数据摄入 81
- 4.3 流数据摄入 87
- 4.3.1 Tranquility 88
- 4.3.2 StreamPush 91
- 4.3.3 从Kafka中摄取数据 92
- 4.4 数据更新 94
- 4.5 小结 95
- 第5章 Druid客户端 96
- 5.1 涉及组件 96
- 5.1.1 查询相关 96
- 5.1.2 过滤器 99
- 5.1.3 聚合粒度 101
- 5.1.4 聚合器 105
- 5.2 查询类型 109
- 5.2.1 时间序列查询 109
- 5.2.2 TopN查询 111
- 5.2.3 分组查询 113
- 5.2.4 元数据查询 117
- 5.2.5 搜索查询 121
- 5.3 查询API 125
- 5.3.1 RESTful介绍 125
- 5.3.2 Jersey客户端 126
- 5.4 小结 129
- 第6章 日志收集 130
- 6.1 Flume介绍 130
- 6.1.1 基本架构 131
- 6.2 Flume应用实践 144
- 6.2.1 拦截器、选择器实践 144
- 6.2.2 负载均衡、故障转移实践 149
- 6.2.3 设计与实践 150
- 6.3 小结 154
- 第7章 分布式消息队列 155
- 7.1 Kafka介绍 155
- 7.1.1 基本架构 155
- 7.1.2 高吞吐的实现 157
- 7.1.3 高可用的实现 160
- 7.2 安装部署 161
- 7.2.1 Broker配置参数 161
- 7.2.2 分布式部署 162
- 7.3 客户端API 163
- 7.3.1 Producer API 164
- 7.3.2 Consumer API 165
- 7.4 小结 169
- 第三部分 项目实践
- 第8章 数据平台 172
- 8.1 需求分析 172
- 8.2 功能实现 173
- 8.2.1 架构设计 173
- 8.2.2 关键功能实现 175
- 8.3 小结 184
- 第9章 监控系统 185
- 9.1 Inf?luxDB 185
- 9.1.1 Inf?luxDB简介 186
- 9.1.2 Inf?luxDB安装 186
- 9.1.3 Inf?luxDB操作 188
- 9.1.4 Inf?luxDB客户端 191
- 9.2 JMXTrans 192
- 9.2.1 JMXTrans介绍 192
- 9.2.2 JMXTrans安装 194
- 9.2.3 JMXTrans使用 195
- 9.3 Grafana 198
- 9.3.1 Grafana安装 198
- 9.3.2 Grafana使用 199
- 9.4 小结 208