第Ⅰ部分 概念 3
第1章 概述:用Hadoop构建数据分析系统 3
1.1构建DAS的必要性 4
1.2 Hadoop Core及其简史 4
1.3 Hadoop生态系统概述 5
1.4 AI技术、认知计算、深度学习以及BDA 6
1.5自然语言处理与BDAS 6
1.6 SQL与NoSQL查询处理 6
1.7必要的数学知识 7
1.8设计及构建BDAS的循环过程 7
1.9如何利用Hadoop生态系统实现BDA 10
1.10“图像大数据”(IABD)基本思想 10
1.10.1使用的编程语言 12
1.10.2 Hadoop生态系统的多语言组件 12
1.10.3 Hadoop生态系统架构 13
1.11有关软件组合件与框架的注意事项 13
1.12 Apache Lucene、 Solr及其他:开源搜索组件 14
1.13建立BDAS的架构 15
1.14你需要了解的事情 15
1.15 数据可视化与报表 17
1.15.1使用Eclipse IDE作为开发环境 18
1.15.2本书未讲解的内容 19
1.16本章小结 21
第2章 Scala及Python进阶 23
2.1动机:选择正确的语言定义应用 23
2.2 Scala概览 24
2.3 Python概览 29
2.4错误诊断、调试、配置文件及文档 31
2.4.1 Python的调试资源 32
2.4.2 Python文档 33
2.4.3 Scala的调试资源 33
2.5编程应用与示例 33
2.6本章小结 34
2.7参考文献 34
第3章 Hadoop及分析的标准工具集 35
3.1库、组件及工具集:概览 35
3.2在评估系统中使用深度学习方法 38
3.3使用Spring框架及Spring Data 44
3.4数字与统计库:R、Weka及其他 44
3.5分布式系统的OLAP技术 44
3.6用于分析的Hadoop工具集:Apache Mahout及相关工具 45
3.7 Apache Mahout的可视化 46
3.8 Apache Spark库与组件 46
3.8.1可供选择的不同类型的shell 46
3.8.2 Apache Spark数据流 47
3.8.3 Sparkling Water与H2O机器学习 48
3.9组件使用与系统建立示例 48
3.10封包、测试和文档化示例系统 50
3.11本章小结 51
3.12参考文献 51
第4章 关系、NoSQL及图数据库 53
4.1图查询语言:Cypher及Gremlin 55
4.2 Cypher示例 55
4.3 Gremlin示例 56
4.4图数据库:Apache Neo4J 58
4.5关系数据库及Hadoop生态系统 59
4.6 Hadoop以及UA组件 59
4.7本章小结 63
4.8参考文献 64
第5章 数据管道及其构建方法 65
5.1基本数据管道 66
5.2 Apache Beam简介 67
5.3 Apache Falcon简介 68
5.4数据源与数据接收:使用Apache Tika构建数据管道 68
5.5计算与转换 70
5.6结果可视化及报告 71
5.7本章小结 74
5.8参考文献 74
第6章 Hadoop、Lucene、Solr与高级搜索技术 75
6.1 Lucene/Solr生态系统简介 75
6.2 Lucene查询语法 76
6.3使用Solr的编程示例 79
6.4使用ELK栈(Elasticsearch、Logstash、Kibana) 85
6.5 Solr与Elasticsearch:特点与逻辑 93
6.6应用于Elasticsearch和Solr的Spnng Data组件 95
6.7使用LingPipe和GATE实现定制搜索 99
6.8本章小结 108
6.9参考文献 108
第Ⅱ部分 架构及算法 111
第7章 分析技术及算法概览 111
7.1算法类型综述 111
7.2统计/数值技术 112
7.3贝叶斯技术 113
7.4本体驱动算法 114
7.5混合算法:组合算法类型 115
7.6代码示例 116
7.7本章小结 119
7.8参考文献 119
第8章 规则引擎、系统控制与系统编排 121
8.1规则系统oss Drools介绍 121
8.2基于规则的软件系统控制 124
8.3系统协调与oss Drools 125
8.4分析引擎示例与规则控制 126
8.5本章小结 129
8.6参考文献 129
第9章 综合提升:设计一个完整的分析系统 131
9.1本章小结 136
9.2参考文献 136
第Ⅲ部分 组件与系统 139
第10章 数据可视化:可视化与交互分析 139
10.1简单的可视化 139
10.2 Angular JS和Friends简介 143
10.3使用JHipster集成Spring XD和Angular JS 143
10.4使用d3.js、sigma.js及其他工具 152
10.5本章小结 153
10.6参考文献 153
第Ⅳ部分 案例研究与应用 157
第11章 生物信息学案例研究:分析显微镜载玻片数据 157
11.1生物信息学介绍 157
11.2自动显微镜简介 159
11.3代码示例:使用图像填充HDFS 162
11.4本章小结 165
11.5参考文献 165
第12章 贝叶斯分析组件:识别信用卡诈骗 167
12.1贝叶斯分析简介 167
12.2贝叶斯组件用于信用卡诈骗检测 169
12.3本章小结 172
12.4参考文献 172
第13章 寻找石油:使用Apache Mahout分析地理数据 173
13.1基于领域的Apache Mahout推理介绍 173
13.2智能制图系统和Hadoop分析 179
13.3本章小结 180
13.4参考文献 180
第14章 “图像大数据”系统:一些案例研究 181
14.1图像大数据简介 181
14.2使用HIPI系统的第一个代码示例 184
14.3 BDA图像工具包利用高级语言功能 187
14.4究竟什么是图像数据分析? 187
14.5交互模块和仪表板 189
14.6添加新的数据管道和分布式特征查找 189
14.7示例:分布式特征查找算法 190
14.8 IABD工具包中的低级图像处理程序 194
14.9术语 194
14.10本章小结 195
14.11参考文献 195
第15章 构建通用数据管道 199
15.1示例系统的体系架构和描述 199
15.2如何获取和运行示例系统 200
15.3管道构建的五大策略 200
15.3.1从数据源和接收装置工作 200
15.3.2由中间向外发展 200
15.3.3基于企业集成模式(EIP)的开发 200
15.3.4基于规则的消息管道开发 201
15.3.5控制+数据(控制流)管道 202
15.4本章小结 202
15.5参考文献 203
第16章 大数据分析的总结与展望 205
16.1总结 205
16.2大数据分析的现状 206
16.3“孵化项目”和“初期项目” 208
16.4未来Hadoop及其后续思考 209
16.5不同观点:目前Hadoop的替代方案 211
16.6在“未来Hadoop”中使用机器学习和深度学习技术 211
16.7数据可视化和BDA的前沿领域 212
16.8结束语 212
附录A 设置分布式分析环境 215
附录B 获取、安装和运行示例分析系统 227