我有一个Keyspace
和一个RF=2
。现在,在刷新数据之前,它位于memtables
中,并且在Cassandra中每个表/列族只有一个memtable
。
由于,cassandra中每个列族只有一个内存表,我假设RF = 2。这是否意味着该内存表每行有2个副本?
此外,如果我做nodetool flush
,则所创建的sstable的每个记录是否也有两个副本?
答案 0 :(得分:0)
复制因子2表示数据将存储在2个节点上。
写入路径如下:
因此,在写路径的某个时间点,您的数据将位于内存表中,但由于rf = 2,这意味着数据将位于不同的内存表中,因为每个内存表均位于不同的节点上。 / p>
同样适用于nodetool刷新。由于每个稳定表都在不同的节点上,因此数据将被刷新到不同的稳定表。