电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

spark设计指南VIP免费

spark设计指南_第1页
1/24
spark设计指南_第2页
2/24
spark设计指南_第3页
3/24
SPARKSPARK设计指南设计指南培训目标培训目标•培训对象各分支,产品线大数据平台开发、维护人员•培训内容Spark与MapReduce的对比以及Spark的应用。2311什么是SparkP4P422Spark与MapReduce的对比P5P533Spark的相关概念P7P744Spark案例分析PP1919目录目录什么是什么是SparkSpark4Spark是UCBerkeleyAMPlab所开源的类HadoopMapReduce的通用并行框架。spark输出结果可以保存在内存中,从而不再需要读写HDFS。Spark启用了内存分布数据集,能够提供交互式查询,还可以优化迭代工作负载MapReduceMapReduce存在的问题存在的问题5编程原语比较少,难以使用只有map,reduce这两种操作一个Job只有map->reduce两个阶段无法表现比如map->reduce->map->reduce这样的复杂任务复杂的任务需要多个Job完成性能比较差Reduce的结果需要输出到HDFS多个Job之间需要频繁读写磁盘对于迭代式任务性能尤其差时延比较差,无法处理即席查询和实时查询Reduce任务需要等所有的Map任务完成才可以开始SparkSpark与与hadoophadoop的对比的对比6Spark的中间数据放到内存中,对于迭代运算效率更高。Spark比Hadoop更通用Spark提供的数据集操作类型有很多种,不像Hadoop只提供了Map和Reduce两种操作。比如map,filter,flatMap,sample,groupByKey,reduceByKey,union,join,cogroup,mapValues,sort,partionBy等多种操作类型,Spark把这些操作称为Transformations。同时还提供Count,collect,reduce,lookup,save等多种actions操作。可用性Spark通过提供丰富的Scala,Java,PythonAPI及交互式Shell来提高可用性。Spark可以直接对HDFS进行数据的读写,同样支持SparkonYARN。Spark可以与MapReduce运行于同集群中,共享存储资源与计算,数据仓库Shark实现上借用Hive,几乎与Hive完全兼容。SparkSpark相关概念相关概念7HDFS体系结构RDD弹性分布数据集一组跨集群的数据集,存在于内存或磁盘上;可以从外部文件、DB等数据源创建RDD,也可以从RDD创建新的RDD;RDD上支持很多不同的操作。SparkSpark相关概念相关概念8HDFS体系结构RDD弹性分布数据集对于RDD可以有两种计算方式:转换(返回值还是一个RDD)与操作(返回值不是一个RDD)转换(Transformations)(如:map,filter,groupBy,join等),Transformations操作是Lazy的,也就是说从一个RDD转换生成另一个RDD的操作不是马上执行,Spark在遇到Transformations操作时只会记录需要这样的操作,并不会去执行,需要等到有Actions操作的时候才会真正启动计算过程进行计算。操作(Actions)(如:count,collect,save等),Actions操作会返回结果或把RDD数据写到存储系统中。Actions是触发Spark启动计算的动因。SparkSpark相关概念相关概念9HDFS体系结构丰富的apiSparkSpark相关概念相关概念10HDFS体系结构DataFrameSpark1.3中引入的新概念:DataFrameDataFrame类似于之前的SchemaRDD,但并非继承自RDD,而是重新实现了RDD可以实现的一些功能。DataFrame是一个以命名列方式组织的分布式数据集,等同于关系型数据库中的一个表,也相当于R/Python中的dataframes(但是进行了更多的优化)。DataFrames可以由结构化数据文件转换而来,也可以从Hive中的表得来,以及可以转换自外部数据库或现有的RDD。SparkSpark相关概念相关概念11HDFS体系结构为什么需要DataFrame实际使用中,很多数据源其实都是有schema的,比如:parquet,hivetableRDD提供的API对于很多人来说还是不够直观,DataFrame提供了通过DSL执行任务的方式SparkSpark相关概念相关概念12HDFS体系结构DataFrame使用实例SparkSpark架构架构13HDFS体系结构Spark架构Spark架构采用了分布式计算中的Master-Slave模型。Master是对应集群中的含有Master进程的节点,Slave是集群中含有Worker进程的节点。Master作为整个集群的控制器,负责整个集群的正常运行;Worker相当于是计算节点,接收主节点命令与进行状态汇报;Executor负责任务的执行;Client作为用户的客户端负责提交应用,Driver负责控制一个应用的执行。Spark集群部署后,需要在主节点和从节点分别启动Master进程和Worker进程,对整个集群进行控制。在一个Spar...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

spark设计指南

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部