低延迟高带宽商用NVMe SSD的出现和普及推动了新型键值数据库(KV store)的系统变革。然而,采用全新的硬件友好的数据布局或者将整个数据库全部扩展到SSD上面临着生态重建、数据迁移、投资增加等挑战。基于混合存储介质的健值存储系统SpanDB (发表在FAST 2021)由卡塔尔计算研究所与中国科大ADSL实验室联合研发,充分挖掘NVMe SSD+传统磁盘组合方案的极致性能,通过对RocksDB软件栈的适配性修改,在性能和经济效益之间实现最佳平衡。 SpanDB将日志(WAL)和LSM树的顶层数据放到容量小但速度快的NVMe SSD上,而庞大的LSM树底层数据保留在便宜且容量大的存储设备上(如SATA SSD/HDD等)。SpanDB设计了基于SPDK的高并发logging机制,大幅度提升了WAL写入带宽;增加了异步请求处理机制以减轻线程间同步开销、提高了轮询I/O效率;实现了前后台线程协同、动态搬层思想,充分利用了两种介质的带宽资源。实验表明,SpanDB将RocksDB的吞吐量提高了8.8倍,并同时将其延迟降低了9.5-58.3%。与完全采用高端SSD的系统KVell相比,SpanDB以更便宜的存储配置实现了96-140%的吞吐量,且延迟降低了2.3-21.6倍。
数据库
李诚