Spark 有什么优缺点?
原创
BAT笔试面试
勇哥聊IT
勇哥聊IT
微信号
gh_1f9bb965f478
功能介绍
分享编程心得,共赏技术风景
优点
1、速度快
基于内存运算时比mapreduce快100倍,基于磁盘运算也快10倍以上
2、使用方便,支持多语言
本地调试很方便
支持多种语言:Scala、Java、Python、R
多种运行模式:Local模式、Standalone模式、Spark On Yarn、Spark On Mesoes、Kubernetes
3、丰富的操作算子
spark有丰富的算子,代码很简洁,几行代码就可以实现mapreduce几个类的工作。
Value型Transformation算子:
map、flatMap、mapPartition、filter、union、distinct、distinct、sample、cache、persist
Key-Value型Transformation算子:
mapValues、reduceByKey、partitionBy
Action算子:
count、foreach、collect、reduce、saveAsTextFile、join、leftOuterJoin、rightOuterJoin
4、支持的场景多
支持批处理、实时处理 Spark Streaming、机器学习 Mllib、图计算 Graphx
各种处理可以在同一个应用中无缝隙使用
5、生态完善、社区活跃
很容易操作hadoop、hbase、cassandra、kafka
文档很全
缺点
1、流式计算不如flink
2.3版本以前spark的流式计算是将流数据当成小批量的数据(Micro-batch)进行处理,延迟较高,通常大于百毫秒级别;
2.3版本以后开始支持连续处理模型(类flink), 但功能不如flink全。
2、资源消耗较高
spark是基于内存计算,因此对资源的要求较高,尤其是内存;
当从hdfs上读取很多小文件生成rdd时,rdd元数据会占用较多内存。
推荐阅读
Spark RDD有什么特性
hr常问的几道面试题
java什么情况下会抛出OOM
如何实现一个线程池
Java8 有哪些新特性
HashMap 与HashTable有什么区别?
ArrayList 并发版本 CopyOnWriteArrayList
HashMap常考的几个问题
加小编微信
“tickai”
(备注大数据),拉你入
“大数据学习交流群”
-------------
End
-------------
更多面试题请关注
“BAT笔试面试”
预览时标签不可点
微信扫一扫
关注该公众号
继续滑动看下一个
轻触阅读原文
勇哥聊IT
向上滑动看下一个
知道了
微信扫一扫
使用小程序
取消
允许
取消
允许
:
,
。
视频
小程序
赞
,轻点两下取消赞
在看
,轻点两下取消在看
分享
留言