java可以同时生成多个RDD
原始fileRDD是由
sc.wholeTextFiles(path)
fileRDD的关键是文件名,值是文件内容。 当我遍历一个文件内容(值)时,我可以得到很多信息。所以我想在遍历一个文件后生成多个RDD。例如:我定义了三个类
public class Interface implements Serializable
public class VPNInstance implements Serializable
public class Equipment implements Serializable
使用映射操作后:
fileRDD.map(traverse function)
返回
RDD<Interface>, RDD<VPNInstance> and RDD<Equipment>
同时。否则,我需要遍历文件内容三次以生成三个RDD
那么,有没有一种同时生成多个RDD的解决方案
# 1 楼答案
当然,编写一个遍历函数来创建如下对象:
映射数据集后,使用
cache()
或persist()
避免重新计算