首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spark Fold vs性能下降?

Spark Fold vs性能下降?
EN

Stack Overflow用户
提问于 2015-04-29 08:01:38
回答 1查看 1.3K关注 0票数 2

在大数据处理作业中,与函数reduce相比,函数fold的计算性能是否较低?

例如,我有以下两个函数:

代码语言:javascript
复制
    array1.indices.zip(array1).map(x => x._1 * x._2).reduce(_ + _)

    array1.indices.zip(array1).map(x => x._1 * x._2).fold(0.0) {_ + _}

array1是一个非常大的rdd阵列。在给定相同的聚类设置的情况下,哪个函数具有更高的计算性能。

EN

回答 1

Stack Overflow用户

发布于 2015-04-30 01:19:15

这确实是same as the one pointed out by muhuk,因为Spark实现的核心仅仅是对iterator的调用

来自源代码的fold

代码语言:javascript
复制
(iter: Iterator[T]) => iter.fold(zeroValue)(cleanOp)

来自源的reduce

代码语言:javascript
复制
iter => 
  if (iter.hasNext)Some(iter.reduceLeft(cleanF))
  else None

所以,这主要是在调用scala实现。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29932025

复制
相关文章

相似问题

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