查看数据文件夹,我注意到CF的以下文件。几个问题 - 每个文件是什么?什么是1 ... 6? 1到6中哪一个包含CF的最终(全部)数据?
<cf name>-g-1-Compacted
<cf name>-g-1-Data.db
<cf name>-g-1-Filter.db
<cf name>-g-1-Index.db
<cf name>-g-1-Statistics.db
...
<cf name>-g-6-Compacted
<cf name>-g-6-Data.db
<cf name>-g-6-Filter.db
<cf name>-g-6-Index.db
<cf name>-g-6-Statistics.db
答案 0 :(得分:9)
这些文件是与SSTable相关的SSTable和元数据。以下是每个文件的简要说明(取自Cassandra源:io / sstable / Component.java)
带有* -Compacted的SSTable标记为删除。当JVM执行GC或Cassandra检测到系统磁盘空间不足时,将异步清理这些文件。
数字表示sstable的生成(较大的是较新的)。至于哪一个 all 数据,在正常情况下,您的数据可以分布在多个SSTable和内存中。您可以使用nodetool刷新列族,然后运行主压缩以生成一个包含该SSTable的所有数据的文件(假设您没有向该列族写入任何其他内容)。
答案 1 :(得分:1)
关于psanford答案的一些有用的额外信息可以在上找到 Cassandra SSTable Format Version Numbers,其中更详细地解释了命名约定(它取决于版本)。