定义
首先我们列出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方法如下图所示:

flatMap方法如下图所示:

本文详细解释了flatMap与map在RDDAPI中的定义与用法,通过示例对比两者如何处理数据,flatMap在应用函数后会将结果扁平化。

559

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



