Created
October 21, 2011 02:51
-
-
Save BohuTANG/1302996 to your computer and use it in GitHub Desktop.
nessDB中文文档
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
nessDB是一个小巧、高性能的、支持Redis协议的K-V数据库,使用标准C开发,支持Linux, *BSD, OS X and Solaris 系统,无第三方依赖。 | |
描述: | |
* 使用Bloom filter检查数据存在性 | |
* 使用Level-LRU提升随机读性能,类似于InnoDB的bufferpool,大小可配置。 | |
* 可分布存储的B+Tree索引文件 | |
* Redis协议支持(PING,GET,MGET,SET,MSET,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_add(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). | |
源码地址:http://github.com/shuttler/nessDB | |
希望大家多提意见,以便改进(目前都是基于github issues修改)。 | |
Thanks! | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment