【问题标题】:generate multiple RDDs at the same time同时生成多个RDD
【发布时间】:2016-11-25 03:42:30
【问题描述】:

原始文件RDD由

创建
sc.wholeTextFiles(path) 

fileRDD的key是文件名,value是文件内容。 当我遍历一个文件内容(值)时,我可以获得很多信息。所以我想在遍历一个文件后生成多个 RDD。例如:我定义了三个类

public class Interface implements Serializable
public class VPNInstance implements Serializable
public class Equipment implements Serializable

使用map操作后:

fileRDD.map(traverse function)

返回

RDD<Interface>, RDD<VPNInstance> and RDD<Equipment>

同时。否则需要遍历文件内容3次生成三个RDD。

那么有没有办法同时生成多个RDD?

【问题讨论】:

    标签: java apache-spark rdd


    【解决方案1】:

    当然,写一个遍历函数来创建这样的对象:

    public class Record implements Serializable {
        private Interface interface;
        private VPNInstance vpnInstance;
        private Equipment equipment;
    }
    

    映射数据集后使用cache()persist() 以避免重新计算。

    【讨论】:

      猜你喜欢
      • 2016-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-11
      • 1970-01-01
      • 1970-01-01
      • 2017-09-29
      • 1970-01-01
      相关资源
      最近更新 更多