我读到了 Cassandra 2 的轻量级事务。这样写的一致性级别是always在法定人数?这是否意味着即使我有一个包含 100 个节点的多数据中心设置,也会涉及整个集群的仲裁(所有数据中心的行副本的大多数)?这会不会很慢并且不会影响可用性吗?
我们可以做到 LOCAL_QUORUM 或 EACH_QUORUM 一致性吗?如果跨多个数据中心复制的数据的写入者始终仅源自特定数据中心,则这将是首选。
轻量级事务的建议一致性级别是 SERIAL。然而在幕后,SERIAL 甚至比 QUORUM 更糟糕,因为它是一个多阶段的 QUORUM。正如您所说,当您有多个 DC 时,情况可能会变得难以处理 - Datastax 估计“有效地降低到正常水平的三分之一”.
有一个 LOCAL_SERIAL 非常适合所有 DC 都从特定 DC 接收数据的情况。
您可以在这里找到更多信息:
轻量级交易 http://www.datastax.com/dev/blog/lightweight-transactions-in-cassandra-2-0
线性化一致性 http://www.datastax.com/documentation/cassandra/2.0/cassandra/dml/dml_tunable_consistency_c.html
HTH,卡洛
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)