本书围绕大数据采集、汇聚、存储、计算、分析、挖掘、可视化等处理全过程,基于 Flume、Kafka、HDFS、HBase、Map Reduce、Spark、Hive、ECharts 等主流软件全面介绍大数据的基础原理和核心技术,以及人工智能、云计算和物联网等大数据相关内容,并在此基础上进一步阐述政务、商业等行业大数据,以及文本、图像、音频、视频等媒体大数据的应用现状和最新进展。本书内容丰富,深入浅出,同时配有大量实操代码和应用案例,可作为学习大数据的入门和进阶教材。
样章试读
目录
- 目录
第1章 大数据概述 1
1.1 大数据发展历程 1
1.2 大数据主要特征 3
1.3 大数据与云计算、人工智能和物联网 6
1.4 大数据发展现状和趋势 10
习题 17
第2章 大数据采集 18
2.1 大数据采集概述 18
2.1.1 大数据的来源 18
2.1.2 大数据的采集 18
2.2 海量日志采集系统Flume 19
2.2.1 Flume简介 19
2.2.2 Flume的组成 19
2.2.3 Flume的工作流程 22
2.2.4 Flume的数据流模型 24
2.2.5 Flume实战 26
2.3 分布式发布订阅消息系统Kafka 34
2.3.1 Kafka简介 34
2.3.2 Kafka的架构 36
2.3.3 Kafka的应用场景 39
2.3.4 Kafka实战 40
习题 45
第3章 大数据存储基础 46
3.1 HDFS简介 46
3.1.1 HDFS的设计目标 46
3.1.2 HDFS的局限性 47
3.2 HDFS的体系架构 47
3.2.1 数据块 48
3.2.2 名称节点和数据节点 49
3.2.3 第二名称节点 49
3.3 HDFS运行原理 50
3.3.1 副本机制 51
3.3.2 数据出错与恢复 52
3.3.3 HDFS文件读流程 53
3.3.4 HDFS文件写流程 54
3.4 HDFS编程实践 55
3.4.1 利用Shell命令与HDFS进行交互 56
3.4.2 利用Web界面管理HDFS 58
3.4.3 使用Java API访问HDFS 59
习题 65
第4章 大数据存储进阶 66
4.1 从关系型数据库到NoSQL数据库 66
4.1.1 关系型数据库 66
4.1.2 NoSQL简介 68
4.1.3 NoSQL的基础理论 68
4.1.4 NoSQL的四大类型 71
4.2 分布式数据库HBase概述 73
4.2.1 HBase简介 73
4.2.2 HBase数据模型 75
4.2.3 HBase体系结构 78
4.2.4 HBase工作原理 79
4.3 HBase编程实践 83
4.3.1 安装HBase 83
4.3.2 HBase配置 84
4.3.3 HBase Shell命令 87
习题 90
第5章 大数据计算 91
5.1 MapReduce概述 91
5.1.1 MapReduce来源 91
5.1.2 MapReduce设计思想 92
5.1.3 MapReduce的优缺点 93
5.2 MapReduce工作流程 94
5.2.1 MapReduce基本架构 94
5.2.2 MapReduce运行机制 95
5.2.3 MapReduce内部逻辑 96
5.3 MapReduce实例分析 98
5.3.1 WordCount设计思路 98
5.3.2 WordCount数据处理流程 98
5.3.3 WordCount编程实现 101
5.4 Spark概述 108
5.4.1 Spark简介 108
5.4.2 Spark生态圈 109
5.5 Spark工作流程 110
5.5.1 基本概念 110
5.5.2 架构设计 110
5.5.3 运行流程 112
5.5.4 RDD算子 113
习题 114
第6章 多维大数据分析 115
6.1 多维数据模型 115
6.1.1 数据立方体 115
6.1.2 多维数据模型 115
6.1.3 概念分层 119
6.1.4 多维数据模型中的OLAP操作 120
6.1.5 多维数据模型的优缺点 122
6.2 多维分析工具Hive 123
6.2.1 Hive简介 123
6.2.2 数据仓库与数据库 123
6.2.3 Hive的架构及工作原理 126
6.2.4 Hive的数据类型 128
6.2.5 Hive的数据模型 129
6.2.6 Hive实战 130
习题 137
第7章 大数据挖掘 138
7.1 数据挖掘概述 138
7.1.1 数据挖掘简介 138
7.1.2 数据预处理 138
7.1.3 数据挖掘任务 139
7.2 分类 140
7.2.1 分类模型 140
7.2.2 决策树 141
7.2.3 支持向量机 145
7.3 回归 147
7.3.1 回归模型 147
7.3.2 线性回归 148
7.3.3 多项式回归 149
7.4 聚类 150
7.4.1 聚类模型 150
7.4.2 k均值算法 152
7.4.3 DBSCAN算法 153
7.5 关联分析 155
7.5.1 关联分析模型 155
7.5.2 Apriori算法 156
7.5.3 FP-growth算法 158
习题 160
第8章 大数据可视化 161
8.1 数据可视化概述 161
8.1.1 数据可视化简介 161
8.1.2 数据可视化的发展历程 161
8.1.3 数据可视化的作用 163
8.2 数据可视化方法 164
8.2.1 高维大数据可视化 164
8.2.2 网络和层次大数据可视化 166
8.2.3 时空大数据可视化 168
8.2.4 文本大数据可视化 169
8.3 数据可视化工具 170
8.3.1 ECharts 170
8.3.2 Tableau 174
8.3.3 D3 176
习题 182
第9章 大数据与人工智能 183
9.1 人工智能概述 183
9.1.1 人工智能简介 183
9.1.2 人工智能核心技术 183
9.1.3 人工智能与大数据的应用 184
9.1.4 人工智能与大数据的关系 187
9.1.5 大数据领域的人工智能展望 189
9.2 机器学习与大数据 189
9.2.1 大规模机器学习优化算法 189
9.2.2 大数据下的机器学习 192
9.3 深度学习与大数据 193
9.3.1 典型深度学习算法 194
9.3.2 大数据下的深度学习 199
习题 199
第10章 政务大数据 201
10.1 智慧政务概述 201
10.1.1 政务信息化发展历史 201
10.1.2 智慧政务内涵 202
10.1.3 “最多跑一次”改革 203
10.2 政务大数据体系架构 204
10.2.1 政务大数据概述 204
10.2.2 政务大数据总体架构 205
10.2.3 政务大数据安全 207
10.3 政务大数据与区块链 208
10.3.1 区块链概述 208
10.3.2 推动政务数据“上链” 209
10.3.3 基于区块链的政务大数据共享和交换 210
习题 212
第11章 商业大数据 213
11.1 商业智能与大数据 213
11.1.1 传统商业智能 213
11.1.2 大数据时代的商业智能 217
11.1.3 商业智能案例 218
11.2 社交计算与大数据 220
11.2.1 传统社交网络 220
11.2.2 大数据时代的社交网络 221
11.2.3 社交计算案例 223
11.3 推荐系统与大数据 224
11.3.1 传统推荐系统 224
11.3.2 大数据时代的推荐系统 227
11.3.3 推荐系统案例 228
习题 230
第12章 多媒体大数据 231
12.1 文本大数据 231
12.1.1 文本大数据简介 231
12.1.2 文本大数据代表性技术 232
12.1.3 典型应用案例 234
12.2 图像大数据 236
12.2.1 图像大数据简介 236
12.2.2 图像大数据代表性技术 236
12.2.3 典型应用案例 238
12.3 音频大数据 239
12.3.1 音频大数据简介 239
12.3.2 音频大数据代表性技术 240
12.3.3 典型应用案例 241
12.4 视频大数据 242
12.4.1 视频大数据简介 242
12.4.2 视频大数据代表性技术 243
12.4.3 典型应用案例 244
习题 246
参考文献 247