- ISBN:9787115464880
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:32开
- 页数:272
- 出版时间:2018-02-01
- 条形码:9787115464880 ; 978-7-115-46488-0
本书特色
本书以任务为导向,较为全面地介绍了Spark大数据技术的相关知识。全书共9章,具体内容包括Spark概述;Scala基础;Spark编程;Spark编程进阶;Spark SQL:结构化数据文件处理;Spark Streaming:实时计算框架;Spark GraphX:图计算框架;Spark MLlib:功能强大的算法库;项目案例:餐饮平台菜品智能推荐。本书的大部分章节都包含了实训与课后习题,通过练习和操作实践,帮助读者巩固所学的内容。
内容简介
资 深大数据专家张良均领衔畅销书作者团队,教育部长江学者特聘教授、国家杰出青年基金获得者、IEEE Fellow、华南理工大学计算机与工程学院院长张军倾力推荐。 本书采用了以任务为导向的教学模式,按照解决实际任务的工作流程路线,逐步展开介绍相关的理论知识点,推导生成可行的解决方案,后落实在任务实现环节。 全书大部分章节紧扣任务需求展开,不堆积知识点,着重于解决问题时思路的启发与方案的实施。通过从任务需求到实现这一完整工作流程的体验,帮助读者真正理解与消化Hadoop大数据技术。 书中案例全部源于企业真实项目,可操作性强,引导读者融会贯通,并提供源代码等相关学习资源,帮助读者快速掌握大数据相关技能。
目录
任务1.1 认识Spark 1
1.1.1 Spark的发展 1
1.1.2 Spark的特点 2
1.1.3 Spark生态圈 4
1.1.4 Spark的应用场景 5
任务1.2 搭建Spark环境 5
1.2.1 搭建单机版环境 6
1.2.2 搭建单机伪分布式环境 6
1.2.3 搭建完全分布式环境 7
任务1.3 了解Spark运行架构与原理 10
1.3.1 Spark集群架构 11
1.3.2 Spark作业运行流程 11
1.3.3 Spark核心数据集RDD 15
1.3.4 Spark核心原理 17
小结 19
第 2章 Scala基础 20
任务2.1 Scala的简介与安装 21
2.1.1 Scala简介 21
2.1.2 Scala特性 21
2.1.3 Scala的环境设置及安装 21
2.1.4 运行Scala 23
任务2.2 定义函数识别号码类型 24
2.2.1 数据类型 24
2.2.2 常量和变量 25
2.2.3 表达式 26
2.2.4 数组 27
2.2.5 函数 29
2.2.6 任务实现 31
任务2.3 统计广州号码段数量 32
2.3.1 if判断 32
2.3.2 循环 33
2.3.3 任务实现 34
任务2.4 根据归属地对手机号码段分组 34
2.4.1 List 35
2.4.2 Set 36
2.4.3 Map 37
2.4.4 元组 38
2.4.5 函数组合器 38
2.4.6 任务实现 39
任务2.5 编写手机号码归属地信息查询程序 40
2.5.1 Scala类 40
2.5.2 Scala object 42
2.5.3 Scala模式匹配 42
2.5.4 Scala读取文件 44
2.5.5 任务实现 44
小结 45
实训 45
实训1 编写函数过滤文本中的回文单词 45
实训2 使用Scala编程输出杨辉三角 46
课后习题 46
第3章 Spark编程 48
任务3.1 以学生成绩数据创建RDD 49
3.1.1 从内存中已有数据创建RDD 50
3.1.2 从外部存储创建RDD 51
3.1.3 任务实现 52
任务3.2 查询学生成绩表中的前5名 52
3.2.1 使用map转换数据 52
3.2.2 使用sortBy()排序 53
3.2.3 使用collect()查询 53
3.2.4 使用flatMap转换数据 54
3.2.5 使用take()方式查询某几个值 54
3.2.6 任务实现 55
任务3.3 输出单科成绩为100分的学生ID 55
3.3.1 使用union()合并多个RDD 56
3.3.2 使用filter()进行过滤 56
3.3.3 使用distinct()进行去重 56
3.3.4 简单的集合操作 57
3.3.5 任务实现 58
任务3.4 输出每位学生所有科目的总成绩 58
3.4.1 键值对RDD简介 59
3.4.2 创建键值对RDD 59
3.4.3 转换操作keys与values 59
3.4.4 转换操作reduceByKey() 60
3.4.5 转换操作groupByKey() 60
3.4.6 任务实现 60
任务3.5 输出每位学生的平均成绩 61
3.5.1 使用join()连接两个RDD 61
3.5.2 使用zip组合两个RDD 63
3.5.3 使用combineByKey合并相同键的值 63
3.5.4 使用lookup查找指 定键的值 64
3.5.5 任务实现 64
任务3.6 将汇总后的学生成绩存储为文本文件 65
3.6.1 JSON文件的读取与存储 65
3.6.2 CSV文件的读取与存储 67
3.6.3 SquenceFile的读取与存储 69
3.6.4 文本文件的读取与存储 70
3.6.5 任务实现 71
小结 72
实训 72
实训1 统计文本中性别为“男”的用户数 73
实训2 单词计数 73
课后习题 74
第4章 Spark编程进阶 76
任务4.1 搭建开发环境 77
4.1.1 下载与安装IntelliJ IDEA 77
4.1.2 Scala插件安装与使用 79
4.1.3 配置Spark运行环境 84
4.1.4 运行Spark程序 85
任务4.2 使用移动平均预测股票涨跌 92
4.2.1 持久化(缓存) 93
4.2.2 数据分区 94
4.2.3 计算价格波动幅度 98
4.2.4 任务实现 100
小结 103
实训 103
实训 竞赛网站访问日志分析 104
课后习题 104
第5章 Spark SQL:结构化数据文件处理 107
任务5.1 认识Spark SQL 108
5.1.1 Spark SQL简介 108
5.1.2 Spark SQL CLI配置 109
5.1.3 Spark SQL与Shell交互 110
任务5.2 掌握DataFrame基础操作 111
5.2.1 创建DataFrame对象 111
5.2.2 DataFrame查看数据 114
5.2.3 DataFrame查询操作 117
5.2.4 DataFrame输出操作 123
任务5.3 探索分析法律服务网站数据 125
5.3.1 获取数据 125
5.3.2 网页类型分析 126
5.3.3 点击次数分析 131
5.3.4 网页排名分析 133
小结 135
实训 135
实训1 统计分析航空公司客户数据的空值以及异常值 135
实训2 统计分析某公司每年的产品销售量及销售额 137
课后习题 139
第6章 Spark Streaming:实时计算框架 141
任务6.1 初探Spark Streaming 142
6.1.1 Spark Streaming概述 142
6.1.2 Spark Streaming运行原理 142
6.1.3 初步使用Spark Streaming 143
任务6.2 掌握DStream编程模型 145
6.2.1 DStream简介 146
6.2.2 DStream转换操作 146
6.2.3 DStream窗口操作 148
6.2.4 DStream输出操作 151
任务6.3 Spark Streaming实时更新热门博文 155
6.3.1 Spark Streaming输入数据源 155
6.3.2 Spark Streaming计算网页热度 158
6.3.3 网页热度输出 158
6.3.4 任务实现 159
小结 161
实训 161
实训1 过滤打印包含单词error的记录 162
实训2 实时过滤歌曲播放次数超过100次的记录并存储在HDFS上 162
课后习题 162
第7章 Spark GraphX:图计算框架 165
任务7.1 认识Spark GraphX 166
7.1.1 图的基本概念 166
7.1.2 图计算的应用 167
7.1.3 GraphX的基础概念 168
7.1.4 GraphX的发展 168
任务7.2 了解GraphX常用API 169
7.2.1 图的创建与存储 169
7.2.2 数据查询与数据转换 174
7.2.3 结构转换与关联聚合 180
任务7.3 构建信任网络并找出目标用户 187
7.3.1 构建网站信任网络 188
7.3.2 找出需要支付稿酬的用户 188
7.3.3 找出进入热门榜的用户 189
小结 191
实训 191
实训1 使用PageRank算法完成网页排名 191
实训2 利用二度关系完成商品推荐 192
课后习题 194
第8章 Spark MLlib:功能强大的算法库 196
任务8.1 了解MLlib算法库 197
8.1.1 机器学习简介 197
8.1.2 MLlib介绍 198
任务8.2 以Logistic回归实现用户分类 212
8.2.1 分析思路 212
8.2.2 数据处理 213
8.2.3 MLlib实现Logistic回归 215
8.2.4 任务实现 217
小结 221
实训 221
实训1 通过KMeans定位商圈 221
实训2 朴素贝叶斯进行文本分类 222
课后习题 223
第9章 项目案例:餐饮平台菜品智能推荐 226
任务9.1 推荐方案设计 227
9.1.1 用户数据分析 227
9.1.2 常用推荐算法 229
9.1.3 推荐流程设计 231
任务9.2 数据预处理 232
9.2.1 原始数据探索分析 233
9.2.2 异常数据处理 237
9.2.3 数据变换处理 237
9.2.4 数据集分割 239
任务9.3 建立推荐模型 240
9.3.1 以基于用户的协同过滤算法建模 240
9.3.2 以基于物品的协同过滤算法建模 243
9.3.3 以基于Spark ALS的协同过滤算法建立模型 246
9.3.4 推荐模型的评测 251
任务9.4 使用模型进行菜品推荐 262
9.4.1 对某用户推荐10道新菜品 262
9.4.2 对所有用户进行新菜品推荐 267
小结 272
作者简介
张良均,高级信息系统项目管理师,泰迪杯全国大学生数据挖掘竞赛(www.tipdm.org)发起人。华南师范大学、广东工业大学兼职教授,广东省工业与应用数学学会理事。兼有大型高科技企业和高校的工作经历,主要从事大数据挖掘及其应用的策划、研发及咨询培训。全国计算机技术与软件专业技术资格(水平)考试继续教育和CDA数据分析师培训讲师。发表数据挖掘相关论文数二十余篇,已取得国家发明专利12项,主编《Hadoop大数据分析与挖掘实战》《Python数据分析与挖掘实战》《R语言数据分析与挖掘实战》等多本畅销图书,主持并完成科技项目9项。获得SAS、SPSS数据挖掘认证及Hadoop开发工程师证书,具有电力、电信、银行、制造企业、电子商务和电子政务的项目经验和行业背景。
-
全图解零基础word excel ppt 应用教程
¥15.6¥48.0 -
有限与无限的游戏:一个哲学家眼中的竞技世界
¥37.4¥68.0 -
硅谷之火-人与计算机的未来
¥12.7¥39.8 -
情感计算
¥66.8¥89.0 -
大模型RAG实战 RAG原理、应用与系统构建
¥69.3¥99.0 -
LINUX企业运维实战(REDIS+ZABBIX+NGINX+PROMETHEUS+GRAFANA+LNMP)
¥48.3¥69.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥62.9¥89.8 -
LINUX实战——从入门到精通
¥48.3¥69.0 -
UNIX环境高级编程(第3版)
¥164.9¥229.0 -
剪映AI
¥52.8¥88.0 -
快速部署大模型:LLM策略与实践(基于ChatGPT等大语言模型)
¥56.9¥79.0 -
数据驱动的工业人工智能:建模方法与应用
¥68.3¥99.0 -
深度学习高手笔记 卷2:经典应用
¥90.9¥129.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UG NX 12.0数控编程
¥24.8¥45.0 -
MATLAB计算机视觉与深度学习实战(第2版)
¥90.9¥128.0 -
UN NX 12.0多轴数控编程案例教程
¥24.3¥38.0 -
微机组装与系统维护技术教程(第二版)
¥37.8¥43.0 -
Go 语言运维开发 : Kubernetes 项目实战
¥38.7¥79.0 -
明解C语言:实践篇
¥62.9¥89.8