AWS S3 列表键以字符串开头

2024-04-25

我在 AWS Lambda 函数中使用 python 列出以特定 id 开头的 s3 存储桶中的键

for object in mybucket.objects.all():
            file_name = os.path.basename(object.key)
            match_id = file_name.split('_', 1)[0]

问题是,如果 s3 存储桶有数千个文件,则迭代效率非常低,有时 lambda 函数会超时

这是一个示例文件名

https://s3.console.aws.amazon.com/s3/object/bucket-name/012345_abc_happy.jpg

我只想迭代键名称中包含“012345”的对象 关于我如何实现这一目标的任何好的建议


这是您需要解决的方法。

S3 将所有内容存储为对象,并且没有文件夹或文件名。这一切都是为了用户的方便。

aws s3 ls s3://bucket/folder1/folder2/filenamepart --recursive

将获取与该名称匹配的所有 s3 对象名称。

import boto3
s3 = boto3.resource('s3')
my_bucket = s3.Bucket('bucketname')
for obj in my_bucket.objects.filter(Prefix='012345'):
    print(obj)

为了加快列表速度,您可以并行运行多个脚本。

希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AWS S3 列表键以字符串开头 的相关文章

随机推荐

  • Arc4随机模偏置

    根据本文档 https developer apple com library mac documentation darwin reference manpages man3 arc4random 3 html arc4random un
  • ggplot2、geom_bar、闪避、条形顺序

    我想订购道奇酒吧geom bar 你知道如何处理吗 My code ttt lt data frame typ rep c main boks cuk 2 klaster rep c 1 2 3 ile c 5 4 6 1 8 7 ggpl
  • PHP password_hash 检查两个哈希值

    如果我有两个使用创建的密码哈希password hash http www php net manual en function password hash php函数 我如何判断它们是否来自相同的基本密码 我知道它每次都使用不同的盐 我没
  • 如何使用 SDK 3.1 指定用户用于发布的应用程序名称(通过应用程序名称)

    使用新的 Facebook SDK 3 1 和 iOS 6 有 2 种 实际上 3 种 发帖方式 似乎新的趋势是有更多的选择 使其更简单 天哪 这是一个 SLComposeViewController fbPost SLComposeVie
  • C# Windows Phone - xaml ListBox.ItemTemplate 中的对齐方式

    我想做一个简单的列表框 每行应包含 2 个控件 一个左对齐 另一个右对齐 仅此而已 我尝试了多种方法但没有任何效果 我的代码如下
  • 如何用js添加表格?

    我想通过 JavaScript 在我的 html 表格上添加一个表格 我已经尝试过使用appendChild and insertBefore方法 但这些方法都不起作用 这是我的 JavaScript var utilisateur id
  • 二维数组与一维数组

    我已经阅读了这个问题二维数组与一维数组的性能 https stackoverflow com questions 1242705 performance of 2 dimensional array vs 1 dimensional arr
  • 迭代集合元素

    我已经打开了实验性 ECMAscript 6 功能的 Chrome 标志 其中之一是Set 据我了解 详细信息Set得到了规范作者的广泛同意 我创建一个集合a并添加字符串 Hello a Set a add Hello 但我如何迭代的元素a
  • 使用 HTML 页面的 css 格式显示标签导出到 Excel

    我在我的网络应用程序中使用显示标签 我成功地将显示标签显示的数据导出到Excel 问题是我还希望标题和数据行样式以及 css 包含在导出的 Excel 中 例如标题行为粗体 背景为灰色 数据行中的列根据值着色 但这并没有导出到 Excel
  • 我可以重写 C# 中的属性吗?如何?

    我有这个基类 abstract class Base public int x get throw new NotImplementedException 以及以下后代 class Derived Base public int x get
  • BigInteger 使用了多少空间?

    BigInteger 对象通常使用多少字节的内存 BigInteger 内部使用int 来表示您使用的巨大数字 因此它确实取决于您存储在其中的数字的大小 The int 如果当前数量不能动态适应 则会增长 要获取您的字节数BigIntege
  • UITableView 未更新

    我正在使用核心数据模型和 UITableViewController 表视图 我的模型似乎工作得很好 但是当我向模型添加实体时 我的表视图没有更新 我相信我的模型有效的原因是 当我添加一个实体时 在运行时视图中不会显示任何内容 但是如果我剪
  • opencv中如何使用腐蚀和膨胀函数?

    我试图通过侵蚀和膨胀过程消除数字周围的东西 我尝试过 但什么也没发生 我更改这些值只是为了看看是否会改变某些内容 但同样 什么都没有改变 图像继续如上面的链接所示 这个参数怎么样 我阅读了文档但不太明白 正如你所看到的 我在函数中猜测 我究
  • App Indexing Android - “”中的“”不起作用

    我们正在努力解决谷歌的应用程序索引主题 该计划是在网站的 区域中插入一个标签 从 google 获取 如下所示 android app com testApp myCustomScheme car ford 然后用智能手机访问该网站 应用程
  • 如何在 AWS CloudWatch 中解析混合文本和 JSON 日志条目以进行日志指标筛选

    我正在尝试解析文本和 JSON 混合的日志条目 第一行是文本表示 接下来的行是事件的 JSON 负载 可能的示例之一是 2016 07 24T21 08 07 888Z INFO Command completed lessonrecord
  • 谷歌地图定位是如何工作的?

    我的问题是谷歌地图或移动 GPS 如何找到我的当前位置 读完本文后我的高层次理解article http www physics org article questions asp id 55就是 GPS接收器通过这些卫星获取位置坐标 该位
  • 如何将数组(在 VB6 中通过引用)传递给 C\C++ *.dll 子例程?

    我需要将一个空的变体数组传递给一个用 C 编写的 DLL 并且在所有 Windows 版本上都可用 并且 C 代码 我无法控制也无法编辑 将用它的一些返回值填充空的变体数组价值观 基本上 当我尝试这样做时 ByRef 数组在应包含函数 子调
  • 如何使用 php 注销后终止会话

    我看到了以下问题并尝试调整部分答案 但没有成功 用户按注销并销毁会话后如何禁用后退浏览器按钮 我知道这个话题已经被广泛讨论 人们讨厌 禁用后退按钮 这句话 但是 如果我有一个包含重要信息的数据库 一旦该人注销 我如何防止某人按下后退按钮并返
  • 使用 sprintf 打印元素数量可变的向量

    在下面的代码中 我可以打印向量中的所有元素item用空格分隔为 item 123 456 789 sprintf d d d item ans 123 456 789 我怎样才能做到这一点而不必输入那么多 d作为元素的数量item 最简单的
  • AWS S3 列表键以字符串开头

    我在 AWS Lambda 函数中使用 python 列出以特定 id 开头的 s3 存储桶中的键 for object in mybucket objects all file name os path basename object k