Github url


by ideawu

ideawu /ssdb

SSDB - A fast NoSQL database, an alternative to Redis

6.8K Stars 1.3K Forks Last release: 5 months ago (1.9.7) BSD 3-Clause "New" or "Revised" License 1.2K Commits 5 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

SSDB - A Redis compatible NoSQL database stored on disk

Author Platform NoSQL License

SSDB is a high performace key-value(key-string, key-zset, key-hashmap) NoSQL database, an alternative to Redis.

SSDB is stable, production-ready and is widely used by many Internet companies including QIHU 360.


  • LevelDB client-server support, written in C/C++
  • Designed to store collection data
  • Persistent key-value, key-zset, key-map('hashmap'), key-list storage
  • Redis clients are supported
  • Client API supports including C++, PHP, Python, Cpy, Java, nodejs, Ruby, Go(see all)
  • Persistent queue service
  • Replication(master-slave), load balance
  • GUI administration tool(phpssdbadmin)
  • Built-in CLI nagios self-checks

PHP client API example

<?php require_once('SSDB.php');
$ssdb = new SimpleSSDB('', 8888);
$resp = $ssdb->set('key', '123'); $resp = $ssdb-\>get('key'); echo $resp; // output: 123


Who's using SSDB?

SSDB users...


Compile and Install

$ wget --no-check-certificate $ 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 command line $ ./tools/ssdb-cli -p 8888 # stop ssdb-server $ ./ssdb-server ssdb.conf -s stop # for older version $ kill `cat ./var/`

See Compile and Install wiki


Typical performance

Total 1000 requests.

writeseq : 0.546 ms/op 178.7 MB/s writerand : 0.519 ms/op 188.1 MB/s readseq : 0.304 ms/op 321.6 MB/s readrand : 0.310 ms/op 315.0 MB/s

SSDB vs Redis

Benchmark vs Redis

View full SSDB vs Redis benchmark charts...

Concurrency benchmark

========== set ========== qps: 44251, time: 0.226 s ========== get ========== qps: 55541, time: 0.180 s ========== del ========== qps: 46080, time: 0.217 s ========== hset ========== qps: 42338, time: 0.236 s ========== hget ========== qps: 55601, time: 0.180 s ========== hdel ========== qps: 46529, time: 0.215 s ========== zset ========== qps: 37381, time: 0.268 s ========== zget ========== qps: 41455, time: 0.241 s ========== zdel ========== qps: 38792, time: 0.258 s

Run on a 2013 MacBook Pro 13 inch with Retina display.


ssdb architecture

Windows executable

Download ssdb-server.exe from here:

SSDB library for iOS

make ios # ls ios/ include/ libleveldb-ios.a libsnappy-ios.a libssdb-ios.a libutil-ios.a

Drag the static libraies files into your iOS project. Then add


to your iOS project's Header Search Paths, which is set in Build Settings.


Changes made to LevelDB

See Changes-Made-to-LevelDB wiki


SSDB is licensed under New BSD License, a very flexible license to use.




We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.