欢迎投稿

今日深度:

Cassandra--memtable SSTable,

Cassandra--memtable SSTable,


memtable是可以使用key来访问的基础的数据回写缓存–并不是flush的时候,将membable完全写入缓存。

将memtable写入到sstable的过程叫做flush,当你想减少commitlog的消耗时间时,你可以启动flush。

meltable按照key来排序,按照序列化的方式回写。回写是非常快的,消耗仅仅是增加commitlog和分期序列化的写。

当flushed时,SSTable文件是不可以被修改的。

当绑定一些SSTable文件时,读应该是可以被允许的。

Cassandra 的compactions(合并):合并旧的SSTable文件为一个新的。compactions策略是可启动的。

SizeTieredCompactionStrategy 是讲sstable合并成相似大小的。

LeveledCompactionStrategy是讲sstable按照等级进行排序,每次的操作都比前面的大。

由于SSTable是按照key值进行排序的,因此合并是非常高效的。合并操作的负载是非常均衡的。

Cassandra通过两步骤来减轻合并对应用的影响:
1、Cassandra通过变量compaction_throughput_mb_per_sec(default 16MB/S)可以调节合并时I/O大小。
2、Cassandra当发现合并的partition为hot时,Cassandra将会请求一个合并的partition为一个新的cache。

当合并完成后,旧的SSTable文件当被读结束后会被删除。

www.htsjk.Com true http://www.htsjk.com/cassandra/29305.html NewsArticle Cassandra--memtable SSTable, memtable是可以使用key来访问的基础的数据回写缓存–并不是flush的时候,将membable完全写入缓存。 将memtable写入到sstable的过程叫做flush,当你想减少commitlog的消耗时...
相关文章
    暂无相关文章
评论暂时关闭