masstree Seastar
Posted diegodu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了masstree Seastar相关的知识,希望对你有一定的参考价值。
masstree Seastar
线程锁竞争和切换的开销几乎为0,代码也不用考虑多线程竞争,逻辑大大减化;此外Niagara是一个全异步执行引擎,采用了基于future,promise和continuation的方式来表达我们的异步执行逻辑,比传统的callback方式逻辑清晰明了了很多,很舒服的同时也不易出错。
存储内核方面,在调研了多种存储模型以后,最终我们选择了LSM结构,因为它能让我们方便的进行读、写和空间放大的调节。相比同是LSM架构的RocksDB,我们做了多方面的优化来提升性能,包括:
- 基于masstree的memtable
- Snow-shovelling的flush策略
- 自适应的扩层策略
- 实时in-memory compaction
在作为Blink statebackend的集成中,我们做了checkpoint时候不清memtable的优化,从而减少了latency抖动问题。
以上是关于masstree Seastar的主要内容,如果未能解决你的问题,请参考以下文章