quickdb - Key-Value数据引擎


Apache
Linux
C/C++

软件简介

quickdb 是一款基于内存文件系统的 HashTable数据结构的Key-
Value数据引擎,什么是内存文件系统了?就是操作系统把系统内存划出一部分当作硬盘使用。你可以像操作磁盘那样的操作内存。但效率远远比硬盘来的快多了。通俗叫做内存文件系统,只要服务器不重起数据将一直都在。

通俗的来讲
redis、memcached是自己申请内存管理数据。当进程重启或者挂了就会丢失数据。quickdb是把实体数据储存在内存文件系统里的。当quickdb进程挂了,
实体数据依然还在。 一个进程可能因为各种原因比如修改了配置文件或者要调试数据。要经常重启。但是一个服务器不可能三天两天的重启或者死机。
一般服务器都是半年,或者 好几年都不重起的。 如果你的服务器经常断电或者死机重启那就不叫服务器了。叫家用电脑了。嘿嘿
为了起见,quickdb可以定期的从内存文件系统的数据同步到磁盘中去。这样当服务器重启,也不会丢失数据。
简单的来讲,进程可能会经常因为各种原因要重启或者挂了,但是服务器不可能经常重启或者死机。这样很大程度上保证了数据持久性,也保证了读写效率。

quickdb性能很高,下面是其测试数据:

  • 写入3145739条数据 花费4.38秒(qps: ~ 72w
  • 读取 3145739条数据花费3.88秒(qps: ~ 81w