首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种方法可以通过最后一次使用气流来列出S3对象?

是否有一种方法可以通过最后一次使用气流来列出S3对象?
EN

Stack Overflow用户
提问于 2022-01-19 01:07:10
回答 1查看 301关注 0票数 1

到目前为止下面的代码

代码语言:javascript
复制
t1 = S3ListOperator(
    task_id='list_s3_files',
    bucket='mybucket',
    prefix='v01/{{ds}}/',
    delimiter='/'
)

然后使用S3CopyObjectOperator复制最新的文件。

EN

回答 1

Stack Overflow用户

发布于 2022-01-19 01:22:42

不是一种特殊的“气流方式”,但您可以使用PythonOperator来完成这一任务。

代码语言:javascript
复制
all_objects = boto3.resource('s3').bucket(your_bucket_name).objects.iterator()
sorted_objs = sorted(all_objects, key=lambda o: o.last_modified)
latest_file = sorted_objs[-1]

虽然这不是一个“工业解决方案”,因为它需要提取所有的文件只是为了排序。S3不支持这样的“查询”。

如果您有一种可预测的方法来分割文件(例如,每天,每小时),那么就不会那么糟糕了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70764205

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档