课程教学 大纲编号:课程教学大纲课程名称:Spark大数据技术与应用课程学分:执笔人:审订人:修(制)订日期:4Spark SQL 实验4设计性5SparkStreaming WordCount 实验2设计性6基于MLlib电影推荐系统实验4设计性7出租车数据聚类分析实验4设计性8基于GraphFrames的网贝排名实验4设计性三、实验说明课程总学分实验学时数32实验项目数课程性质通识基础口学科•基础口专业选修・集中实践环节口实验类别课程内实验口独立设课实验■集中综合实验口考核方式日常考核・操作技能考核■卷面考核口提交实验结果■面试口适用专业与年级:大数据科学与技术,计算机科学与技术,软件工程实验教材及参考书:注:实践教学类型一般分为演示性、验证性、综合性、设计性、研究创新性6种七、课程实施计划序 号教学 方式教学内容(标注重点△,难点★)作业 要求教学目标1课堂 讲课第1章Spark简介与运行原理1.1 Spark是什么1.1.1 Spark的版本发展历程A 1.1.2 Spark与Hadoop的区别与联系A 1.1.3 Spark的应用场景1.2 Spark的生态系统1.2.1 Spark Core1.2.2 Spark Streaming1.2.3 Spark SQL 与 DataFrame1.2.4 GraphX1.3 Spark的构架与原理A 1.3.1 Spark架构设计A 1.3.2 Spark作业运行流程△ 1.3.3 Spark核心原理1.4 Spark 2.X 新特性1.4.1 精简的API1.4.2 Spark作为编译器1.4.3 智能化程度1.5 小结课后了解 Spark 在 行业中的 应用有哪 些了 解 Spark 的发展历 程,了解 Spark生态 系统以及 架构原理, 了解Spark2.x 版本与之 前版本的 区别。
2课堂 讲课第2章Spark的环境搭建2.1 环境搭建前的准备2.2 Spark相关配置2.2.1 安装 SSH2.2.2 SSH免密码登录2.2.3 修改访问权限A 2.2.4 修改 profile 文件修改Spark配置文件2.3 Spark集群启动与关闭★2.4 Spark应用提交到集群△ 2.5 Spark web监控页面2.6小结在电脑中 安装部署 伪分布式 Spark 集 群了解Spark集群 环境搭建 的整个过 程c3课堂 讲课第3章 使用Python开发Spark应用3.1 Python编程语言3.1.1 Python语言的特点3.1.2 Python与人工智能△ 3.1.3 PySpark 是什么3.2 PySpark启动与日志设置3.2.1 PySpark的启动方式3.2.2 日志输出内容控制3.3 PySpark开发包的安装使用pip命令安装使用离线包安装3.4 PyCharm 编写 Spark 应用△ 3.4.1 PyCharm安装与基本配置3.4.2 Spark应用编写3.5 小结了解Python 编 程语言的 特点和基 本语法,配 置 Spark 的 Python 编程环境熟悉使用 Python 开 发 Spark 的环境搭 建。
4课堂 讲课第 4 章 Spark RDD4.1 弹性分布式数据集RDDA4.1.1 RDD的定义△ 4.1.2 RDD的特点A4.1.3 RDD 的仓II建4.1.4 RDD的操作★4.2 transform 算子4.2.1 map 转换4.2.2 flatMap 转换4.2.3 filter 转换4.2.4 union 转换4.2.5 intersection 转换4.2.6 distinct 转换4.2.7 sortBy 转换4.2.8 mapPartitions 转换4.2.9 mapPartitionsWithlndex 转换4.2.10 partitionBy 转换★4.3 action 算子4.3.1 reduce ⑴动作课后在官 网中了解 RDD的其 他算子, 并对常见 的算子进 行练习了解Spark 中 RDD的定 义、特点 熟悉RDD 常见算子 的使用以 及依赖关 系和持久 化4.3.2 collect动作4.3.3 count动作4.3.4 take( num)动作4.3.5 first动作4.3.6 top(num)动作4.3.7 saveAsTextFile 动作4.3.8 foreach( f)动作4.3.9 foreachPartition(f)动作★4.4 RDD Key-value 转换算子4.4.1 mapValues(f)操作4.4.2 flatMapValues(f)操作4.4.3 reduceByKey 操作4.4.4 groupByKey 操作4.4.5 sortByKey 操作4.4.6 keys。
操作4.4.7 values操作4.4.8 join 操作4.4.9 leftOuterJoin 操作4.4.10 rightOuterJoin 操作★4.5 RDD key-value 动作运算4.5.1 collectAsMapO 操作4.5.2 countByKey操作4.6共享变量4.6.1 累加器 accumulator4.6.2 广播变量 Broadcast★4.7依赖关系4.7.1 血统 Lineage4.7.2 宽依赖与窄依赖4.7.3 shuffle4.7.4 DAG的生成4.8 Spark RDD的持久化★持久化使用方法持久化存储等级★4.8.3 检查点 checkpoint4.9小节5课堂 讲课第 5 章 Data Frame && Spark SQL5.1 DataFrame5.1.1 DataFrame 介绍A 5.1.2 DataFrame 创建5.2 Spark SQL5.2.1 Spark SQL 介绍A 5.2.2 Spark SQL的执行原理A 5.2.3 Spark SQL 的仓1J建A 5.3 Spark SQL、DataFrame 的常用操作5.3.1 字段计算5.3.2 条件查询5.3.3 数据排序5.3.4 数据去重5.3.5 数据分组统计5.3.6 数据连接5.3.7 数据绘图5.4小结了解如何 连接Mysql 数 据库进行 查询统 计。
熟 悉 SparkSQL> SparkData frame 使 用,了解 SparkSQL 与 SparkData Frame 的 区别与联 系6课堂 讲课第 6 章 Spark Streaming6.1 Spark Streaming 介绍6.1.1 SparkStreaming 是什么△ 6.1.2 SparkStreaming 工作原理A 6.2流数据加载6.2.1 初始化 StreamingContext6.2.2 Discretized Streams 离散化流6.2.3 SparkStreaming 数据源△ 6.3 DStreams输出操作A 6.4 DStream转换操作6.4.1 map 转换6.4.2 flatMap 转换6.4.3 filter 转换6.4.4 reduceByKey 转换6.4.5 count 转换6.4.6 updateStateByKey 转换了解socket 、 TCP/IP 、 UDP协议, 查询流计 算使用的 场景熟悉SparkStre aming的定 义,数据的 加载、转换 输出等操 作的使用其他转换6.5 DataFrame 与 SQL 操作A 6.6 实时 WordCount 实验6.7小结7课堂 讲课第7章Spark机器学习库7.1 Spark机器学习库机器学习简介△ 7.1.2 Spark机器学习库的构成7.2 准备数据7.2.1 获取数据7.2.2 数据预处理723数据探索7.3 使用MLib机器学习库7.3.1 搭建环境7.3.2 加载数据7.3.3 探索数据7.3.4 预测婴儿生存机会7.4 使用ML机器学习库7.4.1 转换器、评估器和管道7.4.2 预测婴儿生存机会7.5 小结了解机器 学习的应 用领域有 哪些,尝 试使用MLlib 实 现对出租 车数据进 行 k-means 聚类。
了解机器 学习的定 义以及机 器学习的 一般流程, 熟悉SparkMLli b的使用了解SparkMLLi b和ML包 之间的区 别与联系8课堂 讲课第8章 GraphFrames图计算A 8.1 图8.1.1 度(degree)8.1.2 路径(path)和环(cycle)8.1.3 二分图(bipartite graph)8.1.4 多重图(multigraph)和伪图 [pseudograph)★8.2 GraphFrames 介绍8.2.1 应用背景8.2.2 GraphFrames 库8.2.3 使用 GraphFrames 库8.3 GraphFrame 编程模型8.3.1 GraphFrame 实例了解图的 定义、类 型,了解 图在各个 领域的应 用了解图的 定义和分 类,熟悉 GraphFram es的编程 模型,并可 以利用 GraphFram es实现常 见图算法 应用8.3.2 视图和图操作8.3.3 模式发现(Modiffinding)8.3.4 图加载和保存8.4 GraphFrames实现的算法8.4.1 广度优先搜索(BFS,Breadth・first search)8.4.2 最短路径(Shortest Path)8.4.3 三角形计数(Triangle Counting)8.4.4 连通分量(Connected Components)8.4.5 标签传播算法(LPAJabel propagation algorithm)8.4.6 PageRank 算法△ 8.5 基于GraphFrames的网页排名8.5.1 准备数据集8.5.2 创建 GraphFrame8.5.3 使用PageRank进行网页排名8.6小结9课堂 讲课第9章出租车数据分析9.1 数据处理9.2 数据分析9.2.1 创建 DataFrameA 9.2.2 KMeans聚类分析9.3 百度地图可视化9.3.1 申请地图key9.3.2 聚类结果可视化9.4 小结申请百度 地图API。
通过出租 车数据分 析让学生 了解整个 大数据分 析的流程 和利用 Spark 解 决实际问 题10课堂 讲课第10章图书推荐系统10.1 Django 简介10.1.1 Django 是什么1。