Spark的速度比Hadoop快将近100倍,原因都有哪些,本文进行归纳总结
- Spark计算速度远胜于Hadoop的原因之一就在于中间结果是缓存在内存而不是直接写入到disk,见http://www.cnblogs.com/hseagle/p/3673138.html
- Broadcast机制
- Cache
- Checkpoint
- Spark的计算模型
Hadoop每次计算先写磁盘,下次计算先从磁盘读,计算结果再写磁盘,如此往复。这对于迭代计算,是个噩梦
- -----Spark为每个应用程序在worker上开启一个进程,而一个Job中的Task会在同一个线程池中运行,而Hadoop Map Reduce的计算模型是每个Task(Mapper或者Reducer)都是一个单独的进程,启动停止进程非常expensive,同时,进程间的数据共享也不能基于内存,只能是HDFS。
- Spark任务调度模型
- -----一级调度DAGScheduler
- -----二级调度TaskScheduler
- 容错性
- Shuffle方面的性能提升?
本文深入探讨了Spark相对于Hadoop在计算速度上的显著优势,详细解释了其核心机制,如内存缓存、广播机制、检查点等,并通过对比Hadoop的磁盘依赖计算流程,阐述了Spark在迭代计算场景下的高效性。同时,文章还揭示了Spark任务调度模型的特性以及在容错性和shuffle性能提升方面的表现。
5243

被折叠的 条评论
为什么被折叠?



