• 中国计算机学会会刊
  • 中国科技核心期刊
  • 中文核心期刊

J4 ›› 2016, Vol. 38 ›› Issue (07): 1299-1308.

• 论文 •    下一篇

SSDKV:一种SSD友好的键值对存储系统

梅飞,曹强   

  1. (华中科技大学武汉光电国家实验室,湖北 武汉 430074)
  • 收稿日期:2015-12-11 修回日期:2016-03-08 出版日期:2016-07-25 发布日期:2016-07-25
  • 基金资助:

    国家863高技术研究发展计划(2013AA013203);国家973重点基础研究计划(2011CB302303)

SSDKV:a fast key-value system based on SSD devices  

MEI Fei,CAO Qiang   

  1. (Wuhan National Laboratory for Optoelectronics,Huazhong University of Science and Technology,Wuhan 430074,China)  
  • Received:2015-12-11 Revised:2016-03-08 Online:2016-07-25 Published:2016-07-25

摘要:

当前大量键值对(Key-Value)存储系统使用固态硬盘(SSD)改善系统的I/O响应速度。但是现有的键值对存储系统应用程序使用标准文件系统处理数据在固态硬盘上的存储,这对应用程序而言底层固态盘的物理特性被屏蔽,同时固态盘也无法针对应用程序的特定I/O模式进行优化,使得基于固态盘的键值对系统性能没有得到充分发挥。针对此问题,设计了同时考虑键值对应用程序存取行为和SSD存储器访问特性的存储管理模块,并与LevelDB结合实现了一种轻量级的、将上层应用与底层存储集成一体的键值对系统—SSDKV。它提供键值对接口给外部程序,结合键值对数据的特点构造适应SSD的数据布局。SSDKV简化了传统文件系统对键值对数据的额外处理,并根据键值对数据的类型及其存取模式对SSD存储空间进行有效管理,使得基于SSD设备的键值对系统性能进一步提高。通过基准程序测试,与运行于传统文件系统上的LevelDB相比,SSDKV使得写性能提高达4倍,读性能提高达1.5倍。

关键词: KV存储, 固态硬盘, 存储管理, 原始存储设备, LevleDB, 主机端FTL

Abstract:

KeyValue (KV) store systems use SSD device to improve the response speed of I/O. However, the existing KV store systems adopt the standard file system to handle storing data in SSD devices, so the physical characteristics of SSDs are invisible to applications and the I/O behaviors of applications are invisible to storage media, limiting the further performance improvement of KV store systems. Therefore, we  design a storage mechanism, which concerns both KV data patterns and SSD device characteristics.. By combining with LevelDB, a LSMTreebased KV store, we implement a SSD friendly KV system—SSDKV, which is a lightweight KV store and runs in user space. Besides the basic function of providing KV interfaces, SSDKV introduces an innovative ondisk data deployment. By reducing the extra procedures required by the traditional file systems to handle  KV data, and managing the SSD storage space in a more proper way according to KV data, SSDKV can improve the performance significantly on the KV store. Compared with other file systems, SSDKV can improve write performance by 4 times and read performance by 1.5 times.

Key words: KV store;SSD;storage management;raw storage device;levelDB;host FTL