[nessDB]开源KV数据库nessDB1.7发布,支持Redis协议

nessDB是一个小巧、高性能的、支持Redis协议的K-V数据库,使用标准C开发,支持Linux, *BSD, OS X and Solaris 系统,无第三方依赖。
 描述:
  * 使用Bloom filter检查数据存在性
  * 使用Level-LRU提升随机读性能,类似于InnoDB的bufferpool,大小可配置。
  * 可分布存储的B+Tree索引文件
  * 支持范围查找
  * Redis协议支持(PING,GET,SET,DEL,INFO):SET相同的key即更新;DEL后面跟多key,即批量删除
  源码目录结构
  ==================
  ./
  ./src/ - 源码
  ./BENCHMARK - 性能测试结果
  ./LEVEL-LRU - Level-LRU小说明
  ./TODO - TODO list
  ./x/ - 网络层源码
  接口
  ==========
    * db_init(int bufferpool_size,int isbgsync)
bufferpool_size:LRU缓存大小(单位byte)
isbgsync:是否启用后台从内存到磁盘的数据定时刷新(0:否;1:是)
    * db_get(const char *key)
    * db_get_range(const char *begin,const char *end,struct nobj *obj,int *retcount)
    * db_dump_keys(struct nobj *obj)
    * db_add(const char *key,const char *value)
    * db_update(const char *key,const char *value)
    * db_remove(const char *key)
 
  如何进行性能测试
  ==================
a, $cd src
b, $make
c, $./nessdb-bench add
最后可使用 "$make cleanall"清理所有数据(包括生成的索引、数据文件)
  服务启动
  ===============
   * $./nessdb-server
使用redis-cli(或任一款redis客户端)连接,并进行命令操作(目前支持:PING,SET,GET,DEL).
  希望大家多提意见,以便改进(目前都是基于github issues修改)。
  Thanks!
posted @ 2011-10-24 09:40 overred 阅读(234) 评论(1) 编辑 收藏

 回复 引用 查看   
#1楼 2011-12-27 18:52 蛙蛙王子      
ding