我有2个节点,复制因子= 1,这意味着每个节点将有1组数据副本。
基于上述描述,当我使用murmur3partitioner时,
我的意图是制作一个副本,并且两个节点都应该独立地服务请求,而不需要相互通信。
发布于 2018-02-08 18:42:05
首先,请试着在每个帖子中只问一个问题。
我有2个节点,复制因子= 1,这意味着每个节点将有1组数据副本。
不正确。RF=1表示整个集群将有1份数据副本。
节点之间会共享数据吗?比如node1中50%的数据和节点2中50%的数据?
这就是它将努力做的事情。请注意,这可能不太准确。大概是49/51。
当我将请求读取到节点1时,它是否会与节点2内部连接以保持一致性?
有了RF=1,就不会了。基于分区键的散列令牌值,它将仅指向包含数据的节点。
例如,对于具有两个节点的RF=2,它将取决于为您的操作设置的一致性级别。一读一读总是只读一个副本。在仲裁时读取将始终从2个具有两个节点的副本中读取(毕竟,仲裁2等于2)。任何读取都需要所有副本的响应,如果它们不同意,则启动读取修复。
请注意,您不能强迫您的驱动程序连接到特定的Cassandra节点。您可以提供一个端点,但它会通过流言找到另一个端点,并根据需要使用它。
https://stackoverflow.com/questions/48691654
复制相似问题