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的主要内容,如果未能解决你的问题,请参考以下文章