期刊文献+

基于Linux内核的Key-Value存储系统——KStore 被引量:1

KStore: Linux kernel-based Key-Value store system
下载PDF
导出
摘要 Key-Value存储系统在各种互联网服务中被广泛使用,但现有的Key-Value存储系统通常在用户态空间设计和实现,因为频繁的模式切换和上下文切换,导致访问接口、事务处理效率不高,在高并发、低延迟的数据存储需求中尤为突出。针对该问题,给出了一个内核态Key-Value存储系统的实现——KStore:提供内核空间的索引和内存分配机制,并在此基础上,通过基于内核Socket的远程接口以及基于文件系统的本地接口,保证了KStore的低延迟;同时,通过基于内核多线程的并发处理机制,保证了KStore的并发性。实验结果表明,与Memcached相比,KStore在实时性和并发性方面都取得显著优势。 Nowadays Key-Value store system is widely used in various Internet services. However, the existing KeyValue store systems, mostly run in user-mode, can not meet the demands of high-concurrency and low-latency. It is mainly because user-mode usually provides inefficient access interfaces and transaction processing due to mode switch or context switch. To solve these problems, an in-kernel implementation of Key-Value store system, called KStore, was proposed in this paper. It had an in-kernel index and an in-kernel memory allocator, which were used to manage Key-Value data efficiently.To guarantee the low-latency response, KStore provided a remote interface based on in-kernel Socket, and a local interface based on file system. In addition, KStore processed concurrent requests with a novel mechanism based on in-kernel multithread. The experimental results show that KStore gains a remarkable advantage over Memcached in the characteristics of realtime and concurrency.
出处 《计算机应用》 CSCD 北大核心 2015年第1期99-102,114,共5页 journal of Computer Applications
基金 中国科学院战略性科技先导专项(XDA06010600) 核高基重大专项(2012ZX01039-004)
关键词 Key-Value存储系统 LINUX内核 文件系统 内核Socket 内核线程 Slab内存分配 Key-Value store system Linux kernel file system kernel Socket kernel thread Slab memory allocation
  • 相关文献

参考文献12

  • 1SADALAGE P J, FOWLER M. NoSQL distilled: a brief guide to the emerging world of polyglot persistence [ M]. Boston: Addison Wesley, 2012:31-33.
  • 2NISHATALA R, FUGAL H, GRIMM S, et al. Scaling Memcache at Facebook [ C]// NSDI'13: Proceedings of the 10th USENIX Con- ference on Networked Systems Design and Implementation. Berke- ley: USENIX Association, 2013:385-398.
  • 3ZHANG S, HAN J, LIU Z, et al. Accelerating MapReduce with distributed memory cache [ C]// Proceedings of the 15th Interna- tional Conference on Parallel and Distributed Systems. Piscataway: IEEE, 2009:472-478.
  • 4DORMANDO. Memcached [EB/OL]. [2014-06-20]. http:// memcached, org,/.
  • 5VMWARE. Redis [EB/OL]. [2014-06-10]. http://redis, io/.
  • 6MICHAEL M M. High performance dynamic lock-free hash tables and list-based sets [ C]// Proceedings of the 14th ACM Symposium on Parallel Algorithms and Architectures. New York: ACM, 2002:73 -82.
  • 7ANDREWS B. In-Kernel Berkeley DB [ EB/OL]. [2014-06-15]. http://www, fsl. es. sunysb, edu/projeet-kbdb, html.
  • 8KLEIMAN S R. Vnodes: an architecture for multiple file system types in Sun UNIX [ C]//Proceedings of the 1986 Summer USENIX Conference. Berkeley: USENIX Association, 1986:238-247.
  • 9LOVE R. Kernel korner: CPU affinity [ J]. Linux Journal, 2003, 2003(111): 8.
  • 10PUGH W. Skip lists: a probabilistic alternative to balanced trees [ J]. Communications of the ACM, 1990, 33(6): 668 -676.

同被引文献5

引证文献1

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部