amazon-web-services - 如何为巨大的静态 dynamodb 表中的每个项目触发 lambda
问题描述
我有一个包含近 200k 个项目的 dynamodb 表。我需要为其中的每个项目触发一个 lambda(将每个项目作为输入发送到 lambda)。我想对表中的所有项目每 x 小时执行一次。表中的数据每 5 天左右更改一次。
有没有一种无服务器的方法可以通过 SQS 等自动将所有项目获取到 lambda?
我不能让 lambda 扫描整个表,因为 lambda 处理它太多(给定 300 秒的限制等)。
谢谢,维诺德。
解决方案
扫描和更改 Dynamodb 中的所有数据都不可行。
您可以将所有 dynamodb 键保存在像 redis 这样的缓存中,可以有一个单独的作业从 redis 获取键并放入 lambda 正在侦听的 sqs。redis 键可以使用 dynamodb 流保持最新。
推荐阅读
- sql-server - SQL Server 中年度数据的平均值
- php - 对数组整数值求和并合并重复的非整数值
- ruby-on-rails - 使用 Papertrail 的 attribute_name_was
- python - 在 Django 中将 JWT 与自定义用户模型一起使用时遇到问题
- javascript - 如何使用 JQuery 从 RSS 提要中提取图像?
- visual-studio - 在 IISExpress 上启动 localhost:远程设备或资源不接受连接
- android - 片段的新活动?
- node.js - 我想通过单击按钮向订阅我的网页的用户发送电子邮件
- php - PHP Composer Autoload 找不到类错误
- powerbi - 如何将来自两个查询的汇总数据加入 DAX Power BI 中的新表中