我在S3中存储的客户资产是一个与帐户相关的值,作为每个资产路径中的第一个元素,例如
我想查找帐户所有资产消耗的存储总量 - 上述示例中路径前缀为“account-1”的所有资产。我有一个工作解决方案,它迭代S3查询返回的ObjectSummary对象,但它对我的需求来说太慢了,因为它为每个对象执行HTTP请求。
我想知道是否可以在S3查询中执行类似于您可能对DynamoDB执行的计算 - 请求S3执行计算并返回总计。
注意:使用aws-sdk-ruby
答案 0 :(得分:0)
我应该提到我们使用旧的1.x版本的aws-sdk-ruby,所以我的回答可能与您在当前版本的S3 sdk中找到的不同。
我能够使用AWS :: S3 :: Client#list_objects方法并迭代这些结果。虽然这不是我所希望的(计算仍在本地执行),但至少它避免了在迭代S3 :: Bucket#对象调用的结果时调用的S3媒体的HTTP HEAD请求。 / p>
答案 1 :(得分:0)
S3发布了一项新功能S3 Select,它允许您使用SQL查询S3存储桶。这是发布公告: