SSDB简介
SSDB是一个C/C++语言开发的高性能开源NoSQL数据库服务器,支持Key-value, Keyhashmap, Key-zset(sorted set) 等数据结构,十分适合存储数亿条级别的列表, 排序表等集合数据, 是Redis的替代和增强方案。
SSDB的性能很突出,与Redis基本相当了,Redis是内存型,容量问题是弱项,并且内存成本太高,SSDB针对这个弱点,使用硬盘存储,使用Google高性能的存储引擎LevelDB,适合大数据量处理并把性能优化到Redis级别,具有Redis的数据结构、兼容Redis客户端,还给出了从Redis迁移到SSDB的方案。
特性
- 替代 Redis 数据库, Redis 的 100 倍容量
- LevelDB 网络支持, 使用 C/C++ 开发
- Redis API 兼容, 支持 Redis 客户端
- 适合存储集合数据, 如 list, hash, zset...
- 客户端 API 支持的语言包括: C++, PHP, Python, Java, Go
- 持久化的队列服务
- 主从复制, 负载均衡,(双master)和多主架构, 负载均衡
- .图形化管理工具(phpssdbadmin)
架构图
官网地址:http://ssdb.io/
中文地址:http://ssdb.io/zh_cn/
项目地址: https://github.com/ideawu/ssdb
项目文档:https://github.com/ideawu/ssdb-docs
博客文档:http://www.ideawu.net/blog/category/ssdb
安装过程
官方安装步骤
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
在执行到 make 进行编译的时候报错:
ERROR! autoconf required! install autoconf first Makefile:4: build_config.mk: 没有那个文件或目录
make: *** No rule to make target 'build_config.mk'。 停止。
这是autoconf不能实现自动编译,于是安装autoconf:
sudo apt-get update
sudo apt-get install autoconf
注意: sudo apt-get install autoconf 输入确认 y,之后出现很多配置信息耐心等待,
继续执行make
make
sudo make install
启动过程
linux环境下,默认配置是安装在 /usr/local/ssdb,进入该目录下:
./ssdb-server ssdb.conf
# 此命令会阻塞命令行 # 或者启动为后台进程(不阻塞命令行)
./ssdb-server -d ssdb.conf
注意: 如果启动时出现
ssdb-server 1.9.6
Copyright (c) 2012-2015 ssdb.io
open log file log.txt error - Permission denied
error opening log file: log.txt
那么在输入命令前加sudo
sudo ./ssdb-server ssdb.conf
# 此命令会阻塞命令行 # 或者启动为后台进程(不阻塞命令行)
sudo ./ssdb-server -d ssdb.conf
停止
./ssdb-server ssdb.conf -s stop