Spark大数据面试题1

本文探讨了Spark在哪些场景下可能逊色于MapReduce,解释了Spark SQL与传统SQL的区别,介绍了Spark版本号的含义,并阐述了Spark产生的背景及优势。文章详细讲解了RDD的特性、Spark与Hadoop的关系、Spark的特点以及与其他大数据流式处理框架的对比。此外,还讨论了Spark中的关键概念,如cache()与persist()的区别、join的依赖类型以及DataFrame、RDD和DataSet之间的差异。
摘要由CSDN通过智能技术生成

1、spark在什么场景比不上MapReduce?

Spark 在内存中处理数据,需要很大的内存容量。如果 Spark 与其它资源需求型服务一同运行在YARN 上,又或者数据块太大以至于不能完全读入内存,此时 Spark 的性能就会有很大的降低,此时Spark可能比不上MapReduce。当对数据的操作只是简单的ETL的时候,Spark比不上MapReduce。

2、spark sql和sql的区别?

没关系 语法类似而已


3、spark版本的含义,如spark-1.6.0.

1:主版本,主版本的更改往往意味着API的改变
6:次版本,次版本的更改往往意味着新特性的添加,有时也伴随着API的更改
0:末版本,末版本的更改网往往伴随着新特性的添加

注意:我们选择版本往往不建议选择末版本为0的版本,这个版本由于没有对新添加的特性进行bug的修复,会有很多的bug


4、spark产生背景及优势。

MapReduce编程的不便性:
1)繁杂:开发一个作业,既要写Map,又要写Reduce和驱动类。当需求变动要改变大量的代码
2)效率低:MapReduce基于进程,进程的启动和销毁要花费时间。
I/O频繁:网络I/O和磁盘I/O频繁
每个阶段都必须排序,但其实有些任务的排序是不必要的
3)不适合作迭代处理
4)只适合离线计算,不适合作实时处理

#spark基于线程,线程直接从线程池中获取即可。
#MapReduce也可以基于内存,但有一定限度。

很多框架都对spark做了兼容,使用起来很方便


5、RDD五大特性?

1、RDD是由一系列的分区组成。2、操作一个RDD实际上操作的是RDD的所有分区。3、RDD之间存在各种依赖关系。4、可选的特性,key-value型的RDD是通过hash进行分区。5、RDD的每一个分区在计算时会选择最佳的计算位置。


6、什么是RDD?
RDD产生的意义在于降低开发分布式应用程序的门槛和提高执行效率。RDD全称resilient distributed dataset(弹性分布式数据集),它是一个可以容错的不可变集合,集合中的元素可以进行并行化地处理,Spark是围绕RDDs的概念展开的。RDD可以通过有两种创建的方式,一种是通过已经存在的驱动程序中的集合进行创建,另一种是通引用外部存储系统中的数据集进行创建,这里的外部系统可以是像HDFS或HBase这样的共享文件系统,也可以是任何支持hadoop InputFormat的数据。
在源码中,RDD是一个具备泛型的可序列化的抽象类。具备泛型意味着RDD内部存储的数据类型不定,大多数类型的数据都可以存储在RDD之中。RDD是一个抽象类则意味着RDD不能直接使用,我们使用的时候通常使用的是它的子类,如HadoopRDD,BlockRDD,JdbcRDD,MapPartitionsRDD,CheckpointRDD等。

        在spark的官网,介绍了RDD的五大特性:1、RDD是由一系列的分区组成。2、操作一个RDD实际上操作的是RDD的所有分区。3、RDD之间存在各种依赖关系。4、可选的特性,key-value型的RDD是通过hash进行分区。5、RDD的每一个分区在计算时会选择最佳的计算位置。


7、spark能都取代hadoop?

Spark是一个计算框架,它没有自己的存储,它的存储还得借助于HDFS,所以说Spark不能取代Hadoop,要取代也是取代MapReduce


8、Spark的特点?

Apache Spark 是一个快速的处理大规模数据的通用工具。它是一个基于内存计算框架。它有以下的四个特点:
1)快速:基于内存的计算比MapReduce快100倍,基于磁盘快10倍。
2)易用:编写一个spark的应用程序可以使用 Java, Scala, Python, R,这就使得我们的开发非常地灵活。并且,对比于MapReduce,spark内置了80多个高级操作,这使得开发十分高效和简单。
3)运行范围广:spark可以运行在local、yarn、mesos、standalone、kubernetes等多种平台之上。它可以访问诸如HDFS, Cassandra, HBase, S3等多种多样的数据源。

4)通用:spark提供了SparkSQL、SparkStreaming、GraphX、MLlib等一系列的分析工具。


9、spark的主要特性在哪个版本引入。
外部数据源 1.2
DataFrame 1.3
动态资源调度 1.5

Dataset 1.6


10、大数据流式处理框架对比:Storm vs Spark Streaming
a.Spark Streaming最低可在0.5秒~2秒内做一次处理,而

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二百四十九先森

你的打赏是我努力的最大动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值