flatmapValuesとflatmapは似ていますが、人々自身が、それはの値の関数に基づいており、より多くのペアになるためにどのようにペアキー値であります
ヴァル= sc.parallelize(リスト((1,2)、(3,4)、(5,6))) ヴァル・B = a.flatMapValuesは(x => xに1) b.collect.foreach(のprintln( _)) / *结果 (1,1) (1,2) (3,1) (3,2) (3,3) (3,4) (5,1) (5,2) (5,3 ) (5,4) (5,5) (5,6) * /
配列に値のペアに入れ、次いで、K-V1のK-V2 ...
ヴァルリスト=リスト(( "mobin"、22)、(23)、 "lufei"(、)、20 "KPOP") ヴァルRDD = sc.parallelize(リスト) ヴァルmapValuesRDD = rdd.flatMapValues(X =>配列( X、 "男性")) mapValuesRDD.foreach(のprintln) 输出: (mobin、22) (mobin、オス) (KPOP、20) (KPOP、オス) (lufei、23) (lufei、オス)
[コントラスト]の違い:mapValuesが出力されます
(mobin、リスト(22、男性))
(KPOP、リスト(20、男性))
(lufei、リスト(23、男性))