首页 > 解决方案 > 数据未在 Cassandra 中跨集群分布

问题描述

我们正在使用一个 3 节点集群 REPLICATION = {'class':'SimpleStrategy' , 'replication_factor':1 }

但是当我们插入数据时,所有三个节点中都存在同一行(当我在每个节点上单独运行时看到它)

当我运行 nodetool status (我看到下面):

--  Address        Load       Tokens       Owns (effective)  Host ID                               Rack
UN  172.31.46.89   6.43 MiB   256          32.8%             2db6dc5c-9d05-4dc7-9bf5-ea9e3c406267  rack1
UN  172.31.47.150  13.17 MiB  256          32.1%             eb10cc48-6117-427c-9151-48cb6761a5e6  rack1
DN  172.31.45.131  12.73 MiB  256          35.1%             cc33fc04-a02f-41e2-a00b-3835a0d98cb5  rack1

谁能帮我理解为什么所有节点中都存在数据???

标签: cassandradistributed-computingdistributeddistributed-system

解决方案


Cassandra 是无主的,当您对集群中的任何节点进行查询时,它将请求适当的副本来回答您的查询。数据不会存储在 RF=1 的所有节点上。如果真的想验证它,请查看您的data/keyspace/table目录并在数据文件上使用 sstabledump。


推荐阅读