SSDB 一个高性能的支持丰富数据结构的 NoSQL 数据库, 用于替代 Redis.-程序员宅基地

技术标签: java  数据结构与算法  数据库  

 

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

 

转载于:https://www.cnblogs.com/helloworldPC/p/7069788.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30535843/article/details/98609660

智能推荐

sparkStreaming 消费下沉 kafka 以及调优_sparkstreaming direct消费kafka-程序员宅基地

文章浏览阅读210次。sparkStreaming 消费下沉 kafka 以及调优1 sparkStreaming 消费kafka主要方式有两种:receiver方式、Direct方式Receiver方式利用kafka高阶的api,将数据存储到exectors,这种方法会丢失数据,要确保零丢失需要开启WAL (write ahead log)即将数据存到 hdfs上面一份 需要设置 KafkaUtils.createStream(..., StorageLevel.MEMORY_AND_DISK_SER)),即使数据会丢失_sparkstreaming direct消费kafka

JavaWeb开发知识总结(七)-(struts2_文件上传_Ajax)_struts2利用ajax上传文件-程序员宅基地

文章浏览阅读837次。JavaWeb开发知识总结-struts2-文件上传-Ajax_struts2利用ajax上传文件

POJ 1703 Find them, Catch them // 种类并查集 自己的详细理解过程 回溯过程_并查集回溯-程序员宅基地

文章浏览阅读378次。Find them, Catch themDescriptionThe police office in Tadu City decides to say ends to the chaos, as launch actions to root up the TWO gangs in the city, Gang Dragon and Gang Snake. However, the police..._并查集回溯

Python报错:The use of label encoder in XGBClassifier is deprecated_userwarning: the use of label encoder in xgbclassi-程序员宅基地

文章浏览阅读2.8k次,点赞4次,收藏7次。似乎是xgb的版本导致处理标签编码的问题参考这篇文章:https://blog.csdn.net/weixin_45425341/article/details/115915755我原本使用的是xgb的1.3版本,所以又重新下载了xgb的旧版本在pycharm的terminal输入pip install xgboost==1.2.0 -i https://pypi.mirrors.ustc.edu.cn./simple/用科大的镜像网址下载更快点..._userwarning: the use of label encoder in xgbclassifier is deprecated and wil

13 搜索之DSL--高级查询_dsl高级查询-程序员宅基地

文章浏览阅读206次。文章目录1 环境准备2 布尔查询(bool)演示3 最佳匹配字段3.1 引入3.2 dis_max查询3.3 tie_breaker参数4 过滤(filter)4.1 入门4.2 constant_score5 高亮5.1 入门5.2 自定义高亮标签5.3 多字段高亮5.4 高亮性能分析6 排序默认排序6.2 多字段排序1 环境准备新建一个索引库itemPUT item{ "mappings":{ "properties":{ "id":{ _dsl高级查询

如果自己的微信被对方删除,微信会有哪些提示?_如果微信显示对方已删除的话-程序员宅基地

文章浏览阅读9w次。自己的微信被对方删除,我依然可以给对方微信成功发送消息,甚至还可以发红包,更离谱的是微信还没有任何提示,不知道对方是怎么操作的?这个问题困扰我好久了,到现在还没有弄明白对方是否把自己的微信已经删除了。微信的哪些提示可以确定自己被对方删除好友?众所周知,如果自己的微信被对方删除,一般情况下微信会有很多种提示的。对于那些很久没联系的朋友来说,很多人并不会直接给对方发消息进行验证,因为对方删除了自己,微信还有好几种提示,下面我就给大家列举一下:第一种提示:“非对方的朋友只显示最近十条朋友圈”。_如果微信显示对方已删除的话

随便推点

面试题6:重建二叉树_已知二叉树的前序遍历是abdgcefh,中序遍历序列为,请重建该二叉树,并按照前-程序员宅基地

文章浏览阅读419次。剑指Offer面试题6:重建二叉树(JS实现)题目描述:输入某二叉树的前序遍历和中序遍历,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含有重复的数字。例如,前序遍历序列:{1,2,3,7,3,5,6,8},中序遍历序列:{4,7,2,1,5,3,8,6} var Node = function(key) { this.key = key; this_已知二叉树的前序遍历是abdgcefh,中序遍历序列为,请重建该二叉树,并按照前

Analytic Normals 3D代码解析_vec2 ibox( in vec3 ro, in vec3 rd, in vec3 rad ) v-程序员宅基地

文章浏览阅读220次。Analytic Normals 3D代码解析作者:iq,网址:https://www.shadertoy.com/view/XttSz2标签:3d, noise, normals, analytical, numerical总共一个部分:Image照相机设置这个比较常见,就是简单的照相机旋转和矩阵获取// camera animfloat an = 0.1*iTime;vec3 ro = 3.0*vec3( cos(an), 0.8, sin(an) );vec3 ta = vec3(_vec2 ibox( in vec3 ro, in vec3 rd, in vec3 rad ) vec2 ibox( in vec3 ro, in v

摆脱 Android 和 iOS:七款免费开源移动操作系统的尝试-程序员宅基地

文章浏览阅读417次。????????关注后回复“进群”,拉你进程序员交流群????????【CSDN 编者按】高科技产品的更新迭代实在是太快了!而且,高度发达的信息化让人们的隐私不再“隐私”。举个例子来说..._ubuntu touch 开源吗?

转载:Linux下使用wpa_supplicant连接WPA加密方式的WIFI_linux wifi 加密方式转化-程序员宅基地

文章浏览阅读2k次。目前可以使用wireless-tools 或wpa_supplicant工具来配置无线网络。请记住重要的一点是,对无线网络的配置是全局性的,而非针对具体的接口。 wpa_supplicant是一个较好的选择,但缺点是它不支持所有的驱动。请浏览wpa_supplicant网站获得它所支持的驱动列表。另外,wpa_supplicant目前只能连接到那些你已经配置好ESSID的无线网络。w_linux wifi 加密方式转化

SpringBoot 1.6 整合Redis_springboot 整合redis 1.6-程序员宅基地

文章浏览阅读153次。1.6 整合Redis1.6.1 Redis简介Redis 是一个完全开源免费的,遵守BSD协议的,具备高性能的key-value数据库。Redis缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。R..._springboot 整合redis 1.6

Android之OpenCv简单人脸识别功能(Bitmap)_androidbitmap_getinfo android_bitmap_format_rgba_8-程序员宅基地

文章浏览阅读1.4k次。Android之OpenCv简单人脸识别功能OpenCv的下载下载地址 - https://opencv.org/releases/doc 文档目录samples 示例代码sdk 编译后的动态库以及头文件案例代码人脸识别1.人脸信息录入2.获取相机的Bitmap,检测人脸信息(保证人脸特征信息比较精准),正常,眨眼睛,张嘴巴3.提取特征值Mat转Bitmap// 将Mat转bitmapvoid mat2Bitmap(JNIEnv *env,jobject bitmap,Mat _androidbitmap_getinfo android_bitmap_format_rgba_8888