【问题标题】:Spark Write to S3 Storage OptionSpark 写入 S3 存储选项
【发布时间】:2018-02-23 16:12:00
【问题描述】:

我正在将 Spark 数据帧保存到 S3 存储桶。保存文件的默认存储类型是标准。我需要它是 STANDARD_IA。实现这一目标的选择是什么。我查看了 spark 源代码,在 https://github.com/apache/spark/blob/branch-2.1/sql/core/src/main/scala/org/apache/spark/sql/DataFrameWriter.scala 中没有发现 spark DataFrameWriter 的此类选项

以下是我用来写入 S3 的代码:

val df = spark.sql(<sql>)
df.coalesce(1).write.mode("overwrite").parquet(<s3path>)

编辑:我现在正在使用 CopyObjectRequest 来更改创建的 parquet 的存储类型:

val copyObjectRequest = new CopyObjectRequest(bucket, key, bucket, key).withStorageClass(<storageClass>)
s3Client.copyObject(copyObjectRequest)

【问题讨论】:

    标签: apache-spark amazon-s3


    【解决方案1】:

    无法使用 S3A 连接器;在HADOOP-12020 中,由一名志愿者来实施所有测试。 FWIW,测试将是困难的部分。我不知道亚马逊自己的连接器。

    为什么不直接为存储桶定义一个生命周期,然后每晚都移动一些东西?

    【讨论】:

    • “为什么不直接为存储桶定义一个生命周期,然后每晚把东西移过来?” - 这是因为您只能在 30 天后将对象移动到 OneZone AI。用 OZ-IA 直接上传很有意义
    • aah,这与冰川的用例略有不同。如果有办法在上传期间标记该类别的文件,那将是可行的。像往常一样:oss 代码库的贡献者应该添加新的测试并声明他们针对哪个端点运行当前测试......
    猜你喜欢
    • 1970-01-01
    • 2021-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-14
    • 1970-01-01
    • 2019-03-08
    • 1970-01-01
    相关资源
    最近更新 更多