cfstats
今はtablestats
nodetool tablestatsコマンドは、1つ以上のテーブルに関する統計を表示する。
コパクションまたはフラッシュによってSSTableが変更された時に更新される。
(keyspace)
データベースに相当
コンパックション
docs.datastax.com
cassandraでは挿入\更新が起きると、挿入または更新されたデータの新しいバージョンをタイムスタンプ付で、
別のSStableに書き込みます。削除対象データにはtomstoneのマークがつけらる。gc_secondsの値によって定義
された期間だけ存在する。
コンパクションは、パーティションキー(どのノードごとに配属されるか)ごとにタイムスタンプに基づいてストレージの最新データを選択して、
各SStableのデータをマージする。
→SStableの状況は見れなかったのか。
コンパクションの頻度は1秒ごと?
新しいものに変わる?
oranie.hatenablog.com
cassandraのdiskの空き容量に関するエラーだが、これはベンダーに確認する。
しかしながらその上でこちらも準備はしておく必要がある。
・snapshot
sstable2jsonの概要
下記参照
dann.g.hatena.ne.jp
sstableをjson化するsstable2jsonというツールが存在する。
sstable2jsonは、-Data.dbで終わるsstableファイルへのフルパスを引数にして、そのtableをjson化してexportすることができる。
(不明箇所)
・-Data.dbで終わるsstableファイルって何?
・オプションはcommons-cliでパース?
・Rowを順番にシリアライズしていく ?
・シリアライズするところは、StringBuilderでJSONを作っていく?
flush
データはmemtableというメモリ上に保存される。
1つ以上のテーブルをmemtableからファイルシステムに書き込む。
-Data.dbで終わるsstableファイルって何?
色々役に立つことが記載されている。
d.hatena.ne.jp
それにしても情報がない。
実行結果によると、flushでSStableを更新すると、-Data.dbのファイルが連番の続きで増えていく。
これに関する調査は、実際に試してみてここの箇所を見ていった方がいい。
オプションはcommons-cliでパース?
パース:構文を解析する。
改めてsstable2jsonについて
下記参照
d.hatena.ne.jp
JavaからSStableをExport
Cassandra 同梱の「bin/sstable2json」スクリプト内で実行している「org.apache.cassandra.tools.SSTableExport」クラスを Java から直接実行して、Cassandra のデータのダンプを取得している。
wc -l
下記参照
www.atmarkit.co.jp
テキストファイルの文字数や行数を数える。
-l : 改行の数を表示する。