Cassandra:sstabledump输出

时间:2018-12-05 10:05:15

标签: database nosql cassandra-3.0

从内存表中刷新数据后,将在Cassandra数据文件夹中创建SS表文件,例如mc1-big-Data.db,mc-1-big-Index.db,mc-1-big-Filter.db等。

当sstabledump命令与以上任何文件一起使用时,控制台上将显示相同的输出。我尝试通过提供mc1-big-Data.db,mc1-big-Summary.db和mc1-big-Statistics.db进行尝试,但是对于所有文件,转储都是相同的。对于columnfamily中的每个SSTable文件,是否都转储了相同的输出?

我提供了我运行的命令以及下面的输出:

sstabledump /var/lib/cassandra/data/db/ind- 
92435570d5ea11e88863fb30b1341a80/mc-5-big-Index.db
WARN  15:00:58,110 Small commitlog volume detected at 
/var/lib/cassandra/commitlog; setting commitlog_total_space_in_mb to 7158.  
You can override this in cassandra.yaml
WARN  15:00:58,179 Small cdc volume detected at /var/lib/cassandra/cdc_raw; 
setting cdc_total_space_in_mb to 3579.  You can override this in 
cassandra.yaml
WARN  15:00:59,874 Only 13.161GiB free across all data volumes. Consider 
adding more capacity to your cluster or removing obsolete snapshots
[
{
 "partition" : {
  "key" : [ "5" ],
  "position" : 0
},
"rows" : [
  {
    "type" : "row",
    "position" : 38,
    "liveness_info" : { "tstamp" : "2018-10-22T12:01:04.857982Z" },
    "cells" : [
      { "name" : "player_name", "value" : "Rohit" },
      { "name" : "runs", "value" : 65 }
    ]
  }
]
},
{
 "partition" : {
  "key" : [ "1" ],
  "position" : 39
 },
 "rows" : [
  {
    "type" : "row",
    "position" : 74,
    "liveness_info" : { "tstamp" : "2018-10-22T11:10:11.419697Z" },
    "cells" : [
      { "name" : "player_name", "value" : "Sachin" },

1 个答案:

答案 0 :(得分:0)

所有名为mc-1-*的文件都构成1 sstable。数据位于mc-1-big-Data.db文件中,其他数据则差不多按名称显示:索引,过滤器等。下一个sstable将具有名为mc-2-*的文件,依此类推。

*Data.db文件上使用sstabledump查看表中的数据。

Here's a reference

编辑: 检查源代码并在cassandra IRC通道上询问,我发现您可以使用sstable中的任何文件来转储数据。也非常感谢Alex Ott的帮助。