如何在列出对象时更改 AWS S3 V2 Java api 的 1000 个限制 [对于具有超过 10 亿个对象的 Bucket]?
How to change AWS S3 V2 Java api's limit of 1000 while listing objects [For Bucket having more than 1 Billion objects]?
我正在做一个项目,我需要从 Amazon S3 存储桶下载密钥,该存储桶有超过 10 亿个对象。我使用 Java V2 API 编写了代码,但它无济于事,因为它一次只下载 1000 个密钥。从这个桶中获取所有密钥的列表需要几天时间。有没有更快的方法来获取所有键列表。
我已经检查了与此主题相关的其他答案,但没有帮助。
谢谢
我们在处理大量对象时遇到了同样的问题。
我们在他们的对象名称中遵循了 10 个增量的模式时间戳。看起来像这样,
s3://bucket-name/timestamp/actualobject.extension
Eg.,
s3://mys3bucket/1506237300/datafile001.json
当你遍历时,我有并行线程 运行 每个时间戳以 15 分钟为增量,所有内容都读取得非常快。
解决的关键方法是找出您在存储这些对象时使用的模式,并根据这些模式列出对象名称。
希望对您有所帮助。
我正在做一个项目,我需要从 Amazon S3 存储桶下载密钥,该存储桶有超过 10 亿个对象。我使用 Java V2 API 编写了代码,但它无济于事,因为它一次只下载 1000 个密钥。从这个桶中获取所有密钥的列表需要几天时间。有没有更快的方法来获取所有键列表。
我已经检查了与此主题相关的其他答案,但没有帮助。
谢谢
我们在处理大量对象时遇到了同样的问题。
我们在他们的对象名称中遵循了 10 个增量的模式时间戳。看起来像这样,
s3://bucket-name/timestamp/actualobject.extension
Eg.,
s3://mys3bucket/1506237300/datafile001.json
当你遍历时,我有并行线程 运行 每个时间戳以 15 分钟为增量,所有内容都读取得非常快。
解决的关键方法是找出您在存储这些对象时使用的模式,并根据这些模式列出对象名称。
希望对您有所帮助。