了解 nodetool cfstats 中的 "Number of keys"

Understanding "Number of keys" in nodetool cfstats

我是 Cassandra 的新手,在这个例子中,我使用的集群有 1 个 DC 和 5 个节点,NetworkTopologyStrategy 的复制因子为 3。

   Keyspace: activityfeed
            Read Count: 0
            Read Latency: NaN ms.
            Write Count: 0
            Write Latency: NaN ms.
            Pending Tasks: 0
                    Table: feed_shubham
                    SSTable count: 1
                    Space used (live), bytes: 52620684
                    Space used (total), bytes: 52620684
                    SSTable Compression Ratio: 0.3727660543119897
                    Number of keys (estimate): 137984
                    Memtable cell count: 0
                    Memtable data size, bytes: 0
                    Memtable switch count: 0
                    Local read count: 0
                    Local read latency: 0.000 ms
                    Local write count: 0
                    Local write latency: 0.000 ms
                    Pending tasks: 0
                    Bloom filter false positives: 0
                    Bloom filter false ratio: 0.00000
                    Bloom filter space used, bytes: 174416
                    Compacted partition minimum bytes: 771
                    Compacted partition maximum bytes: 924
                    Compacted partition mean bytes: 924
                    Average live cells per slice (last five minutes): 0.0
                    Average tombstones per slice (last five minutes): 0.0

这里的键数是什么意思? 我的集群中有 5 个不同的节点,在分别对每个节点执行以下命令后,我得到相同 table.

的不同统计信息
nodetool cfstats -h 192.168.1.12 activityfeed.feed_shubham

根据上面的输出,我可以解释 cfstats 为我提供了有关每个节点上数据物理存储的统计信息。

我浏览了下面的文档 http://www.datastax.com/documentation/cassandra/2.0/cassandra/tools/toolsCFstats.html 但是我没有在里面找到键数的解释。

我正在使用 RandomPartitioner。

这个键和分区键有什么关系吗?

我的 table 中有大约 200000 条记录。

这个值似乎表示所有本地sstables中columns/cells的总数。我想它应该被命名为 "SSTable cell count" 就像相应的 memtable 值一样。但是,由于 sstables 在压缩之前存储冗余数据,因此该值不一定对应于作为结果集的一部分返回的实际列数。

键的数量表示 table 在该节点上的分区键的数量。不过,这只是一个估计,并且基于您的 C* its more accurate 版本。在 2.1.6 之前,它对每个 sstable 索引文件中列出的分区数求和。之后它合并了每个 sstable.

存储的数据草图 (hyperloglog)