spark期末习题
-
单项选择题 下面对MapReduce描述错误的是( ) C.启动开销小、可以使用很少的磁盘到时效率提高
下列哪一项是yarn的一级调度管理( )
A.计算资源管理
scala 中,以下说法错误是 ( ) B.scala 中不可以在类中定义object。
调用函数时指定(),参数顺序可以跟函数定义时的顺序不同
A.参数名
不属于Scala7种数值类型的是?
C.LongLong
对于拉链操作val t1 = Array(1, 3); val t2 = Array(2,4) ;
t1.zip(t2)返回结果正确的是? C.((1,2),(3,4))scala语言中,关于List的定义。不正确的是? C.val list = ListString。
对于元组val t = (1, 3.14, “Fred”)说法错误的是? A.t_1 //等于 1
对于拉链操作 val key = Array(1, 2) val value = Array(“one”,”two”) val m =
key.zip(value).toMap 返回结果正确的是? B.m(1) 等于 “one”Task 运行在下来哪里个选项中 Executor 上的工作单元 ( ) D.worker node
多项选择 Spark可以实现哪些形式的分布式计算() A.内存式运算 B.机器学习 C.交互式查询 D.流式计算
Spark为什么比mapreduce快( ) A.基于内存计算,减少低效的磁盘交互; B.高效的调度算法,基于DAG
C.容错机制Linage,精华部分就是DAG和lineage关于单例对象的说法正确的是() A.在Scala中没有静态方法和静态字段 B.可以使用object这个语法结构来达到静态类的效果
D.调用单例对象的方法是类名.方法名关于定义类正确的说法是() A.定义类时可以不用publiC.private来修饰 B.定义类时类名前需用class关键字
C.一个类文件中可以有多个类 Spark driver的功能是什么( ) A.是作业的主进程 B.负责了作业的调度 D.负责作业的解析Spark应用的计算逻辑会被解析成DAG,这个解析操作由以下哪个功能模块完成( ) C.Executor D.Driver
判断题 scala中没有静态方法(×)
scala不刻意区分基本数据类型和引用数据类型(×)
scala可以在方法或函数定义时就声明可能会抛出的异常(×) scala中的赋值语句可以连在一起写(×)
Unit类似于java中的void,表示空的概念,不占用底层存储(对)
reduceByKey是action.×
关于辅助构造器,辅助构造器必须要带参数。 对
类和单例对象间的差别是单例对象不可以带参数,而类可以。对
填空题
有定义:val lst = List(1,7,9,8,0,3,5,4,6,2) ,则 lst1=lst.filter(_%2==0)
执行后,list1的值是( 8,0,4,6,2 )有定义:val lst = List(1,7,9,8,0,3,5,4,6,2) ,则lst1=
lst.map(_*10)执行后,list1的值是 ( 10,70,90,80,0,30,50,40,60,20 )val lines = List(“hello tom hello jerry”,“hello tom hello hello
hello”),则执行lines.flatMap(.split(" ")).map((,1))后结果是(
List((hello,1), (tom,1), (hello,1), (jerry,1), (hello,1), (tom,1),
(hello,1), (hello,1), (hello,1))val lines = List(“hello tom hello jerry”,“hello tom hello hello
hello”),则执行lines.flatMap(_.split(" "))后结果是(List(hello, tom, hello,
jerry, hello, tom, hello, hello, hello))在Spark中,用户编写的Spark应用程序叫作( 应用 Application )。
HDFS的数据节点和Spark的工作节点是部署在一起的,这样的目的是实现(计算向数据靠拢 ),可以减少网络数据的传输。
若 val a = sc.parallelize(List(1,2,3)),val b =
a.flatMap(x=>List(x,x,x)) 则b 的值是( Array(1, 1, 1, 2, 2, 2, 3, 3, 3)结果输出
写出下面代码段的的输出结果 for (i<- 1 to 5; j<- 1 to 5){
print("* ")
if (j==i) println()}答案:
val map1 = Map(“key1” -> 1, “key2” -> 3, “key3” -> 5) val map2 =
Map(“key2” -> 4, “key3” -> 6, “key5” -> 10, “key5” -> 10)
println(map1 + (“key1” -> 3)) println(map1 ++ map2)