AWS 上计数值的最佳临时存储选项(最好不是数据库,而是服务),而 运行 SQS 触发函数?

Best temporary storage option for count value (preferably not a DB but a service) on AWS while running a SQS triggered function?

情况

目前,我正在使用 Amazon SQS 队列,该队列会触发 Lambda 函数以在新消息到达队列时对其进行处理。这些 Lambda 函数在失败时被移至 DLQ(死信队列)。

为了给 SQS 队列播种,我每天使用 运行s 的 CRON 并将可用作业插入队列。

我想在 CRON 当天插入的所有新作业的处理完成或已处理后发布摘要 alert/email,以及有关成功、失败和总作业数的详细信息最初是在那一天发行的。

问题:

由于 Lambda 单独运行 运行,而且我想保持这种状态,我想知道最好使用什么服务来存储临时计数值(至少总计数、成功计数和失败计数中需要三个计数中的两个)?

我在考虑 DynamoDB,但是每个 DB 似乎都太过分了,而且也不划算。对于此类解决方案,S3 似乎也不是最 practical/preferred。我还可以使用带有标识符 "count" 的 SQS(因为它的 "storage" 在某种程度上是为此类数据存储相对较小的情况而设计的),每个 Lambda 函数都会更新该标识符,但知道哪个 Lambda 函数是最后一个需要检查整个队列,这似乎过于复杂了。

想到的任何其他 AWS 服务?

这是一个很好的 listing of Storage Options in the AWS Cloud(2013 年,但也包括一些今天可用的选项)。

AWS Systems Manager Parameter Store 可以用作 'mini-database'.

它需要 AWS 凭据才能访问(这将可用于 Lambda 函数或您使用的任何代码 运行 执行此检查)但没有运营成本。

来自PutParameter - AWS Systems Manager

Parameter Store offers a standard tier and an advanced tier for parameters. Standard parameters have a content size limit of 4 KB and can't be configured to use parameter policies. You can create a maximum of 10,000 standard parameters for each Region in an AWS account. Standard parameters are offered at no additional cost.

如果多个进程尝试同时更新参数,您可能 运行 会遇到问题,但希望您的用例非常简单。