我想将DynamoDB用于一个大规模的服务,这将被许多用户在一秒钟内访问。我想知道从提供“最终一致”读取的DynamoDb读取数据的正确性。
这个链接http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/APISummary.html说“数据的所有副本的一致性通常在一秒钟内达到”。我还没有尝试过为这种高访问量的数据库测试SQL,但是DynamoDB提供的服务至少看起来并不好。
强一致性读取的代价很高,而且可能需要更多时间,所以我更喜欢普通读取。如果有必要,我将不得不检查强一致性读取。
我有点害怕“最终”这个词。有没有人看到过这样的场景,DynamoDB正在被成功使用,或者反过来,即发现读取的结果不一致?
发布于 2013-06-20 15:00:18
你能更多地谈谈你的用例吗?
对于许多用例,当最终用户只是从表中读出数据时,如果您可以通过使用最终一致的读取来节省50%的读取吞吐量成本,那么数据是否准确并及时更新到second..especially并不是至关重要的。如果您需要一致reads...then,请使用一致读取。
我通常在我的应用程序中使用最终一致的读取,并且从来没有注意到不一致数据的发生。我只在我的应用程序需要时才使用强一致性读取。
https://stackoverflow.com/questions/16782615
复制相似问题