在 CAP 定理的 AP 中,是否有可能(就像在 cassandra 中一样),如果我写入/更新到 cassandra 并立即尝试获取它,是否有可能找不到数据或者我应该读取数据/p 在获取之前暂停(从而允许复制稳定下来)。
有人可以引导我访问人们解决了 cassandra 中的一致性问题的任何链接吗?
最佳答案
Cassandra 可用于提供您所描述的一致性。如果您读取的节点数 (R) 加上写入的节点数 (W) 大于复制因子 (N),则您将在写入后立即读回一个值(假设没有并发写入者)自您写入以来,谁可能会在小窗口中写入稍后的值)。因此只要 R+W>N 你就会得到这种行为。
执行此操作的常见方法是在 CL.QUORUM 上读取和写入,因为这可以提供良好的可用性。您也可以例如在 CL.ONE 处读取并在 CL.ALL 处写入,但如果单个节点发生故障,写入将会失败。
关于java - Cassandra 的一致性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19330262/