编辑: jingluoshutong 2019-07-03
《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 ziyulin@xmu.

edu.cn 厦门大学计算机科学系 2017年版 林子雨 厦门大学计算机科学系 E-mail: [email protected] 主页:http://www.cs.xmu.edu.cn/linziyu 第3章Spark的设计与运行原理 (PPT版本号:2017年春季学期) 厦门大学研究生课程 《大数据处理技术Spark》 温馨提示:编辑幻灯片母版,可以修改每页PPT的厦大校徽和底部文字 扫一扫访问班级主页 http://dblab.xmu.edu.cn/post/7659/ 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 提纲 ? 3.1 Spark概述 ? 3.2 Spark生态系统 ? 3.3 Spark运行架构 ? 3.4 Spark的部署和应用方式 免费在线教程:http://dblab.xmu.edu.cn/blog/spark/ 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1 Spark概述 3.1.1 Spark简介 3.1.2 Scala简介 3.1.3 Spark与Hadoop的比较 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.1 Spark简介 ?Spark最初由美国加州伯克利大学(UCBerkeley)的AMP 实验室于2009年开发,是基于内存计算的大数据并行计算 框架,可用于构建大型的、低延迟的数据分析应用程序 ?2013年Spark加入Apache孵化器项目后发展迅猛,如今已 成为Apache软件基金会最重要的三大分布式计算系统开源 项目之一(Hadoop、Spark、Storm) ?Spark在2014年打破了Hadoop保持的基准排序纪录 ?Spark/206个节点/23分钟/100TB数据 ?Hadoop/2000个节点/72分钟/100TB数据 ?Spark用十分之一的计算资源,获得了比Hadoop快3倍 的速度 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.1 Spark简介 Spark具有如下几个主要特点: ?运行速度快:使用DAG执行引擎以支持循环数据流与内存计算 ?容易使用:支持使用Scala、Java、Python和R语言进行编程,可以通过 Spark Shell进行交互式编程 ?通用性:Spark提供了完整而强大的技术栈,包括SQL查询、流式计算 、机器学习和图算法组件 ?运行模式多样:可运行于独立的集群模式中,可运行于Hadoop中,也 可运行于Amazon EC2等云环境中,并且可以访问HDFS、Cassandra、 HBase、Hive等多种数据源 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.1 Spark简介 图16-1 谷歌趋势:Spark与Hadoop对比 Spark如今已吸引了国内外各大公司的注意,如腾讯、淘宝、百度、亚马 逊等公司均不同程度地使用了Spark来构建大数据分析应用,并应用到实 际的生产环境中 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.2 Scala简介 Scala是一门现代的多范式编程语言,运行于Java平台(JVM, Java 虚拟机),并兼容现有的Java程序 Scala的特性: ?Scala具备强大的并发性,支持函数式编程,可以更好地支持分布 式系统 ?Scala语法简洁,能提供优雅的API Scala兼容Java,运行速度快,且能融合到Hadoop生态圈中 Scala是Spark的主要编程语言,但Spark还支持Java、Python、R 作为编程语言 Scala的优势是提供了REPL(Read-Eval-Print Loop,交互式解释 器),提高程序开发效率 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.3 Spark与Hadoop的对比 Hadoop存在如下一些缺点: ?表达能力有限 ?磁盘IO开销大 ?延迟高 ?任务之间的衔接涉及IO开销 ?在前一个任务执行完成之前,其他任务就无法 开始,难以胜任复杂、多阶段的计算任务 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.3 Spark与Hadoop的对比 Spark在借鉴Hadoop MapReduce优点的同时,很好地解决了 MapReduce所面临的问题 相比于Hadoop MapReduce,Spark主要具有如下优点: ?Spark的计算模式也属于MapReduce,但不局限于Map和Reduce操作 ,还提供了多种数据集操作类型,编程模型比Hadoop MapReduce更 灵活 ?Spark提供了内存计算,可将中间结果放到内存中,对于迭代运算 效率更高 Spark基于DAG的任务调度执行机制,要优于Hadoop MapReduce的 迭代执行机制 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.3 Spark与Hadoop的对比 图16-2 Hadoop与Spark的执行流程对比 《大数据处理技术Spark》 厦门大学计算机科学系 林子雨 [email protected] 3.1.3 Spark与Hadoop的对比

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题