gpt4 book ai didi

amazon-web-services - 在 S3 上连接文件

转载 作者:行者123 更新时间:2023-12-05 05:08:07 25 4
gpt4 key购买 nike

我们在一个 s3 文件夹中获取多个文件(130K 个文件,合并大小为 2GB)。每个文件都有Json数据,可以是一条记录,也可以是多条记录。我需要将这些文件合并成一个 Json 文件并将其存储在 s3 上。我不想将文件下载到本地机器然后合并。有没有办法使用 AWS SDK for Java 来做到这一点?

最佳答案

实现此目的的最简单方法是使用 Amazon Athena 读取和组合文件。 Athena 是基于 Presto 的托管查询服务可以读取许多不同的文件格式。

步骤流程是:

  • 在 Athena 中创建表定义,定义输入文件格式和输入数据的位置
    • (您可以使用 AWS Glue 爬虫为您执行此操作)
  • 使用CREATE TABLE AS查询源表
    • 这将从源文件中检索数据并将输出写入新位置
    • 您可以指定输出格式和位置

将 Athena 视为 Amazon S3 之上的“查询层”。它从给定 S3 目录中的所有文件读取输入,然后可以将结果输出回 S3。您可以执行一个简单的 SELECT * 来复制所有数据,或者您可以选择通过仅选择所需的字段和条目来操作结果(使用 SELECTWHERE )。

Athena 可以从管理控制台运行,或通过普通的 AWS SDK(例如 Java)触发。

使用 Athena 的好处是不需要下载源文件和上传结果——这一切都将由 Athena 完成。

Athena 根据从磁盘读取的数据量 收费。压缩文件可降低此成本。

关于amazon-web-services - 在 S3 上连接文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58513223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com