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