Couchbase中REQUEST_PLUS和STATEMENT_PLUS ScanConsistency之间究竟有什么区别?

时间:2017-11-10 08:03:42

标签: couchbase consistency

我无法理解请求和声明之间的差异以及一致性与每个声明的关系。

1 个答案:

答案 0 :(得分:2)

  • RequestPlus确保已将查询时的所有文档编入索引。
  • AtPlus(或StatementPlus)确保已为指定文档建立索引。
    • 这允许读取自己的写入,而不会延迟其他写入。

例如:

  1. B包含一个文档。
  2. SELECT COUNT(1) FROM B->结果为1
  3. 您插入ID为a的文档
  4. 插入另一个ID为b的文档
  5. SELECT COUNT(1) FROM B
    • 具有“无界”(默认)一致性->返回至少1的立即结果。
    • 在具有“ AtPlus”一致性的情况下,指定a发生突变的其他状态->在索引中更新文档2后至少要获得a的结果。
    • 具有“ RequestPlus”一致性->完全追上索引后的3结果。