【发布时间】:2021-09-28 21:04:19
【问题描述】:
我在 Amazon DynamoDB 中有经常更新/添加行的信息(通过从 Kinesis Stream 接收事件并使用 Lambda 处理这些事件来更新)。
我想为其他团队提供一种通过 Athena 查询该数据的方法。 它必须尽可能实时(接收事件和查询 Athena 之间的时间,包括新的/更新的信息)。 最好/最优化成本的方法?
我知道一些选项:
- 定期扫描表并将信息放入Athena。这将非常昂贵,而且不是实时的。
- 开始将原始事件也放入 S3,而不仅仅是 DynamoDB,并制作一个仅扫描新记录的胶水爬虫。这将更接近实时,但我不知道如何处理重复事件。 (信息在 DynamoDB 中经常更新,它会更新旧记录)。也不确定这是否是最好的方法。
- 也许直接从 lambda 更新数据目录?不确定这是否可能,我对 aws 的技术堆栈还是新手。
有更好的方法吗?
【问题讨论】:
标签: amazon-web-services amazon-dynamodb aws-glue amazon-athena