云计算与大数据--配套习题(徐小龙) 第16章 分布式内存计算平台Spark-习题答案.docx
《云计算与大数据--配套习题(徐小龙) 第16章 分布式内存计算平台Spark-习题答案.docx》由会员分享,可在线阅读,更多相关《云计算与大数据--配套习题(徐小龙) 第16章 分布式内存计算平台Spark-习题答案.docx(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第16章 分布式内存计算平台Spark习题16.1 选择题1、Spark是Hadoop生态(B )组件的替代方案。A. HadoopB. MapReduceC. YamD. HDFS2、以下(D )不是Spark的主要组件。B. DriverB. SparkContextC. CIusterManagerD. ResourceManager3、Spark 中的 Execulor 是( A )。A.执行器 B.主节点C.从节点D.上下文4、下面(D )不是Spark的四大组件之一。C. Spark StreamingB.Spark MLlibD. Spark GraphXD.Spark R5、S
2、cala属于哪种编程语言(C ).A.汇编语言B.机器语言C.函数式编程语言D.多范式编程语言6、Spark组件中,SparkContext是应用的(C ),控制应用的生命周期。A.主节点B.从节点C.上下文D.执行器7、以下(D )不是Spark的主要组件。A.DAGSchedulerB.TaskSchedulerE. SparkContextD.MultiScheduler8、Spark 组件中,CIusterManager 是(BA.从节点B.主节点C.执行器D.上下文9、关于Spark中的RDD说法不正确的选项是(B )。A.是弹性分布式数据集B.是可读可写分区的集合C.存在容错机制D
3、.是Spark中最基本的数据抽象10、GraphX的BSP计算模型中,一个超步中的内容不包括(C )。A.计算B.消息传递C.缓存D.整体同步点填空题1、内存计算主要用于处理(数据密集型)的计算任务,尤其是数据量极大且需要实时分析处理的应用。2、Ignite是一个可扩展的、(容错性好的)分布式内存计算平台。3、RDD通过一种名为( 血统 )的容错机制进行错误的时的数据恢更。4、数据分析栈 BDAS 包括( Spark SQL )、( Spark Streaming )、 (Spark GraphX )、( MLlib )四个局部。5、Spark Streaming是建立在Spark上的( 实时
4、计算 )框架,提供了丰富的API、基 于内存的高速执行引擎,用户可以结合流式、批处理进行交互式查询应用16.3简答题|、在硬件、软件、应用与体系等方面,内存计算有哪些主要特性? 答: 在硬件方面,需要大容量的内存,以便尽量将待处理的数据全部存放在内存中,内 存可以是单机内存或分布式内存,且内存要足够大。 在软件方面,需要有良好的编程模型和编程接口。 在应用方面,主要面向数据密集型应用,数据规模大、对实时处理性能要求高。 在体系方面,需要支持并行处理数据。2、请与MapReduce相比,Spark的优势有哪些? 答: 中间结果可输出。基于M卯Reduce的计算模型会将中间结果序列化到磁盘上,而
5、Spark将执行模型抽象为通用的有向无环图,可以将中间结果缓存在内存中。 数据格式和内存布局.Spark抽象出分布式内存存储结构RDD,用于进行数据存储。 Spark能够控制数据在不同节点上的分区,用户可以自定义分区策略。 执行策略。M叩Reduce在数据Shuffle之前总是花费大量时间来排序,Spark支持 基于Hash的分布式聚合,Spark默认Shuffle已经改为基于排序的方式。 任务调度的开销。当MapReduce上不同的作业在同一个节点运行时,会各自启动 一个Java虚拟机(Java Virtual Machine, JVM); Spark同一节点的所有任务都可 以在一个JVM上
6、运行。 编程模型。MapReduce仅仅提供了 M叩和Reduce两个计算原语,需要将数据处理 操作转化为Map和Reduce操作,在一定程度增加了编程难度:Spark那么提供了丰 富的输出处理算子,实现了分布式大数据处理的高层次抽象。 统一数据处理。Spark框架为批处理(Spark Core)、交互式(Spark SQL)流式(Spark Streaming机器学习(MLlib)、图计算(GraphX)等计算任务提供一个统一的数 据处理平台,各组件间可以共享数据。3、请描述Pregel计算模型的缺点或局限。答: 在图的划分上,采用的是简单的Hash方式,这样固然能够满足负载均衡,但Hash
7、 方式并不能根据图的连通特性进行划分,导致超步之间的消息传递开销影响性能。 简单的Checkpoint机制只能将状态恢复到当前超步的几个超步之前,要到当前超 步还需要重复计算。BSP计算模型本身有其局限性,整体同步并行对于计算速度快 的Worker,长期等待的问题无法解决。 由于Pregel目前的计算状态都是常驻内存的,对于规模继续增大的图处理可能会 导致内存缺乏。4、请简要描述函数式编程中尾递归的含义。答:尾递归是递归的一种优化方法。递归的空间效率很低,当递归深度很深时,容易产生栈 溢出的情况。尾递归就是将递归语句写在函数的最底部,这样在每次调用尾递归时,就不需 要保存当前状态值,可以直接把
8、当前的状态值传递给下次一次调用,然后清空当前的状态。 占用的栈空间就是常量值,不会出现栈溢出的情况。16.4解答题1、根据用户手机上网的行为记录,基于Spark设计程序来分别统计不同设备的用户使用的 上行总流量以及卜.行总流量。其中,数据记录的字段描述如卜。序号字段字段类型描述0reportTimelong记录报告时间戳1deviceldString手机号码2upPackNumlong上行数据包数,单位:个3down Pack Numlong下行数据包总数,单位:个数据文件的具体内容(一局部)如下:77e3c9e 1811d4fb291 d()d9bbd456bb4b 7997611496(9
9、2ecfBe076d44b89f2d070fb Idf7l9795291890923de7d6514fl d4ac790c630fa63d8d0be5702950228dd382d2a20464a74hbb7414e429ae452 2042893467bb2956150d6741 df875fbcca76ae9e7c5199457706答:Stcpl:将SparkConf封装在一个类中。import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaSparkContext;public class ComniSp
10、arkContext public static JavaSparkContext getsc()SparkConfsparkConfnewSparkConf().sctAppNamc(CoinmSparkContcxt).sctMastcr(local); return new JavaSparkContext(sparkConf);)Step2:自定义数据类型Loginfo import java.io.Serializable;public class Loglnfb implements Serializable private long timeStamp;private long
11、upTraffic;private long downTraffic;public long getTimeStampO return timeSiamp;public void setTimeStame(long timeStame) this.timcStamp = timeStame;)public long ge(UpTrafflc() return upTraffic;)public void sctUpTraffic(long upTraffic) Ihis.upTraffic = upTraffic;public long getDownTrafficO return downT
12、raffic;)public void se(DownTrafflc(long downTrafflc) this.downTraffic = downTraffic;Ipublic Loglnfo()public Loglnfo(long timeStame, long upTraffic, long downTraffic) this.timeStainp = timeStame;this.upTraffic = upTraffic; this.downTraffic = downTraffic;Step3 :自定义key排序类LogSort import scala.Serializab
13、le;import scala.niath.Ordered;public class LogSort extends Loginfb implements Ordered , Serializable private long timeStamp;private long upTraffic;private long downTraffic;Overridepublic long ge(TiineStamp() return timeStamp;)public void selTimcStamp(long timcStamp) this.timeStamp = limeStamp;IOverr
14、idepublic long gctUpTrafficO return upTraffic;Overridepublic void setUpTraffic(long upTraffic) this.upTraffic = upTraffic;)Ovcrridcpublic long ge(DovvnTraffic() return downTraffic;I()verridcpublic void setDownTraffic(long downTraffic) this.downTraffic = downTraffic;)public LogSorl()public LogSort(lo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 云计算与大数据-配套习题徐小龙 第16章 分布式内存计算平台Spark-习题答案 计算 数据 配套 习题 小龙 16 分布式 内存 平台 Spark 答案
限制150内