首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有大量数据的内存处理引擎的好处是什么?

有大量数据的内存处理引擎的好处是什么?
EN

Stack Overflow用户
提问于 2015-05-09 14:25:32
回答 1查看 1.3K关注 0票数 1

如果数据集适合内存,Spark的性能最好,如果数据集不合适,它将使用磁盘,因此它与hadoop一样快。让我们假设我正在处理Tera/Peta字节的数据。有一个小的星团。显然,没有办法把它放进记忆中。我的观察是,在大数据时代,大多数数据集都是以千兆字节(如果不是更多的话)。

那么内存处理引擎的好处是什么呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-09 16:34:30

我发现与Hadoop的MapReduce相比,Spark的优势不仅仅是in-memory computation engine,甚至是来自磁盘的输入。就我而言,至少有两项重大进展:

  1. 星星之火的DAG execution engine与MapReduce的two phase execution
  2. Thread level parallel executionProcess level parallel execution

再详细阐述一下:

  1. 对于一个复杂的执行计划,Spark的DAGScheduler会在混乱边缘将您的计划分成几个阶段,但是您不需要像在Hadoop中那样添加虚拟映射阶段,因此,消除不必要的将减少输出物化到HDFS中,然后作为映射输入读取。
  2. Hadoop的MapReduce具有众所周知的高延迟,因为map减少中的每个任务都是一个进程,与spark的线程级并行相比,JVM级别的并行性很重。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30141068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档