在使用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)
「艾尔登法环」梅琳娜手办开订 立体手办▪
万代「艾尔登法环」白狼战鬼手办开订 立体手办▪
「夏目友人帐」猫咪老师粘土人开订 立体手办▪
「五等分的新娘∬」中野三玖·白无垢版手办开订 立体手办▪
「海贼王」乌索普Q版手办开订 立体手办▪
良笑社「初音未来」新手办开订 立体手办▪
「黑岩射手DAWN FALL」死亡主宰手办开订 立体手办▪
「盾之勇者成名录」菲洛手办登场 立体手办▪
「魔法少女小圆」美树沙耶香手办开订 立体手办▪
「咒术回战」七海建人粘土人登场 立体手办▪
「五等分的新娘」中野二乃白无垢手办开订 立体手办▪
「为美好的世界献上祝福!」芸芸粘土人开订 立体手办▪
「公主连结 与你重逢」六星可可萝手办开订 立体手办▪
「女神异闻录5」Joker雨宫莲手办开订 立体手办▪
「间谍过家家」约尔・福杰粘土人登场 立体手办▪
「街角魔族 2丁目」吉田优子手办开订 立体手办▪
「火影忍者 疾风传」旗木卡卡西·暗部版粘土人登场 立体手办▪
「佐佐木与宫野」宫野由美粘土人开订 立体手办▪
「盾之勇者成名录」第2季拉芙塔莉雅手办开订 立体手办▪
「咒术回战」两面宿傩Q版坐姿手办开订 立体手办▪
「DATE·A·BULLET」时崎狂三手办开订 立体手办▪
「狂赌之渊××」早乙女芽亚里粘土人开订 立体手办▪
「魔道祖师」魏无羨粘土人开订 立体手办▪
「新·奥特曼」奥特曼手办现已开订 立体手办▪