【发布时间】:2018-03-20 03:10:15
【问题描述】:
在阅读 Datastax 教程时,我了解到 1)较低的一致性级别读取和写入更快,而如果我们使用较高的一致性级别,则读取和写入的时间要长得多 2) 较低的一致性级别也保证了数据的高可用性。
我的问题是 如果较低的 CL 是好的,那么我们总是可以将 CL 设置为 ONE, 为什么我们需要 QUORUM 和 ALL 一致性级别?
【问题讨论】:
-
低一致性并不能保证数据的高可用,它保证了集群的高可用。例如,如果您的复制因子为 3,那么在一致性级别为 1 的情况下,您可能会丢失 2 个副本并仍然留在游戏中。如果您从客户端的角度需要高一致性,同时容忍可用性问题,您应该使用 Quorum。如果您始终按 quorum 读写,您将克服 cassandra 的最终一致性(== 不保证一致性)。
-
如果锤子好,我为什么需要锯子?这一切都是为了使用正确的工具来完成工作。或者,正如我们的英国朋友如此富有诗意地表述的那样,“课程用马”。
标签: cassandra