RDD之flatMap与Map对比

纵然是瞬间 提交于 2019-12-07 19:39:38

定义

首先我们列出flatMap与Map的定义,可参考RDD API

  • def map[U](f: (T) ⇒ U)(implicit arg0: ClassTag[U]): RDD[U] 
    Return a new RDD by applying a function to all elements of this RDD.

  • def flatMap[U](f: (T) ⇒ TraversableOnce[U])(implicit arg0: ClassTag[U]): RDD[U] 
    Return a new RDD by first applying a function to all elements of this RDD, and then flattening the results.

api已经讲解较为清楚,map是将每个元素对应执行f函数,而flatMap对应的是将每个元素执行f函数后将其扁平化

示例

我们采用将每个元素按照空格的方法将每个元素进行分割,分别执行map与flatMap方法。 
map方法如下图所示: 
map函数
flatMap方法如下图所示: 
flatMap函数

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!