大数据技术精品系列教材

Spark大数据技术与应用

“十三五”职业教育国家规划教材
分享 推荐 9 收藏 163 阅读 16.6K
肖芳 , 张良均 (主编) 汪作文 , 胡大威 , 樊哲 (副主编) 978-7-115-46488-0

关于本书的内容有任何问题,请联系 初美呈

欢迎加入人邮大数据教师服务群:669819871
本书采用了以任务为导向的教学模式,按照解决实际任务的工作流程路线,逐步展开介绍相关的理论知识点,推导生成可行的解决方案,最后落实在任务实现环节。
全书大部分章节紧扣任务需求展开,不堆积知识点,着重于解决问题时思路的启发与方案的实施。通过从任务需求到实现这一完整工作流程的体验,帮助读者真正理解与消化Spark大数据技术。
书中案例全部源于企业真实项目,可操作性强,引导读者融会贯通,并提供源代码等相关学习资源,帮助读者快速掌握大数据相关技能。

内容摘要

本书以任务为导向,较为全面地介绍了Spark大数据技术的相关知识。全书共9章,具体内容包括Spark概述;Scala基础;Spark编程;Spark编程进阶;Spark SQL:结构化数据文件处理;Spark Streaming:实时计算框架;Spark GraphX:图计算框架;Spark MLlib:功能强大的算法库;项目案例:餐饮平台菜品智能推荐。本书的大部分章节都包含了实训与课后习题,通过练习和操作实践,帮助读者巩固所学的内容。

目录

第 1章 Spark概述 1
任务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

读者评论

  • 为什么源码不能下载,报

    抱歉

    习题答案资源只提供给认证教师用户,您还未经过教师认证,不能下载习题答案资源。

    这个错误,是链接地址放错了把

    shengwen发表于 2018/7/17 18:14:51
    • 您好,这本书除此资源外,您均可下载学习。此资源目前仅限认证教师下载。

      人邮教育专员发表于 2018/7/18 12:24:42
  • 大数据系列书不错,建议抓紧出全,方便我们开设课程选顶教材

    zouzi428发表于 2018/6/14 19:09:54
    • 您好,谢谢您对于我们图书的肯定,系列图书正在抓紧筹备中,也请您后续关注下。

      人邮教育专员发表于 2018/6/15 8:22:56

我要评论

作者介绍

张良均,高级信息系统项目管理师,泰迪杯全国大学生数据挖掘竞赛(www.tipdm.org)发起人。华南师范大学、广东工业大学兼职教授,广东省工业与应用数学学会理事。兼有大型高科技企业和高校的工作经历,主要从事大数据挖掘及其应用的策划、研发及咨询培训。全国计算机技术与软件专业技术资格(水平)考试继续教育和CDA数据分析师培训讲师。发表数据挖掘相关论文数20余篇,已取得国家发明专利12项,主编《神经网络实用教程》《数据挖掘:实用案例分析》《Python数据分析与挖掘》等多本畅销图书,主持并完成科技项目9项。获得SAS、SPSS数据挖掘认证及Hadoop开发工程师证书,具有电力、电信、银行、制造企业、电子商务和电子政务的项目经验和行业背景。

同系列书

  • Power BI数据分析与可视化(第2版)(微课版)

    陈翠松 张良均 潘强 曾确令 张尚佳

    本书以项目为导向,以任务为驱动,全面地介绍数据分析与可视化的流程,以及 Power BI 数据分析与可视化的应...

    ¥49.80
  • 大数据导论

    林涛 张良均 李微 葛苏慧 胡晓东

    本书以大数据处理技术涉及的主要流程为主线,深入浅出地介绍大数据相关的基础知识。本书条理清晰、重点突出,内容循序...

    ¥49.80
  • Spark大数据分析实务

    郑浩森 张荣 张良均 杨树例 陈国珍

    本书以Spark大数据分析的常用技术与真实项目相结合的方式,深入浅出地介绍Spark大数据分析的重要内容。全书...

    ¥59.80
  • PySpark大数据分析与应用

    戴刚 张良均 桂友武 李晓英 李晓丹

    本书以Python作为开发语言,系统介绍PySpark开发环境搭建流程及基于PySpark进行大数据分析的 相...

    ¥69.80
  • Hive大数据存储与处理

    何煌 张良均 孙一铭 胡健 陈翠松

    本书以广电大数据案例为主线,系统介绍数据仓库Hive存储和初步处理方法的相关知识。本书条理清楚、重点突出,内容...

    ¥59.80

购买本书用户

相关图书

  • ECharts数据可视化

    本书是一本采用任务驱动式体例编写的ECharts数据可视化技术教材,以通俗易懂的语言和丰富实用的任务,帮助读者...

    ¥59.80
  • 区块链技术及应用(微课版)

    郝兴伟 梁志勇

    为了适应Web 3.0时代下区块链技术发展的新趋势,同时培养高素质的区块链技术人才,编者精选了区块链的相关内容...

    ¥69.80
  • Python编程基础(项目式微课版)

    王健

    本书根据高等院校应用技术型人才培养的目标编写,适合案例学习和模块化教学相结合的教学方式。本书以真实企业开发案例...

    ¥56.00
  • 人工智能云平台部署与开发(微课版)

    易海博

    本书涵盖云计算和人工智能两大领域的内容,着重讲解人工智能应用在云平台上的部署与开发。全书共7个项目,分别介绍云...

    ¥49.80
  • 云计算导论(微课版)

    荆于勤 石慧霞 吴锡微 龚秀波 姚骏屏

    本书是一本全面介绍云计算基本概念、常用技术与应用的项目化教材。本书分为3篇,分别是初识云计算、体验云计算和业务...

    ¥59.80
单击此处加入人邮社数据科学教师服务群(大数据&人工智能&区块链),共同探讨交流
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部