Amazon dynamodb DynamoDB中的监测表变化

Amazon dynamodb DynamoDB中的监测表变化,amazon-dynamodb,amazon-dynamodb-streams,Amazon Dynamodb,Amazon Dynamodb Streams,我使用AWS DynamoDB来存储信息。 我有两台运行不同代码的机器,它们访问数据库中的信息 其中一台机器正在写入数据库,另一台正在读取。 由于第二个不知道数据库中的信息是否已更改,因此我需要以某种方式监视数据库中的更改。 我知道有一种叫做dynamo streams的东西可以为您提供有关数据库中所做更改的信息,我已经实现了该代码 问题如下:如果我一直监视数据库,我需要一直查询这个流,比如说每分钟查询一次。 这样做与每分钟实际查询数据库有什么区别? 它的效率更高吗? 成本是否更低(资源、资金)

我使用AWS DynamoDB来存储信息。 我有两台运行不同代码的机器,它们访问数据库中的信息

其中一台机器正在写入数据库,另一台正在读取。 由于第二个不知道数据库中的信息是否已更改,因此我需要以某种方式监视数据库中的更改。 我知道有一种叫做dynamo streams的东西可以为您提供有关数据库中所做更改的信息,我已经实现了该代码

问题如下:如果我一直监视数据库,我需要一直查询这个流,比如说每分钟查询一次。 这样做与每分钟实际查询数据库有什么区别? 它的效率更高吗? 成本是否更低(资源、资金)? 是否有其他更有效的方法从代码中监视特定表中数据库的更改


任何帮助都将不胜感激,谢谢

我见过的大多数人都是这样做的,他们使用DynamoDB Streams+Lambda来获得最佳效果。一定要看看这个话题

在的文档中也有一个例子


DynamoDB流更高效,更接近实时。可以这样考虑使用Lambda,就像在关系数据库中使用触发器一样。当模式定义得很好,人们一直在使用它们时,为什么还要额外努力呢?

添加Lambdas和可能的SNS或Kinesis配置可以被视为“额外努力”。这取决于一个人在AWS生态系统中的归属。如果已经有一个在那里-没问题。如果只需要从外部使用对DynamoDB表的更改,那么AWS SDK v2似乎没有解决方案。有一个是sdkv1(客户端的Kinesis适配器)。感谢链接-发现它们很有用!