《Spark数据计算》课程标准
一、课程说明
课程编码〔38434〕 承担单位〔计算机信息学院〕
制定〔〕 制定日期〔2022年11月16日〕
审核〔专业指导委员会〕 审核日期〔2022年11月20日〕
批准〔二级学院(部)院长〕 批准日期〔2022年11月28日〕
(1)课程性质:
《Spark数据计算》大数据技术与应用专业的专业必修课,Spark是一种快速、通用、可扩展的大数据分析引擎,是基于Scala语言的一种大数据计算框架,主要用于数据分析领域以及数据科学家负责分析数据并建模。
Spark适用于各种各样原先需要多种不同的分布式平台的场景,包括批处理、迭代算法、交互
式查询、流处理。通过在一个统一的框架下支持这些不同的计算,Spark使我们可以简单而低耗地把各种处理流程整合在一起。而这样的组合,在实际的数据分析过程中是很有意义的。不仅如此,Spark的这种特性还大大减轻了原先需要对各种平台分别管理的负担。
(2)课程任务:
本课程以Scala语言为主,具备SQL、统计、预测建模(机器学习)等方面的经验,以及具有一定的使用Python、和Matlab的能力,通过理实一体化的学习途径,帮助学生快速掌握Spark的特点以及用途。
(3)课程衔接:
《Spark数据计算》的先修课程为《大数据应用技术基础》、《概率论与数理统计》、《Python基础》和《网络数据库》,上述内容建议作为前续课程开设,可为学生奠定必要的知识和能力基础,以便有效学习本课程内容。
二、学习目标
通过本门课程的学习,使学生知道Spark的概念,了解Spark的特点和用途,掌握Spark集的安装以及如何执行Spark程序;理解并掌握Sparkcore的应用以及它的内核解析和调优解析;知道SparkSQL是Spark用来处理结构化数据的一个模块,它提供了一个编程抽象叫做DataFrame并且作为分布式SQL查询引擎的作用。
(1)知识目标
知道《Spark数据计算》这门课程的性质、地位和作用以及用途;
掌握Spark集的安装以及如何执行Spark程序;
理解并掌握Sparkcore的应用以及它的内核解析和调优解析;
掌握SparkSQL的DataFrame接口支持多种数据源的操作;
理解Spark调优的基本原则。
(2)能力目标
力求在简洁的基础上使学生能从整体上了解和掌握Saprk数据计算的数据分析和计算框架,培养学生自学能力以及获取计算机新知识、新技术的能力,使学生能够在实际工作中、后续学科的学习能灵活、自如地应用数据可视化技术。
(3)素质目标
培养对新知识、新技能的学习能力与创新能力;
锻炼学生的自学能力、理解能力和表达能力;
培养学生具有团队合作的精神;
培养学生善于沟通、团结协作、以人为善的处事能力;
引导学生树立科学的世界观,激发学生的求知热情、探索精神、创新欲望以及敢于向旧观念挑战的精神。
三、课程设计
本课程根据能力培养目标的要求,确定学习目标及学习任务内容;具体的学习内容和学时分配如表1。
表1学习领域的内容与学时分配
学习单元名称 | 学习内容 | 实践学时 | 理论学时 | 合计学时 |
单元1:Scala语言 | 1.1Scala安装与配置 | 2 | 1 | 22 |
1.2Scala基础 | 2 | 1 | ||
1.3控制结构和函数 | 2 | 1 | ||
1.4数据结构 | 2 | 1 | ||
1.5模式匹配 | 4 | 2 | ||
1.6高阶函数 | 2 | 2 | ||
单元2:Spark基础解析 | 2.1Spark概述 | 0 | 1 | 8 |
2.2Spark集安装 | 2 | 2 | ||
2.3执行Spark程序 | 2 | 1 | ||
单元3:SparkCore应该解析 | 3.1RDD概念 | 0 | 1 | 16 |
3.2RDD编程 | 2 | 1 | ||
3.3键值对RDD | 2 | 1 | ||
3.4数据的读取与保存主要方式 | 2 | 1 | ||
3.5RDD编程进阶 | 2 | 1 | ||
3.6SparkCore实例练习 | 2 | 1 | ||
单元4:Spark SQL数据源 | 4.1SparkSQL概述 | 0 | 1 | 14 |
4.2执行SparkSQL查询 | 2 | 1 | ||
4.3SparkSQL解析 | 2 | 0 | ||
4.4SparkSQL数据源 | 2 | 0 | ||
4.5JDBC/ODBC服务器 | 1 | 1 | ||
4.6运行SparkSQLCLI | 2 | 1 | ||
4.7SparkSQL的运行原理 | 0 | 1 | ||
单元5:SparkStreaming应用解析 | 5.1SparkStreaming概述 | 0 | 1 | 16 |
5.2运行SparkStreaming | 2 | 2 | ||
5.3架构与抽象 | 2 | 1 | ||
scala python5.4SparkStreaming解析 | 2 | 2 | ||
5.5高级解析 | 2 | 2 | ||
单元6:SparkGraphX应用解析 | 6.1SparkGraphX概述 | 0 | 1 | 12 |
6.2SparkGraphX解析 | 2 | 1 | ||
6.3图算法 | 4 | 4 | ||
单元7:Spark内核解析 | 7.1Spark整体概述 | 0 | 1 | 32 |
7.2脚本解析 | 2 | 2 | ||
7.3Spark通信结构 | 2 | 2 | ||
7.4Master节点启动 | 2 | 2 | ||
7.5Work节点启动 | 2 | 2 | ||
7.6Client启动流程 | 2 | 2 | ||
7.7Driver和DriverRunner | 2 | 2 | ||
7.8SparkContext解析 | 2 | 2 | ||
7.9Job提交和Task的拆分 | 2 | 1 | ||
四、教学设计
指对某一个具体学习情境的实施设计。根据课程目标和涵盖的工作任务要求,按学习领域(或任务或工作项目等)顺序描述课程内容及具体要求,说明学生获得的知识、培养的能力与素质。
表2学习单元设计
学习单元 | Scala语言 | 学时 | 22 | |
学习目标 | ||||
能力目标 | 知识目标 | 素质目标 | ||
1.通过本单元的学习使学生掌握Scala语言并会应用该语言解决Spark数据计算; 2.提高学生运用所学知识的能力。 | 1.了解Scala语言; 2.会Scala的安装与配置; 3.掌握Scala基础; 4.理解控制结构和函数; 5.理解并会应用数组和元组; 6.掌握Scala语言的模式匹配; 7.理解并会用高阶函数。 | 1.通过本单元内容的学习帮助学生树立良好的时间观念; 2.通过本单元学习提高学生职业道德和职业素养。 | ||
学习内容 | ||||
内容名称 | 主要知识点 | |||
Scala语言 | 1.Scala语言概述; 2.Scala安装与配置; 3.Scala基础; 4.控制结构和函数; 5.数组和元组; 6.Scala语言的模式匹配; 7.高阶函数 | |||
教学方法设计 | 课堂教学以合作学习为主、分小组讨论为主,借助多媒体声像演示;上机试验是本课程的重要教学环节,通过上机动手操作使理论应用于实践中。 | |||
学习单元 | Spark基础 | 学时 | 8 | |
学习目标 | ||||
能力目标 | 知识目标 | 素质目标 | ||
1.通过本单元的学习培养学生的实际动手能力和独立思考的能力; 2.通过本单元内容的学习能够利用所学知识完成后继课程的学习。 | 1.了解Spark的特点和用户以及用途; 2.会Spark集安装; 3.掌握Spark的程序运行及应用提交; 4.会在IDEA中编写WordCount案例; 5.知道Spark的核心概念。 | 1.通过本单元的学习使学生初步掌握科学的学习方法,不断地扩展知识面; 2.通过本单元的学习培养学生注重团队合作精神。 | ||
学习内容 | ||||
内容名称 | 主要知识点 | |||
Spark基础 | 1.Spark的特点和用户以及用途; 2.Spark集安装; 3.Spark的程序运行及应用提交; 4.在IDEA中编写WordCount案例; 5.Spark的核心概念。 | |||
教学方法设计 | 采用任务驱动教学方式,激发学生学习兴趣,充分发挥学生的主观能动性。上机试验是本课程的重要教学环节,通过上机动手操作使理论应用于实践中。 | |||
学习单元 | SparkCore应用解析 | 学时 | 16 | |
学习目标 | ||||
能力目标 | 知识目标 | 素质目标 | ||
1.通过本单元的学习,使学生能用其理论和方法解决一些实际问题; 2.会用RDD编程,掌握数据读取,提高分析与解决问题能力。 | 1.了解RDD概念; 2.掌握RDD编程; 3.掌握键值对RDD转换操作; 4.知道并掌握数据的读取与保存主要方式; 5.知道RDD编程进阶; 6.掌握SparkCore的几个实例。 | 1.通过本单元的学习培养学生良好的思想品德、心理素质; 2通过本单元的学习培养学生追求真理、严谨求实的科学态度和刻苦钻研的作风。 | ||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论