Redis虽然可以实现持久化存储,也是基于数据内存模型的基础之上,单机内存大小限制着Redis存储的数据量,有没有一种替代方案呢?本文介绍一款笔者使用的采用New BSD License 许可协议的软件——SSDB。
官网地址:http://ssdb.io/zh_cn/
SSDB 是一个 C/C++ 语言开发的高性能 NoSQL 数据库, 支持 KV, list, map(hash), zset(sorted set) 等数据结构, 用来替代或者与 Redis 配合存储十亿级别列表的数据。操作命令与redis无异,客户端也很丰富,在众多公司已经在生产环境中使用。
特性
-
替代 Redis 数据库, Redis 的 100 倍容量
-
LevelDB 网络支持, 使用 C/C++ 开发
-
Redis API 兼容, 支持 Redis 客户端
-
适合存储集合数据, 如 list, hash, zset...
-
客户端 API 支持的语言包括: C++, PHP, Python, Java, Go
-
持久化的队列服务
-
主从复制, 负载均衡
安装
-
wget --no-check-certificate https://github.com/ideawu/ssdb/archive/master.zip
-
unzip master
-
cd ssdb-master
-
make
-
# optional, install ssdb in /usr/local/ssdb
-
sudo make install
启动
-
# start master
-
./ssdb-server ssdb.conf
-
# or start as daemon
-
./ssdb-server -d ssdb.conf
性能
性能数据使用 ssdb-bench(SSDB) 和 redis-benchmark(Redis) 来获取.
大部分公司应用中,对数据存取效率上都不会那么苛刻,硬盘成本低、扩展容易,选择SSDB不失为一个好的选择。
扩展阅读: