HNUST 大数据技术与应用期末复习
HNUST 大数据技术与应用期末复习

HNUST 大数据技术与应用期末复习

第10章 Spark作业

单选题

  1.                   (单选题, 2分)下列关于Spark的描述,错误的是哪一项?

A Spark最初由美国加州伯克利大学(UCBerkeley)的AMP实验室于2009年开发

B Spark在2014年打破了Hadoop保持的基准排序纪录

C Spark用十分之一的计算资源,获得了比Hadoop快3倍的速度

D Spark运行模式单一

正确答案: D

  1.                   (单选题, 2分)下列关于Spark的描述,错误的是哪一项?

A 使用DAG执行引擎以支持循环数据流与内存计算析

B 可运行于独立的集群模式中,可运行于Hadoop中,也可运行于Amazon EC2等云环境中

C 支持使用Scala、Java、Python和R语言进行编程,但是不可以通过Spark Shell进行交互式编程

D Spark运行模式不是单一的

正确答案: C

  1.                   (单选题, 2分)下列关于Scala特性的描述,错误的是哪一项?

A Scala语法复杂,但是能提供优雅的API计算

B Scala具备强大的并发性,支持函数式编程,可以更好地支持分布式系统

C Scala兼容Java,运行速度快,且能融合到Hadoop生态圈中

D Scala是Spark的主要编程语言

正确答案: A

  1.                   (单选题, 2分)下列说法哪项有误?

A 相对于Spark来说,使用Hadoop进行迭代计算非常耗资源

B Spark将数据载入内存后,之后的迭代计算都可以直接使用内存中的中间结果作运算,避免了从磁盘中频繁读取数据

C Hadoop的设计遵循一个软件栈满足不同应用场景的理念

D Spark可以部署在资源管理器YARN之上,提供一站式的大数据解决方案

正确答案: C

  1.                   (单选题, 2分)在Spark生态系统组件的应用场景中,下列哪项说法是错误的?

A Spark应用在复杂的批量数据处理

B Spark SQL是基于历史数据的交互式查询

C Spark Streaming是基于历史数据的数据挖掘

D GraphX是图结构数据的处理

正确答案: C

  1.                   (单选题, 2分)下列说法错误的是?

A RDD(Resillient Distributed Dataset)是运行在工作节点(WorkerNode)的一个进程,负责运行Task

B Application是用户编写的Spark应用程序

C 一个Job包含多个RDD及作用于相应RDD上的各种操作

D Directed Acyclic Graph反映RDD之间的依赖关系

正确答案: A

  1.                   (单选题, 2分)下列关于RDD说法,描述有误的是?

A 一个RDD就是一个分布式对象集合,本质上是一个只读的分区记录集合

B 每个RDD可分成多个分区,每个分区就是一个数据集片段

C RDD是可以直接修改的

D RDD提供了一种高度受限的共享内存模型

正确答案: C

  1.                   (单选题, 2分)Spark生态系统组件Spark Streaming的应用场景是?

A 基于历史数据的数据挖掘

B 图结构数据的处理

C 基于历史数据的交互式查询

D 基于实时数据流的数据处理

正确答案: D

简答题

  1.                   (简答题, 12分)Spark是基于内存计算的大数据计算平台,试述Spark的主要特点。

正确答案:Spark具有如下4个主要特点:运行速度快;容易使用;通用性;运行模式多样。

  1.                   (简答题, 12分)Spark的出现是为了解决Hadoop MapReduce的不足,试列举Hadoop MapReduce的几个缺陷,并说明Spark具备哪些优点。

正确答案:(1)Hadoop存在以下缺点:表达能力有限;磁盘IO开销大;延迟高。(2)Spark主要有如下优点: Spark的计算模式也属于MapReduce,但不局限于Map和Reduce操作,还提供了多种数据集操作类型,编程模型比MapReduce更灵活; Spark提供了内存计算,中间结果直接存放内存中,带来更高的迭代运算效率; Spark基于DAG的任务调度执行机制,要优于MapReduce的迭代执行机制。

  1.                   (简答题, 12分)Spark已打造出结构一体化,功能多样化的大数据生态系统,试述Spark的生态系统。

正确答案:Spark所提供的生态系统同时支持批处理、交互式查询和流数据处理。Spark生态系统主要包括SparkCore、Spark SQL、Spark Streaming、MLlib、GraphX等组件。(1)Spark Core。包含Spark的基本功能,如内存计算、任务调度、部署模式、故障恢复、存储管理等,主要面向批数据处理。(2)Spark SQL。允许开发人员直接处理RDD,同时也可查询Hive、HBase等外部数据源。能够统一处理关系表和RDD。(3)Spark Streaming。支持高吞吐量、可容错处理的实时流数据处理,其核心是将流数据分解成一系列短小的批处理作业,每个短小的批处理作业都可以使用Spark Core进行快速处理。(4)MLlib。提供常用的机器学习算法的实现,包括聚类、分类、回归、协同过滤等。(5)GraphX。Spark用于图计算的API,可以认为是Pregel在Spark上的重写及优化。

  1.                   (简答题, 12分)美国加州大学伯克利分校提出的数据分析的软件栈BDAS认为目前的大数据处理可以分为哪三个类型?

正确答案:复杂的批量数据处理:时间跨度通常在数十分钟到数小时之间;基于历史数据的交互式查询:时间跨度通常在数十秒到数分钟之间;基于实时数据流的数据处理:时间跨度通常在数百毫秒到数秒之间。

  1.                   (简答题, 12分)从Hadoop+Storm架构转向Spark架构可带来哪些好处?

正确答案: 实现一键式安装和配置、线程级别的任务监控和告警; 降低硬件集群、软件维护、任务监控和应用开发的难度;   便于做成统一的硬件、计算平台资源池。

  1.                   (简答题, 12分)Spark对RDD的操作主要分为行动(Action)和转换(Transformation)两种类型,两种类型操作的区别是什么?

正确答案:行动(Action):在数据集上进行运算,返回计算值。转换(Transformation):基于现有的数据集创建一个新的数据集。两者的区别主要在于,转换接受RDD并返回RDD,而行动接受RDD但返回非RDD(输出一个值或结果)。

  1.                   (简答题, 12分)试述如下Spark的几个主要概念:RDD、DAG、阶段、分区、窄依赖、宽依赖。

正确答案:RDD:是弹性分布式数据集(Resilient Distributed Dataset)的英文缩写,是分布式内存的一个抽象概念,提供了一种高度受限的共享内存模型。DAG:是Directed Acyclic Graph(有向无环图)的英文缩写,反映RDD之间的依赖关系。阶段:是作业的基本调度单位,一个作业会分为多组任务,每组任务被称为阶段,或者也被称为任务集分区:一个RDD就是一个分布式对象集合,本质上是一个只读的分区记录集合,每个RDD可以分成多个分区,每个分区就是一个数据集片段。窄依赖:父RDD的一个分区只被一个子RDD的一个分区所使用就是窄依赖。宽依赖:父RDD的一个分区被一个子RDD的多个分区所使用就是宽依赖。

starry0214

订阅评论
提醒
guest

0 评论
最新
最旧 最多投票
内联反馈
查看所有评论