SSDB

一个高性能的支持丰富数据结构的 NoSQL 数据库, 用于替代 Redis.

特性

  • 替代 Redis 数据库, Redis 的 100 倍容量
  • LevelDB 网络支持, 使用 C/C++ 开发
  • Redis API 兼容, 支持 Redis 客户端
  • 适合存储集合数据, 如 list, hash, zset...
  • 客户端 API 支持的语言包括: C++PHP, Python, Java, Go
  • 持久化的队列服务
  • 主从复制, 负载均衡

性能

性能数据使用 ssdb-bench(SSDB) 和 redis-benchmark(Redis) 来获取.

架构

编译与安装

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

安装时遇到问题

1、make报错

[root@localhost ssdb-master]# make

ERROR! autoconf required! install autoconf first

Makefile:4: build_config.mk: No such file or directory
make: *** No rule to make target `build_config.mk'. Stop.

解决办法:

安装autoconf包。   yum -y install autoconf 。

2、make[1]: g++: Command not found

make[1]: g++: Command not found
make[1]: *** [db/builder.o] Error 127
make[1]: Leaving directory `/home/ssdb-master/deps/leveldb-1.18'
make: *** [all] Error 2

解决办法:

安装编译器。  yum -y install gcc gcc-c++

3、libsnappy.a: No such file or directory

g++ ...deps/snappy-1.1.0/.libs/libsnappy.a: No such file or directory
make[1]: *** [all] Error 1

解决办法:
到deps/snappy-1.1.0目录重新编译一遍。
$ cd deps/snappy-1.1.0
$ ./configure
$ make

4、
libjemalloc.a: No such file or directory
g++ ...deps/jemalloc-4.1.0/.libs/libjemalloc.a: No such file or directory
make[1]: *** [all] Error 1
解决办法:
到deps/jemalloc-4.1.0目录重新编译一遍。
$ cd deps/jemalloc-3.3.1
$ ./configure
$ make  

操作文档:http://ssdb.io/ssdb-get-started.pdf

 
参考连接:http://ssdb.io/zh_cn/
     https://github.com/ideawu/ssdb

SSDB 一个高性能的支持丰富数据结构的 NoSQL 数据库, 用于替代 Redis.的更多相关文章

  1. Redis所支持的数据结构

    1.启动Redis2.Redis所支持的数据结构 2.1.Redis常用操作 2.2.String类型及操作 2.3.Hash类型及操作 2.4.List类型及操作 2.5.Set类型及操作 2.6. ...

  2. SSDB:高性能数据库服务器

    SSDB是一个开源的高性能数据库服务器, 使用Google LevelDB作为存储引擎, 支持T级别的数据, 同时支持类似Redis中的zset和hash等数据结构, 在同时需求高性能和大数据的条件下 ...

  3. Redis教程(REmote DIctionary Server)——一个高性能的key-value数据库

    redis(REmote DIctionary Server)是什么? Redis是一个开源的使用ANSI C语言编写.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言 ...

  4. node如何让一个端口同时支持https与http

    众所周知node是一个高性能的web服务器,使用它可以很简单的创建一个http或https的服务器. 比如一个很简单的http服务器: var http = require('http'); var ...

  5. 又一个高性能轻量级的iOS模型框架YYModel

    前言 iOS的模型框架其实有很多了,去年研究过Mantle,也了解过JSONModel.MJExtension,最近的项目项目优化的时候,再次考虑,基于轻量级.高性能的考虑,最终选择了YYModel. ...

  6. workerman是一个高性能的PHP socket服务器框架

    workerman-chatorkerman是一款纯PHP开发的开源高性能的PHP socket服务器框架.被广泛的用于手机app.手游服务端.网络游戏服务器.聊天室服务器.硬件通讯服务器.智能家居. ...

  7. Tair是一个高性能,分布式,可扩展,高可靠的key/value结构存储系统(转)

    Tair是一个高性能,分布式,可扩展,高可靠的key/value结构存储系统! Tair专为小文件优化,并提供简单易用的接口(类似Map)Tair支持Java和C版本的客户端 Tair is a di ...

  8. 一个高性能、轻量级的分布式内存队列系统--beanstalk

    Beanstalk是一个高性能.轻量级的.分布式的.内存型的消息队列系统.最初设计的目的是想通过后台异步执行耗时的任务来降低高容量Web应用系统的页面访问延迟.其实Beanstalkd是典型的类Mem ...

  9. Beanstalkd 一个高性能分布式内存队列系统

    需要一个分布式内存队列,能支持这些特性:任务不重不漏的分发给消费者(最基础的).分布式多点部署.任务持久化.批量处理.错误重试..... 转载:http://rdc.taobao.com/blog/c ...

随机推荐

  1. C#反射获取数据库字段

    static string sqlselect = "insert into {0}({1}) values ({2})"; (这个方法可以适用于任何数据库的插入语句) publi ...

  2. GeoTrust 企业(OV)型 增强版(EV) SSL证书

      GeoTrust 企业(OV)型 增强版(EV) SSL证书(GeoTrust True BusinessID with EV SSL Certificates),验证域名所有权,更严格的验证企业 ...

  3. 【Codeforces 1106D】Lunar New Year and a Wander

    [链接] 我是链接,点我呀:) [题意] 让你遍历n个节点,访问过的节点不操作. 如果是没有访问过的点,那就把它加到序列的末尾. 问你形成的最小字典序的序列是多少. [题解] 显然每次找最小的标号 用 ...

  4. Industrial Nim

    http://codeforces.com/contest/15/problem/C 题意: 现有n个采石场,第i个采石场有mi堆石子 各堆分别有xi,xi+1……,xi+m-1颗石子 两名选手使用最 ...

  5. 3、ceph-deploy之配置使用文件系统

    我们在admin节点执行下述操作,来配置使用ceph集群的文件系统 必备条件 1.在ceph-client节点安装ceph ceph-deploy install ceph-client 2.确认ce ...

  6. BNUOJ 1021 信息战(七)——情报传递

    信息战(七)——情报传递 Time Limit: 3000ms Memory Limit: 262144KB 64-bit integer IO format: %lld      Java clas ...

  7. 清北学堂模拟赛d2t4 最大值(max)

    题目描述LYK有一本书,上面有很多有趣的OI问题.今天LYK看到了这么一道题目:这里有一个长度为n的正整数数列ai(下标为1~n).并且有一个参数k.你需要找两个正整数x,y,使得x+k<=y, ...

  8. lzugis——Arcgis Server for JavaScript API之自己定义InfoWindow

    用过Arcgis Server for JavaScript API肯定知道InfoWIndow.你在用InfoWindow的时候会发现各种问题,比如不能全然显示的问题,遮盖对象的问题等等.所以呢我在 ...

  9. web端log4net输出错误日志到mysql

    1.引用log4net 2.配置log4net.config文件 <?xml version="1.0" encoding="utf-8" ?> & ...

  10. 邪恶的C++

    曾经看到一篇很有趣的文章,今天转载一下.抱歉的是没有找到最原始的版本,算是遗憾吧. ---------- 华丽的分割线 ---------- Linus曾经(2007年9月)在新闻组gmane.com ...