Cassandraの書き込み部分の実装箇所
Memtable
パッケージは、org.apache.cassandra.db
IFlushable <-- Memtable <-- BinaryMemtable
writeSortedContentsがflushAndSignalメソッドから呼ばれている。flushされるタイミングは、先のエントリで書いたタイミング。flushAndSignalメソッドのcall hierarchyをたどれば書き込みのシーケンスが追える。flushAndSignalがIFlushableのメソッド。
CommitLog
パッケージは、org.apache.cassandra.db.commitlog
CommitLogクラス。
CommitLogをMemtableに書き出すのは、ColumnFamilyStoreのflush系のメソッド。
SSTable
org.apache.cassandra.io.sstable
SSTable <-- SSTableReader <-- SSTableWriter
SSTableWriterがSSTableに書き込むところ。Data, Index, BloomFilter。
Bloom Filter
パッケージは、org.apache.cassandra.utils
BloomFilterクラス。