我有一个由3个节点组成的Cassandra群集,并且我使用SimpleStrategy和ReplicationFactor 1创建了一个键空间'abcd'。由于我将RF选择为1,因此我假定对node-1的任何写入都不应在其他节点上复制。 2个节点。
但是当我在键空间/表中插入一条记录时,我看到这一行被插入到集群的所有节点中。
我的问题是,因为我已为此密钥空间选择RF作为1,所以我希望该集群中只有一个节点(即node-1)应该拥有此数据,而不是其余节点。
如果我的理解错误,请纠正我。
答案 0 :(得分:3)
由于您的RF为1,因此您的数据仅被写入一个节点。但是,您也可以通过从其他节点运行选择查询来访问该数据,因为Cassandra集群中的任何节点都可以访问集群中存在的所有数据。
如果运行查询的节点没有该数据,它将从其他节点获取数据并显示结果。
您可以通过运行nodetool getendpoints来检查哪个确切的节点具有数据。
您将需要提及您的键空间,表名和分区键。