林子雨编著《大数据基础编程、实验和案例教程(第2版)》
2020年9月第2版教材目录
第1章 大数据技术概述 /1
1.1 大数据时代 /1
1.2 大数据关键技术 /2
1.3 大数据软件 /3
1.3.1 Hadoop /4
1.3.2 Spark /5
1.3.3 NoSQL数据库 /5
1.4 内容安排 /6
1.5 在线资源 /8
1.6 本章小结 /10
第2章 Linux系统的安装和使用 /11
2.1 Linux系统简介 /11
2.2 Linux系统安装 /11
2.2.1 下载安装文件 /12
2.2.2 Linux系统的安装方式 /12
2.2.3 安装Linux虚拟机 /13
2.2.4 生成Linux虚拟机镜像文件 /35
2.3 Linux系统及相关软件的基本使用方法 /36
2.3.1 Shell /36
2.3.2 root用户 /37
2.3.3 创建普通用户 /37
2.3.4 sudo命令 /38
2.3.5 常用的Linux系统命令 /38
2.3.6 文件解压缩 /39
2.3.7 常用的目录 /39
2.3.8 目录的权限 /40
2.3.9 更新APT /40
2.3.10 切换中英文输入法 /42
2.3.11 vim 编辑器的使用方法 /42
2.3.12 在Windows系统中使用SSH 方式登录Linux系统 /43
2.3.13 在Linux系统中安装Eclipse /46
2.3.14 其他使用技巧 /47
2.4 关于本书内容的一些约定 /47
2.5 本章小结 /48
第3章 Hadoop的安装和使用 /49
3.1 Hadoop简介 /49
3.2 安装Hadoop前的准备工作 /49
3.2.1 创建hadoop用户 /50
3.2.2 更新APT /50
3.2.3 安装SSH /50
3.2.4 安装Java环境 /51
3.3 安装Hadoop /52
3.3.1 下载安装文件 /53
3.3.2 单机模式配置 /53
3.3.3 伪分布式模式配置 /54
3.3.4 分布式模式配置 /61
3.4 本章小结 /70
第4章 HDFS操作方法和基础编程 /71
4.1 HDFS操作常用的Shell命令 /71
4.1.1 查看命令的用法 /71
4.1.2 HDFS操作 /73
4.2 利用HDFS的Web管理界面 /75
4.3 HDFS编程实践 /75
4.3.1 在Eclipse中创建项目 /75
4.3.2 为项目添加需要用到的JAR包 /76
4.3.3 编写Java应用程序 /79
4.3.4 编译运行程序 /82
4.3.5 应用程序的部署 /83
4.4 本章小结 /86
第5章 HBase的安装和基础编程 /88
5.1 安装HBase /88
5.1.1 下载安装文件 /88
5.1.2 配置环境变量 /89
5.1.3 添加用户权限 /89
5.1.4 查看HBase版本信息 /89
5.2 HBase的配置 /90
5.2.1 单机模式配置 /90
5.2.2 伪分布式模式配置 /92
5.3 HBase常用的Shell命令 /94
5.3.1 在HBase中创建表 /94
5.3.2 添加数据 /94
5.3.3 查看数据 /95
5.3.4 删除数据 /96
5.3.5 删除表 /97
5.3.6 查询历史数据 /97
5.3.7 退出HBase数据库 /97
5.4 HBase编程实践 /98
5.4.1 在Eclipse中创建项目 /98
5.4.2 为项目添加需要用到的JAR包 /100
5.4.3 编写Java应用程序 /102
5.4.4 编译运行程序 /105
5.5 本章小结 /106
第6章 典型NoSQL数据库的安装和使用 /108
6.1 Redis的安装和使用 /108
6.1.1 Redis简介 /108
6.1.2 安装Redis /108
6.1.3 Redis实例演示 /110
6.2 MongoDB的安装和使用 /111
6.2.1 MongDB简介 /111
6.2.2 安装MongoDB /112
6.2.3 使用Shell命令操作MongoDB /113
6.2.4 JavaAPI编程实例 /118
6.3 本章小结 /122
第7章 MapReduce基础编程 /123
7.1 词频统计任务要求 /123
7.2 MapReduce程序编写方法 /124
7.2.1 编写Map处理逻辑 /124
7.2.2 编写Reduce处理逻辑 /124
7.2.3 编写main方法 /125
7.2.4 完整的词频统计程序 /126
7.3 编译打包程序 /127
7.3.1 使用命令行编译打包词频统计程序 /128
7.3.2 使用Eclipse编译打包词频统计程序 /128
7.4 运行程序 /136
7.5 本章小结 /139
第8章 数据仓库Hive的安装和使用 /140
8.1 Hive的安装 /140
8.1.1 下载安装文件 /140
8.1.2 配置环境变量 /141
8.1.3 修改配置文件 /141
8.1.4 安装并配置MySQL /142
8.2 Hive的数据类型 /144
8.3 Hive基本操作 /145
8.3.1 创建数据库、表、视图 /145
8.3.2 删除数据库、表、视图 /146
8.3.3 修改数据库、表、视图 /147
8.3.4 查看数据库、表、视图 /148
8.3.5 描述数据库、表、视图 /148
8.3.6 向表中装载数据 /149
8.3.7 查询表中数据 /149
8.3.8 向表中插入数据或从表中导出数据 /149
8.4 Hive应用实例:WordCount /150
8.5 Hive编程的优势 /151
8.6 本章小结 /151
第9章 Spark的安装和基础编程 /152
9.1 基础环境 /152
9.2 安装Spark /152
9.2.1 下载安装文件 /152
9.2.2 配置相关文件 /153
9.3 使用SparkShell编写代码 /154
9.3.1 启动SparkShell /154
9.3.2 读取文件 /155
9.3.3 编写词频统计程序 /156
9.4 编写Spark独立应用程序 /157
9.4.1 用Scala语言编写Spark独立应用程序 /157
9.4.2 用Java语言编写Spark独立应用程序 /161
9.5 本章小结 /164
第10章 Flink的安装和基础编程 /165
10.1 安装Flink /165
10.2 编程实现WordCount程序 /167
10.2.1 安装Maven /167
10.2.2 编写代码 /167
10.2.3 使用Maven打包Java程序 /171
10.2.4 通过flinkrun命令运行程序 /172
10.3 本章小结 /172
第11章 典型可视化工具的使用方法 /173
11.1 D3可视化库的使用方法 /173
11.1.1 D3可视化库的安装 /173
11.1.2 基本操作 /174
11.2 使用ECharts制作图表 /182
11.2.1 ECharts简介 /182
11.2.2 ECharts图表制作方法 /182
11.3 本章小结 /185
第12章 数据采集工具的安装和使用 /186
12.1 Kafka /186
12.1.1 Kafka相关概念 /186
12.1.2 安装Kafka /186
12.1.3 一个实例 /187
12.2 实例:编写Spark程序使用Kafka数据源 /188
12.2.1 Kafka准备工作 /188
12.2.2 Spark准备工作 /190
12.2.3 编写Spark程序使用Kafka数据源 /191
12.3 本章小结 /197
第13章 大数据课程综合实验案例 /198
13.1 案例简介 /198
13.1.1 案例目的 /198
13.1.2 适用对象 /198
13.1.3 时间安排 /198
13.1.4 预备知识 /198
13.1.5 硬件要求 /199
13.1.6 软件工具 /199
13.1.7 数据集 /199
13.1.8 案例任务 /199
13.2 实验环境搭建 /200
13.3 实验步骤概述 /200
13.4 本地数据集上传到数据仓库Hive /201
13.4.1 实验数据集的下载 /201
13.4.2 数据集的预处理 /203
13.4.3 导入数据库 /206
13.5 Hive数据分析 /209
13.5.1 简单查询分析 /209
13.5.2 查询条数统计分析 /211
13.5.3 关键字条件查询分析 /213
13.5.4 根据用户行为分析 /214
13.5.5 用户实时查询分析 /215
13.6 Hive、MySQL、HBase数据互导 /216
13.6.1 Hive预操作 /216
13.6.2 使用JavaAPI将数据从Hive导入MySQL /217
13.6.3 使用HBaseJavaAPI把数据从本地导入HBase中 /222
13.7 使用R进行数据可视化分析 /229
13.7.1 安装R /229
13.7.2 安装依赖库 /230
13.7.3 可视化分析 /232
13.8 本章小结 /236
第14章 实验 /237
14.1 实验一:熟悉常用的Linux操作和Hadoop操作 /237
14.1.1 实验目的 /237
14.1.2 实验平台 /237
14.1.3 实验步骤 /237
14.1.4 实验报告 /239
14.2 实验二:熟悉常用的HDFS操作 /239
14.2.1 实验目的 /239
14.2.2 实验平台 /239
14.2.3 实验步骤 /240
14.2.4 实验报告 /240
14.3 实验三:熟悉常用的HBase操作 /241
14.3.1 实验目的 /241
14.3.2 实验平台 /241
14.3.3 实验步骤 /241
14.3.4 实验报告 /242
14.4 实验四:NoSQL和关系数据库的操作比较 /243
14.4.1 实验目的 /243
14.4.2 实验平台 /243
14.4.3 实验步骤 /243
14.4.4 实验报告 /246
14.5 实验五:MapReduce初级编程实践 /247
14.5.1 实验目的 /247
14.5.2 实验平台 /247
14.5.3 实验步骤 /247
14.5.4 实验报告 /249
14.6 实验六:熟悉Hive的基本操作 /250
14.6.1 实验目的 /250
14.6.2 实验平台 /250
14.6.3 数据集 /250
14.6.4 实验步骤 /250
14.6.5 实验报告 /251
14.7 实验七:Spark初级编程实践 /252
14.7.1 实验目的 /252
14.7.2 实验平台 /252
14.7.3 实验步骤 /252
14.7.4 实验报告 /254
14.8 实验八:Flink初级编程实践 /254
14.8.1 实验目的 /254
14.8.2 实验平台 /254
14.8.3 实验步骤 /254
14.8.4 实验报告 /255
附录A 实验参考答案 /256
A.1 “实验一:熟悉常用的Linux操作和Hadoop操作”实验步骤 /256
A.2 “实验二:熟悉常用的HDFS操作”实验步骤 /261
A.3 “实验三:熟悉常用的HBase操作”实验步骤 /280
A.4 “实验四:NoSQL和关系数据库的操作比较”实验步骤 /289
A.5 “实验五:MapReduce初级编程实践”实验步骤 /306
A.6 “实验六:熟悉Hive的基本操作”实验步骤 /315
A.7 “实验七:Spark初级编程实践”实验步骤 /319
A.8 “实验八:Flink初级编程实践”实验步骤 /325
附录B Linux系统中的MySQL安装及常用操作 /343
B.1 安装MySQL /343
B.2 MySQL常用操作 /346
参考文献 /350