为什么我无法获得对全局二级索引的一致读取?
我有以下设置:
表格:tblUsers(id为哈希)
全球二级索引:(tblUsersEmailIndex电子邮件为哈希,id为属性)
全局二级索引:(tblUsersUsernameIndex用户名为哈希,ID为属性)
我查询索引以检查是否存在给定的电子邮件或用户名,因此我不创建重复的用户。
现在,问题是我无法对索引进行一致的读取。但是为什么不呢?这是我实际上需要最新数据的少数情况之一。
根据AWS文档:
关于全局二级索引的查询仅支持最终一致性。
在正常情况下,表数据的更改会在不到一秒钟的时间内传播到全局二级索引。但是,在某些不太可能的故障情况下,可能会出现更长的传播延迟。因此,您的应用程序需要预见并处理以下情况:对全局二级索引的查询返回的结果不是最新的。
但是我该如何处理这种情况?如何确定给定的电子邮件或用户名不存在于数据库中?
asp.net amazon-web-services amazon-dynamodb asp.net-mvc-5 asp.net-identity