Spark 是当前最流行的开源大数据内存计算框架,采用Scala语言实现,由UC 伯克利大学AMPLab实验室开发(2009)并于2010年开源,在2014年成为Apache基金会的顶级项目。2014年至2015年,Spark 经历了高速发展,Databricks 2015 Spark调查报告显示[1]:2014年9月至2015年9月,已经有超过600个Spark源码贡献者,而在此之前的12个月人数只有315 个,Spark超越Hadoop,无可争议地成为大数据领域内最活跃的开源项目。除此之外,已经有超过200个公司为Spark奉献过源代码,使 Spark社区成为迄今为止开发人员参与最多的社区。本 议题的目标是引导想从事大数据处理的IT人员进行Spark入门学习,主要内容包括Scala语言核心语法、Spark集群搭建及开发环境搭建、 Spark编程模型、Spark SQL、Spark Streaming、Spark MLlib及Spark Graphx。通过本议题,能够应用Scala进行Spark应用程序开发、掌握Spark的基本运行原理及编程模型,能够熟悉运用Spark SQL进行大数据仓库的开发,掌握Spark流式计算、Spark机器学习及图计算的原理。培训嘉宾:周志湖,绿城集团数据中心数据库工程师/管理员。嘉宾介绍:电子科技大学计算机软件与理论硕士研究生,研究方向为计算机视觉、机器学习,毕业后先后供职于宁波银行、中共浙江省委党校,目前就职于绿城集团,担任数据中心平台架构师、数据开发主管。Scala语言、Hadoop及Spark大数据处理技术爱好者。议题提纲(已完成到紫色章节,入口稍后会链接到每个议题,预计发布时间12.14)Scala篇1. Scala基本数据类型及程序控制结构。讲解Scala基本数据类型,对其中的程序控制结构特别是for循环的使用进行详细介绍。
2. Scala集合操作。对Array、List、Map等重要数据结构的操作进行介绍。
3. Scala函数。内容包括函数字面量、函数闭包、高阶函数、偏函数及集合常见高阶函数等。
4. Scala 类和对象。介绍Scala面向对象编程,包括类的定义、伴生对象、伴生类、应用程序对象、类的继承等。
5. Scala 模式匹配。内容包括模式匹配的作用、模式匹配的类型、模式匹配在for循环、正则表达式中的应用、模式匹配与Case Class。
6. Scala类型参数。对Scala中的类型变量界定、协变与逆变等进行介绍。
7. Scala 隐式转换。内容包括隐式转换函数、隐式类、隐式对象、视图界定及上正文界定中的隐式转换等。
8. Scala高级类型。对Scala中的单例类型、抽象类型等进行介绍。Spark篇1.Spark集群部署及开发环境搭建。内容包括Hadoop集群、Spark集群搭建,Intellij IDEA Spark开发环境搭建, Spark Shell的使用等。
2.Spark 运行原理。内容包括spark脚本文件解析、Spark 几种不同运行方式、RDD原理、宽依赖与窄依赖、Spark 任务调度等。
3.Spark 编程模型,介绍Spark编程模型、对常用的transformation及action操作进行介绍。
4.Spark SQL与DataFrame,介绍Spark SQL 及DataFrame的运行原理及使用方法,利用案例介绍Spark SQL的使用。
5.Spark 流式计算。介绍DStream、Spark Streaming原理,并通过几个案例说明其使用。
6.Spark 机器学习。介绍Spark MLlib架构,通过K-Mean算法、随机森林等算法说明Spark MLlib的使用。
7.Spark Graphx。介绍Spark图计算及相关数据结构,用PageRank算法说明其使用。进阶课程——TBD ……