map和flatmap的区别 map和flatmap的区别?
map和flatmap的区别?
1. map的功能很容易理解,即通过函数操作将RDD中的元素逐个映射到另一个RDD中。flatmap的操作是将函数应用于RDD中的每个元素,并用返回的迭代器的所有内容形成一个新的RDD。通常用于分词。2在spark中,map函数将对每个输入执行指定的操作,然后为每个输入返回一个对象;而flatmap函数是两个操作的集合-“展平前映射”:操作1:与map函数相同:对每个输入执行指定的操作,然后为每个输入返回一个对象。操作2:最后合并一个对象的所有对象
在spark中,map函数将对每个输入执行指定的操作,然后为每个输入返回一个对象;而flatmap函数是两个操作的集合,即“展平前映射”。Map()是为RDD中的每个元素使用函数,并用返回的值形成一个新的RDD。Flatmap()将函数应用于RDD中的每个元素,并使用返回的迭代器的所有内容形成一个新的RDD。通过这种方式,我们得到一个RDD,它由每个列表中的元素组成,而不是一个列表。有些人很尴尬。看看这些例子。输入结果输入结果
map:转换RDD的每个元素
flatmap:转换RDD的每个元素,然后展平(即将所有对象合并为一个对象)
例如
//data有两行数据,第一行是a,B,C,第二行是1,2,3
斯卡拉>data.map文件(line1=> line1.split(“,”).collect()
res11:Array[Array[String
=数组(Array(a,b,c),Array(1,2,3))
scala>data.flatMap格式(line1=> line1.split(“,”).collect()
res13:Array[String]=Array(a,b,c,1,2,3)
map和flatmap的区别 richflatmapfunction flatmap高级用法
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。