Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon dynamodb 生存时间是否会导致DynamoDB全局表中的竞赛条件?_Amazon Dynamodb_Race Condition_Ttl_Amazon Dynamodb Streams - Fatal编程技术网

Amazon dynamodb 生存时间是否会导致DynamoDB全局表中的竞赛条件?

Amazon dynamodb 生存时间是否会导致DynamoDB全局表中的竞赛条件?,amazon-dynamodb,race-condition,ttl,amazon-dynamodb-streams,Amazon Dynamodb,Race Condition,Ttl,Amazon Dynamodb Streams,我将把现有的DynamoDB数据库从一个AWS区域中的表迁移到四个区域中的全局表。这里有一个问题:一些服务依赖于当前数据库中的生存时间(ttl)功能,需要在新的全局表中启用ttl。在多个表副本上启用ttl可能会出现问题。如果ttl在一个区域中运行,那么该区域的事件流与其他区域中的ttl删除之间现在存在竞争条件。如果另一个复制副本在另一个复制副本的事件流到达之前删除了自己的记录,会发生什么?第二次删除尝试是否因为记录已丢失而正常失败?也许AWS已经解决了这个问题,但我找不到任何关于这个主题的文档或

我将把现有的DynamoDB数据库从一个AWS区域中的表迁移到四个区域中的全局表。这里有一个问题:一些服务依赖于当前数据库中的生存时间(ttl)功能,需要在新的全局表中启用ttl。在多个表副本上启用ttl可能会出现问题。如果ttl在一个区域中运行,那么该区域的事件流与其他区域中的ttl删除之间现在存在竞争条件。如果另一个复制副本在另一个复制副本的事件流到达之前删除了自己的记录,会发生什么?第二次删除尝试是否因为记录已丢失而正常失败?也许AWS已经解决了这个问题,但我找不到任何关于这个主题的文档或问题论坛

一种可能的解决方法是在一个区域启用ttl,并让来自该副本的流管理其他副本中的ttl,但我并不真正喜欢这种解决方案,因为区域中断可能会完全停止ttl删除。拥有全局表的主要原因之一是防止区域性停机