【发布时间】:2018-10-14 16:11:47
【问题描述】:
是否可以通过分页以最新创建顺序查询和获取s3存储桶中的文件?
我什至可以将创建时间戳作为后缀存储在我的文件名中。
任何帮助将不胜感激。
【问题讨论】:
标签: amazon-web-services amazon-s3
是否可以通过分页以最新创建顺序查询和获取s3存储桶中的文件?
我什至可以将创建时间戳作为后缀存储在我的文件名中。
任何帮助将不胜感激。
【问题讨论】:
标签: amazon-web-services amazon-s3
2017 年 11 月 29 日,AWS Re:invent AWS 宣布了一项名为 S3 Select 的服务,该服务可在预览版中使用。
S3 Select 是一项新的 Amazon S3 功能,旨在仅提取 您需要来自对象的数据,显着提高性能 并降低需要访问数据的应用程序的成本
还有,
在预览期间,您可以通过可用的 Amazon S3 Select Presto 连接器,使用 AWS Lambda,或从任何其他应用程序使用 S3 选择适用于 Java 或 Python 的 SDK。此预览版可在 美国东部(弗吉尼亚北部)、美国东部(俄亥俄)、美国西部(俄勒冈)、欧洲(爱尔兰)、 和亚太地区(新加坡)AWS 区域
谢谢
【讨论】:
也许这个link 会有所帮助。它使用 boto3 python SDK。
基本上,编写一个函数:
对字典进行排序,然后返回。
def sort_objects_in_bucket_by_timestamp( bucket_name ):
sorted_objects_dict = {}
for curr_obj_attr_dict in s3_client.list_objects_v2( Bucket = bucket_name )['Contents']:
sorted_objects_dict[curr_obj_attr_dict['Key']] = curr_obj_attr_dict['LastModified']
return sorted(sorted_objects_dict.items(), key=lambda x: x[1])
该函数将返回特定存储桶中的对象列表,按“LastModified”时间戳从最旧到最新排序。
如果您不想要 LastModified 时间戳,则更改函数以从存储桶的名称中读取时间戳部分(您说这是可行的),并将该值设为时间戳。
【讨论】: