【问题标题】:Write RDD[OmnitureData] to S3将 RDD[OmnitureData] 写入 S3
【发布时间】:2017-12-28 07:29:20
【问题描述】:

我有一个 RDD,其中包含我的自定义类 OmnitureData 的对象类型。 OmnitureData 数据包含 1000 个数据变量。我想将数据写入 S3。

data: RDD[OmnitureData]
data.saveAsTextFile(path)

在 S3 中,我将数据视为:

OmnitureFeedOutputEntry@5655c68b
OmnitureFeedOutputEntry@kgfwe77c
OmnitureFeedOutputEntry@4rjkks8f
OmnitureFeedOutputEntry@57bfgk6d
OmnitureFeedOutputEntry@646lk6sd

如何以可以看到 OmnitureData 成员实际数据的方式存储它?

【问题讨论】:

    标签: scala apache-spark amazon-s3 rdd


    【解决方案1】:

    找到了解决办法。

    def writeOnS3(data: RDD[OmnitureFeedOutputEntry], path: String)= {
    try {
      val finalData: RDD[String] = data.map(x => {
        implicit val formats = Serialization.formats(NoTypeHints)
        write(x)})
      finalData.saveAsTextFile(path)
      logger.info("task=writeOnS3, status=success")
    } catch {
      case e: Exception =>  logger.error("task=writeOnS3, status=failure")
    }
    

    }

    【讨论】:

      猜你喜欢
      • 2018-09-10
      • 1970-01-01
      • 2021-06-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-12
      相关资源
      最近更新 更多