天天动画片 > 八卦谈 > Spark技术与应用

Spark技术与应用

八卦谈 佚名 2023-07-11 12:17:47

在使用SparkSQL对DF进行操作时,要初始化一个(  SparkSession )对象用来调用对应的方法和接口。

创建一个1-10数组的RDD,将所有元素*2形成新的RDD

val data1 = sc.makeRDD(1 to 10)
 val data1Result = data1.map(_ * 2)


读取本地文件words.txt,统计出每个单词的个数,保存数据到 hdfs 上

val file2 = sc.textFile("words.txt")
 file2.flatMap(_.split(" ")).map((_, 1)).reduceByKey(_ + _).saveAsTextFile("hdfs://mycluster:8020/20200407_wordsOutput")


读取 people.json 数据的文件, 每行是一个 json 对象,进行解析输出import scala.util.parsing.json.JSON
 val file3 = sc.textFile("people.json")
 val result: RDD[Option[Any]] = file3.map(JSON.parseFull)


使用内置累加器计算Accumulator.txt文件中空行的数量

val data27 = sc.textFile("Accumulator.txt")
 var count = sc.longAccumulator("count")
 data27.foreach { x => if (x == "") count.add(1) }
 println(count.value)


在Spark中读取HDFS上的文件时,在指定文件路径时必须要添加hdfs://(    )。

SparkSQL中创建一个临时表,可以使用createTempView方法 (  F  )。

Spark采用惰性机制,当遇到一个行动(Action)操作才会触发一个Job (  T  )。

将RDD中的每个元素全部打印到屏幕上,可以使用println (  F  )。

Spark中的RDD被创建后,在后续使用过程中有2种操作:转换(Transformation)和行动(Action) (   T )。

返回RDD数据集中元素的个数,可以使用(   count() )行动操作。

将RDD中的每个元素传递到函数中,并将结果返回一个新的数据集,使用到的转换操作是(  map()  )。

在对键值对RDD进行处理时,经常只对键值对中的values进行处理,需要使用到(  mapValues()  )方法。

Scala中的继承与Java中的继承不同,在Scala中重写超类中的非抽象方法需要使用(  override  )修饰符。

Scala中定义好一个类后,可以使用(  new  )关键词来创建对象。

数组一般包括定长数组和变长数组,在Scala中声明数组使用关键词(  Array()  )。

Scala中要创建1个1到10(包含10)的连续整数数值序列,可以使用1 ( to ) 10来表示。

Scala有2种类型的变量,一种是可变的,一种是不可变的,不可变的变量使用关键词(  val )声明。

Spark中的RDD叫做(   弹性分布式数据集 ),是Spark中最基本的数据抽象单元。

Scala中一个类继承自另一个抽象类,可以使用关键词(  extends  )。

Scala中定义抽象类需要添加关键词 (   abstract )。

将键值对RDD中具有相同键的元素进行分组,可以使用(  groupByKey()  )操作。

允许开发人员在每个机器上缓存一个只读变量,而不是为每个机器上的每个任务都生成一个副本,可以使用(  广播变量  )。

在将RDD转换为DataFrame时,有2种方法,1种是通过反射机制推断RDD模式,需要先定义一个(  case class  )。

从Spark2.0后,Spark使用(  SparkSession  )接口替代Spark1.6中的SQLContext和HiveContext。

读取本地或HDFS上的文本文件,可以使用sparkContext中的 (  textFile  )方法。

启动spark-shell后,会自动创建2个对象,一个是sc,另一个是(   spark )。

通过函数func(输入2个参数并返回一个值)聚合RDD数据集中的元素,使用的行动操作是(   reduce(func) )。

下列对RDD的操作中,属于行动操作的是(  first()  )。

 Hadoop框架的缺陷有  ( 表达能力有限,MR编程框架的限制 过多的磁盘操作,缺乏对分布式内存的支持 无法高效低支持迭代式计算  ) 

与hadoop相比,Spark主要有以下哪些优点(全选)

 YARN是负责集群资源调度管理的组件。不同的计算框架统一运行在YARN框架之上,具有哪些优点(全选)

spark的特点包括( 快速 通用 兼容性) 

Master 的 ElectedLeader 事件后不做哪些操作( 通知 driver   通知 worker  注册 application) 

Spark driver的功能是什么( 是作业的主进程  负责了作业的调度  负责作业的解析)

 SparkContext可以从哪些位置读取数据  (本地磁盘 hdfs 内存)

RDD有哪些缺陷?  ( 不支持细粒度的写和更新操作如网络爬虫 不支持增量迭代计算)

Spark SQL支持读取那些类型的文件( text   json  parquet)

从RDD转换得到DataFrame包含两种典型的方法,分别是(利用反射机制推断RDD模式  使用编程方式定义RDD模式 )

流计算的处理流程(实时数据计算 实时查询服务 实时数据采集)

SparkStreaming的基本输入源有哪几种( 文件流  套接字流  RDD队列流)

MLlib包括(全选)

下面关于Spark MLlib库的描述正确的是(MLlib库从2版本以后分为两个包:sparmllib和sparml  sparmllib包含基于RDD的原始算法API)

下面哪个操作是窄依赖 ( filter)

下面哪个操作肯定是宽依赖( reduceByKey)

Spark 的集群部署模式不包括 (Local)

下列哪个不是 RDD 的缓存方法( Memory)

Spark默认的存储级别( MEMORY_ONLY) 

spark 的四大组件下面哪个不是  (Spark R)

以下哪个不是Spark的组件 (MultiScheduler) 

Task 运行在下来哪里个选项中 Executor 上的工作单元( worker node) 

ClusterManager是 (主节点)

Stage 的 Task 的数量由什么决定 (Partition   )

下面哪个不是 RDD 的特点( 可修改)

DataFrame 和 RDD 最大的区别( 多了 schema)

本文标题:Spark技术与应用 - 八卦谈
本文地址:www.ttdhp.com/article/36593.html

天天动画片声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
扫码关注我们