跳转至

2019-2020-1期末A卷

2017级 A卷

一、单项选择题(每题2分,共10分)

  1. Apache Hadoop 是哪家公司发起的项目( ) A. Google B. Yahoo! C. Amazon D. IBM

  2. Apache Flink 起源于以下哪个项目( ) A. Stratosphere B. Hadoop C. Beam D. Dataflow

  3. 以下哪个系统提供迭代计算的算子( ) A. Spark B. Beam C. Flink D. 以上答案都不对

  4. 在Lambda 架构中,以下哪个系统适合用作加速层( ) A. Yarn B. MapReduce C. Storm D. ZooKeeper

  5. 以下哪项技术是 Spark Streaming没有采用的( ) A. RDD B. RDD lineage C. Micro-batch D. 以上答案都不对

二、判断题(每题2分,共10分,对的打√,错的打×)

  1. MPI也可以用于分布式计算,但它本身不具备容错功能。( )
  2. 与MapReduce不同,Spark基于内存实现计算功能,因此Spark 的Shuffle 过程不会像 MapReduce 那样将 Map的输出写入磁盘。( )
  3. 为了提升数据传输效率,Storm的消息传递机制可以将多个记录缓存起来一并进行传输。( )
  4. 与MapReduce、Storm不同,Flink 既可进行批处理,也可进行流计算。( )
  5. RDD可以进行一系列的转换,因而是可变的数据集合。( )

三、填空题(每空2分,共10分,中英文作答均可)

  1. 我们利用 Spark、Flink等系统编写K-Means程序时,通常可以将中心点作为____来加快程序的执行。
  2. 在第一代 MapReduce 系统的架构中,作为主节点的部件的名称是____。
  3. Giraph 系统采用_的计算模型,并利用_模型进行迭代计算。
  4. Storm为了描述计算的过程,将Spout和Bolt组成的有向无环图称为____。

四、简答题(共30分,需用连贯通顺的语句作答)

  1. (6分)我们常说Spark优于MapReduce,主要体现在哪些方面?
  2. (4分)Storm、Spark Streaming均可以用于流计算,二者在对于流数据的处理方式上有何种区别?解释各自处理方式的含义。
  3. (6分)Spark 和Flink 二者在容错机制上有很大差异, a) Spark 如何进行容错保障?(2分) b) 简述 Flink 分布式快照机制的原理。(2分) c) 为什么 Flink 不能采用和 Spark相同的容错机制。(2分)
  4. (4分)Spark Stage 内部采用了流水线机制,而Flink也采用了流水线机制,二者之间有何不同?
  5. (6分)HDFS 需要支持文件并发请求,而并发请求可能会破坏文件一致性, a) 它采用了何种方式来避免文件的读写冲突?(2分) b) 请结合某一应用的需求,说明这种方式有怎样的优缺点?(4分)
  6. (4分)在MapReduce、Spark、Storm、Flink系统中,任务之间数据传输方式有何差异?

五、分析论述题(共40分,需用连贯通顺的语句作答)

  1. (15分)我们经常使用 MapReduce、Spark 和Flink来实现 PageRank、最短路径等迭代算法,假定输入数据是静态的, a) 请分别画出 MapReduce、Spark 和Flink的迭代计算过程示意图:(6分) b) 从编程角度简述 MapReduce、Spark和Flink 迭代过程;(3分) c) 从执行角度比较 MapReduce、Spark和Flink 迭代之间的区别。(6分)
  2. (15分)自MapReduce 开源以来,至今已有十多年的历史,先后出现过两代典型的架构, a) 画出第一代MapReduce 架构图,并说明各部件的作用;(6分) b) 画出第二代 MapReduce 的架构图,并说明各部件的作用;(6分) c) 为什么会出现这种架构的更替?(3分)
  3. (10分)在关于Dataflow 编程模型运行示意图中,横轴表示事件时间,纵轴表示处理时间,弯曲的虚线表示水位线,实现长度为2分钟的固定窗口,窗口中执行的操作是取元素的最大值,仅使用默认的触发器,当水位线达到时触发窗口计算,

image-20260519092639640

a) 图中直虚线代表什么含义?(2分) b) 曲虚线是否可能落在直虚线的下方?为什么?(2分) c) 假定系统当前时间为12:02,4个窗口的计算结果分别是多少?(2分) d) 假定系统当前时间为12:08,4个窗口的计算结果分别是多少?(2分) e) 假定系统当前时间为12:10,4个窗口的计算结果分别是多少?(2分)