图书简介:
第1章 数据 1
1.1 数据流与大数据 1
1.1.1 数据产生 2
1.1.2 数据采集 3
1.1.3 数据存储和管理 4
1.2 数据平台与技术 5
1.2.1 离线数据平台的
相关技术 6
1.2.2 实时数据平台的
相关技术 7
习题1 9
上机实验1 大数据架构和
组件选型 9
第2章 搭建大数据集群环境 11
2.1 集群环境安装准备 11
2.1.1 学习任务:创建虚拟机 11
2.1.2 启动虚拟机并安装
Linux操作系统 15
2.1.3 克隆虚拟机 18
2.1.4 Linux操作系统
网络配置 20
2.1.5 SSH操作配置 25
2.2 安装JDK 29
2.3 ZooKeeper集群部署 31
2.3.1 ZooKeeper集群的
安装与配置 31
2.3.2 ZooKeeper集群的
启动与关闭 33
2.4 Hadoop集群部署 34
2.4.1 Hadoop高可用
集群规划 35
2.4.2 安装Hadoop 36
2.4.3 Hadoop高可用
集群配置 37
2.4.4 启用Hadoop
高可用集群 42
习题2 45
上机实验2 VMware Workstation
的安装和使用 46
第3章 Hadoop核心组件原理与实践 47
3.1 分布式文件系统HDFS的
认识与操作 47
3.1.1 HDFS体系结构的认识 47
3.1.2 HDFS Shell操作 51
3.1.3 HDFS API操作 56
3.2 分布式计算框架MapReduce
的认识与操作 70
3.2.1 MapReduce的认识 71
3.2.2 MapReduce编程模型 72
3.2.3 MapReduce WordCount
编程实例 74
3.3 YARN与Hadoop新特性
的认识 86
3.3.1 Hadoop2.0的认识 87
3.3.2 YARN体系结构的认识 88
3.3.3 YARN工作流程的认识 90
习题3 91
上机实验3 最高气温统计案例 93
第4章 数据仓库Hive应用实践 94
4.1 离线大数据处理技术Hive 94
4.1.1 Hive出现背景 94
4.1.2 Hive功能描述 95
4.1.3 Hive基本架构 95
4.1.4 Hive数据存储 97
4.1.5 Hive环境部署 98
4.2 Hive SQL 103
4.2.1 Hive关键概念 103
4.2.2 Hive数据库 104
4.2.3 Hive表DDL和DML 104
4.3 Hive SQL查询语句 109
4.3.1 select语句 110
4.3.2 group by语句 110
4.3.3 join语句 111
4.3.4 Hive内置函数 112
4.3.5 其他技术 113
4.4 数据倾斜 114
4.4.1 产生原因 114
4.4.2 数据倾斜的表现 115
4.4.3 Hive优化 115
4.5 join无关的优化 118
4.5.1 group by引起的
数据倾斜优化 118
4.5.2 count distinct优化 119
4.6 Hive用户自定义函数接口 120
4.6.1 概述 120
4.6.2 UDF概述 120
4.6.3 需求分析 121
4.6.4 UDF使用 121
4.7 综合案例—Olist巴西
电子商务网站数据分析 122
4.7.1 案例背景描述 122
4.7.2 案例数据模型 123
4.7.3 案例任务描述 124
4.7.4 数据采集 125
4.7.5 数据清洗和聚合 125
4.7.6 数据分析 131
4.7.7 案例总结 135
习题4 135
上机实验4 Hive离线数据
统计案例 137
第5章 离线处理辅助系统 138
5.1 Flume日志采集 138
5.1.1 Flume简介 138
5.1.2 Flume日志采集
系统结构 139
5.1.3 Flume安装配置 141
5.1.4 Flume负载均衡 142
5.1.5 综合案例—Flume
多数据源分类采集 155
5.2 Kafka消息订阅 159
5.2.1 Kafka简介 159
5.2.2 Kafka核心组件介绍 160
5.2.3 Kafka工作流程分析 163
5.2.4 安装Kafka 165
5.2.5 Kafka的命令行
使用方式 168
5.3 Sqoop数据迁移 168
5.3.1 Sqoop简介 169
5.3.2 Sqoop的作用 169
5.3.3 Sqoop的安装 170
5.3.4 导入MySQL数据
到HDFS 171
5.3.5 导出HDFS数据
到MySQL 171
5.3.6 案例一 172
5.3.7 案例二 173
习题5 175
上机实验5 离线处理组件的
安装配置 176
第6章 Spark流计算开发实践 178
6.1 Spark概述 178
6.1.1 Spark优点 178
6.1.2 Spark生态系统 180
6.1.3 Spark环境部署 181
6.2 SparkCore 182
6.2.1 RDD概述 183
6.2.2 RDD Transformation 185
6.2.3 RDD Action 187
6.2.4 RDD依赖 189
6.2.5 RDD缓存 190
6.2.6 Spark运行架构 191
6.2.7 Checkpoint 193
6.2.8 基于RDD的
Spark编程 194
6.3 Spark SQL 203
6.3.1 Spark SQL概述 204
6.3.2 Spark SQL编程 205
6.3.3 Spark SQL外部
数据源操作 209
6.4 Spark Streaming 214
6.4.1 Spark Streaming流
处理框架概述 214
6.4.2 Spark Streaming
核心概念 216
6.4.3 Spark Streaming编程 218
6.4.4 Spark Streaming整合
Flume 222
6.4.5 Spark Streaming整合
Kafka的两种方式 222
6.5 综合案例—Spark城市
旅游热力图 225
习题6 229
上机实验6 词频统计 230
第7章 大数据平台项目实战 231
7.1 项目介绍 231
7.2 项目架构设计及技术选型 232
7.3 数据采集 232
7.3.1 准备数据采集
开发环境 233
7.3.2 分析网页数据结构 233
7.4 数据预处理 235
7.4.1 网页数据深度分析 236
7.4.2 把数据上传到
HDFS集群中 240
7.5 数据分析 242
7.5.1 建立数据仓库 243
7.5.2 薪资区间分布分析 245
7.5.3 公司福利标签
词频分析 247
7.5.4 职位技能需求
词频统计 248
7.5.5 城市词频统计 249
7.6 数据导出 250
7.6.1 Sqoop安装 251
7.6.2 Sqoop配置 251
7.6.3 验证Sqoop安装 251
7.6.4 创建MySQL数据仓库 252
7.6.5 使用Sqoop导出数据
至MySQL 252
7.7 数据可视化 256
7.7.1 利用PyMySQL读取
数据到内存中 256
7.7.2 使用PyEcharts画图 257
展开
党的二十大报告指出:“教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑”。职业教育作为教育的一个重要组成部分,其目的是培养应用型人才和具有一定文化水平和专业知识技能的社会主义劳动者和建设者,职业教育侧重于实践技能和实际工作能力的培养。在职业学校中,“大数据工程项目开发实战”是人工智能专业的一门重要课程。
信息社会最重要的特征之一,就是每时每刻都在产生海量的数据。海量的生产数据、处理数据和应用数据,将伴随着物联网、移动互联网、数字家庭、社会化网络等新一代信息技术应用不断增长。未来在智慧城市、电信、金融、卫生、电子商务及电子政务等领域将是大数据技术与应用行业的沃土,对大数据的处理和分析将成为新一代信息技术融合发展的核心支撑。
大数据是由数量巨大、结构复杂、类型众多的数据构成的巨量数据集合。大数据的采集、清洗、存储、查找、传输、分享、分析及可视化等操作都超越了现有关系数据库与数据处理软件的承载能力。Google等一流企业为存储和计算所需海量互联网资源而开发了分布式文件系统GFS、数据库BigTable和算法MapReduce,并公开成果。Google类似技术替代者的开源软件Hadoop,以及建立其基础上的软件逐渐成为大数据云存储与处理技术的主流。
本书为适应大数据开发应用产业对高素质技术技能型人才的职业需求,覆盖了大数据行业典型的工作流程岗位,包括大数据平台与相关工具配置、数据处理与计算、数据分析与可视化展现等。本书综合项目章节选取典型的大数据真实业务,分析应用场景围绕对Hadoop集群的安装部署、管理及MapReduce计算,并包含大数据处理相关算法应用与软件工具运用,从而激发读者对大数据知识和技术的学习兴趣,提升读者的职业素养和提高读者的职业技能,努力为中国大数据应用产业发展储备并输送新鲜血液。
本书理念先进、内容新颖,并以注重实用、提高技能为目的,通过大量的实例和实训内容,帮助读者提高应用技能。本书以虚拟化软件VMware Workstation 15.5 Pro和Linux CentOS 7操作系统为基础搭建Hadoop环境,除了讲解案例开发的基础原理,还在大数据生态组件和案例操作细节、使用交互等方面做出了详细的介绍。
本书由王倩担任主编,侯柏苓担任副主编,参与编写的人员还有王森丰。
由于时间仓促及编者的水平所限,书中难免存在疏漏和不足之处,恳请同行专家与广大读者给予批评指正,以便再版时加以完善。
编 者
展开