SSTables和LSM-Tree

SSTables类似于Kafka,通过按键排序将数据写入磁盘并分段,构建稀疏索引,而LSM-Tree在此基础上,在内存中使用两个交替工作的Tree。当Tree达到一定大小时,数据写入磁盘生成SSTables。读取时先查内存,再查磁盘上的SSTables。为确保写入安全,采用预写日志策略。
摘要由CSDN通过智能技术生成

SSTables 可以类比Kafka:将数据按键排序写入磁盘,并分为多个段,组织段的稀疏索引,并定期合并段文件(kafka因为不存在重复数据,所以不需要合并)

LSM-Tree是基于SSTables的:在内存中维护两个Tree(交替工作),当Tree的大小达到一定的阈值之后,写操作转移到另一个tree,并将当前tree写入磁盘,形成一个SSTables实例,当读的时候,先从内存实例中查找,然后依次从磁盘的SSTables查找,并且写的时候为了避免宕机,会先写一个顺序预写日志(这也是Rockes和Level-DB的视线)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值