第1章 大数据与机器学习 1
1.1 大数据定义 2
1.2 Hadoop简介 2
1.3 Hadoop HDFS分布式文件系统 3
1.4 Hadoop MapReduce的介绍 5
1.5 Spark的介绍 6
1.6 机器学习的介绍 8
第2章 VirtualBox虚拟机软件的安装 11
2.1 VirtualBox的下载和安装 12
2.2 设置VirtualBox语言版本 16
2.3 设置VirtualBox存储文件夹 17
2.4 在VirtualBox创建虚拟机 18
第3章 Ubuntu Linux操作系统的安装 23
3.1 下载安装Ubuntu的光盘文件 24
3.2 在Virtual设置Ubuntu虚拟光盘文件 26
3.3 开始安装Ubuntu 28
3.4 启动Ubuntu 33
3.5 安装增强功能 34
3.6 设置默认输入法 38
3.7 设置“终端”程序 40
3.8 设置“终端”程序为白底黑字 42
3.9 设置共享剪贴板 43
第4章 Hadoop Single Node Cluster的安装 46
4.1 安装JDK 47
4.2 设置SSH无密码登录 50
4.3 下载安装Hadoop 53
4.4 设置Hadoop环境变量 56
4.5 修改Hadoop配置设置文件 58
4.6 创建并格式化HDFS目录 62
4.7 启动Hadoop 63
4.8 打开Hadoop ResourceManager Web界面 66
4.9 NameNode HDFS Web界面 67
第5章 Hadoop Multi Node Cluster的安装 69
5.1 把Single Node Cluster复制到data1 71
5.2 设置VirtualBox网卡 73
5.3 设置data1服务器 76
5.4 复制data1服务器到data2、data3、master 84
5.5 设置data2、data3服务器 87
5.6 设置master服务器 91
5.7 master连接到data1、data2、data3创建HDFS目录 94
5.8 创建并格式化NameNode HDFS目录 98
5.9 启动Hadoop Multi Node Cluster 99
5.10 打开Hadoop ResourceManager Web界面 102
5.11 打开NameNode Web界面 103
第6章 Hadoop HDFS命令 104
6.1 启动Hadoop Multi-Node Cluster 105
6.2 创建与查看HDFS目录 107
6.3 从本地计算机复制文件到HDFS 109
6.4 将HDFS上的文件复制到本地计算机 114
6.5 复制与删除HDFS文件 116
6.6 在Hadoop HDFS Web用户界面浏览HDFS 118
第7章 Hadoop MapReduce 122
7.1 介绍wordCount.Java 123
7.2 编辑wordCount.Java 124
7.3 编译wordCount.Java 127
7.4 创建测试文本文件 129
7.5 运行wordCount.Java 130
7.6 查看运行结果 131
7.7 Hadoop MapReduce的缺点 132
第8章 Spark的安装与介绍 133
8.1 Spark的Cluster模式架构图 134
8.2 Scala的介绍与安装 135
8.3 安装Spark 138
8.4 启动spark-shell交互界面 141
8.5 设置spark-shell显示信息 142
8.6 启动Hadoop 144
8.7 本地运行spark-shell程序 145
8.8 在Hadoop YARN运行spark-shell 147
8.9 构建Spark Standalone Cluster执行环境 149
8.10 在Spark Standalone运行spark-shell 155
第9章 Spark RDD 159
9.1 RDD的特性 160
9.2 基本RDD“转换”运算 161
9.3 多个RDD“转换”运算 167
9.4 基本“动作”运算 169
9.5 RDD Key-Value基本“转换”运算 171
9.6 多个RDD Key-Value“转换”运算 175
9.7 Key-Value“动作”运算 178
9.8 Broadcast广播变量 181
9.9 accumulator累加器 184
9.10 RDD Persistence持久化 186
9.11 使用Spark创建WordCount 188
9.12 Spark WordCount详细解说 191
第10章 Spark的集成开发环境 195
10.1 下载与安装eclipse Scala IDE 197
10.2 下载项目所需要的Library 201
10.3 启动eclipse 205
10.4 创建新的Spark项目 206
10.5 设置项目链接库 210
10.6 新建scala程序 211
10.7 创建WordCount测试文本文件 213
10.8 创建WordCount.scala 213
10.9 编译WordCount.scala程序 215
10.10 运行WordCount.scala程序 217
10.11 导出jar文件 220
10.12 spark-submit的详细介绍 223
10.13 在本地local模式运行WordCount程序 224
10.14 在Hadoop yarn-client运行WordCount程序 226
10.15 在Spark Standalone Cluster上运行WordCount程序 230
10.16 本书范例程序的安装说明 231
第11章 创建推荐引擎 236
11.1 推荐算法介绍 237
11.2 “推荐引擎”大数据分析使用场景 237
11.3 ALS推荐算法的介绍 238
11.4 ml-100k推荐数据的下载与介绍 240
11.5 使用spark-shell导入ml-100k数据 242
11.6 查看导入的数据 244
11.7 使用ALS.train进行训练 247
11.8 使用模型进行推荐 250
11.9 显示推荐的电影名称 252
11.10 创建Recommend项目 255
11.11 Recommend.scala程序代码 257
11.12 创建PrepareData()数据准备 259
11.13 recommend()推荐程序代码 261
11.14 运行Recommend.scala 263
11.15 创建AlsEvaluation.scala调校推荐引擎参数 266
11.16 创建PrepareData()数据准备 269
11.17 进行训练评估 270
11.18 运行AlsEvaluation 279
11.19 修改Recommend.scala为最佳参数组合 281
第12章 StumbleUpon数据集 282
12.1 StumbleUpon数据集简介 283
12.2 下载StumbleUpon数据 285
12.3 用LibreOffice Calc电子表格查看train.tsv 288
12.4 二元分类算法 291
第13章 决策树二元分类 292
13.1 决策树的介绍 293
13.2 创建Classification项目 294
13.3 开始输入RunDecisionTreeBinary.scala程序 296
13.4 数据准备阶段 298
13.5 训练评估阶段 303
13.6 预测阶段 308
13.7 运行RunDecisionTreeBinary.scala 311
13.6 修改RunDecisionTreeBinary调校训练参数 313
13.7 运行RunDecisionTreeBinary进行参数调校 320
13.8 运行RunDecisionTreeBinary不进行参数调校 323
第14章 逻辑回归二元分类 326
14.1 逻辑回归分析介绍 327
14.2 RunLogisticRegression WithSGDBinary.scala程序说明 328
14.3 运行RunLogisticRegression WithSGDBinary.scala进行参数调校 331
14.4 运行RunLogisticRegression WithSGDBinary.scala不进行参数调校 335
第15章 支持向量机SVM二元分类 337
15.1 支持向量机SVM算法的基本概念 338
15.2 RunSVMWithSGDBinary.scala程序说明 338
15.3 运行SVMWithSGD.scala进行参数调校 341
15.4 运行SVMWithSGD.scala不进行参数调校 344
第16章 朴素贝叶斯二元分类 346
16.1 朴素贝叶斯分析原理的介绍 347
16.2 RunNaiveBayesBinary.scala程序说明 348
16.3 运行NaiveBayes.scala进行参数调校 351
16.4 运行NaiveBayes.scala不进行参数调校 353
第17章 决策树多元分类 355
17.1 “森林覆盖植被”大数据问题分析场景 356
17.2 UCI Covertype数据集介绍 357
17.3 下载与查看数据 359
17.4 创建RunDecisionTreeMulti.scala 361
17.5 修改RunDecisionTreeMulti.scala程序 362
17.6 运行RunDecisionTreeMulti.scala进行参数调校 367
17.7 运行RunDecisionTreeMulti.scala不进行参数调校 371
第18章 决策树回归分析 373
18.1 Bike Sharing大数据问题分析 374
18.2 Bike Sharing数据集 375
18.3 下载与查看数据 375
18.4 创建RunDecisionTreeRegression.scala 378
18.5 修改RunDecisionTreeRegression.scala 380
18.6 运行RunDecisionTreeRegression.scala进行参数调校 389
18.7 运行RunDecisionTreeRegression.scala不进行参数调校 392
第19章 使用Apache Zeppelin数据可视化 394
19.1 Apache Zeppelin简介 395
19.2 安装Apache Zeppelin 395
19.3 启动Apache Zeppelin 399
19.4 创建新的Notebook 402
19.5 使用Zeppelin运行Shell命令 403
19.6 创建临时表UserTable 406
19.7 使用Zeppelin运行年龄统计Spark SQL 407
19.8 使用Zeppelin运行性别统计Spark SQL 409
19.9 按照职业统计 410
19.10 Spark SQL加入文本框输入参数 412
19.11 加入选项参数 414
19.12 同时显示多个统计字段 416
19.13 设置工具栏 419
19.14 设置段落标题 420
19.15 设置Paragraph段落的宽度 422
19.16 设置显示模式 423