1 Star 0 Fork 8

zmyer / pedis

forked from stack / pedis 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

#Pedis

What's Pedis?

NoSQL data store using the SEASTAR framework, compatible with REDIS.

Redis is very popular data structures server. For more infomation, see here: http://redis.io/ Seastar is an advanced, open-source C++ framework for high-performance server applications on modern hardware. For more infomation, see here: http://www.seastar-project.org/

Now, the redis commands were supported as follow:

  • Key: DEL, EXISTS
  • String: GET, SET, DECR, INCR, DECRBY, INCRBY, APPEND, STRLEN
  • List: LINDEX, LINSERT, LLEN, LPUSH, LPUSHX, LPOP, LRANGE, LREM, LTRIM, LSET, RPOP, RPUSH, RPUSHX
  • Hash: HSET, HDEL, HGET, HLEN, HSTRLEN, HMSET, HMGET, HKEYS, HVALS, HEXISTS, HINCRBY
  • Other: ECHO, PING

Building Pedis on Ubuntu 14.04

In addition to required packages by Seastar, the following packages are required by Pedis.

Installing required packages:

sudo apt-get install libaio-dev ninja-build ragel libhwloc-dev libnuma-dev libpciaccess-dev libcrypto++-dev libboost-all-dev libxen-dev libxml2-dev xfslibs-dev

Installing GCC 4.9 for gnu++1y. Unlike the Fedora case above, this will not harm the existing installation of GCC 4.8, and will install an additional set of compilers, and additional commands named gcc-4.9, g++-4.9, etc., that need to be used explicitly, while the "gcc", "g++", etc., commands continue to point to the 4.8 versions.

# Install add-apt-repository
sudo apt-get install software-properties-common python-software-properties
# Use it to add Ubuntu's testing compiler repository
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
# Install gcc 4.9 and relatives
sudo apt-get install g++-4.9
# Also set up necessary header file links and stuff (?)
sudo apt-get install gcc-4.9-multilib g++-4.9-multilib

To compile Seastar explicitly using gcc 4.9, use:

git clone https://github.com/fastio/pedis.git
cd pedis
git submodule update --init --recursive
./configure.py --compiler=g++-4.9
ninja 

Run Pedis

./build/release/pedis --smp 1

Benchmark

The following describe the details of the Pedis benchmark making it reproducible. The result data was generated by memtier_benchmark(https://github.com/RedisLabs/memtier_benchmark).

Latest Results(Sep. 2016)

Pedis's latency was less then 0.5ms for 99% of all requests.

Test bed:

  • Server 1: Pedis/Redis Server
  • Server 2: memtier_benchmark tool

Software:

  • OS RedHat EL7
  • Pedis (latest)
  • Redis (2.8)

Hardware:

  • Memory: 128GB
  • SSD: 500GB
  • CPU: 24 logical cores
  • NIC: 1000Mb

空文件

简介

NoSQL data store using the SEASTAR framework, compatible with Redis. 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/zmyer/pedis.git
git@gitee.com:zmyer/pedis.git
zmyer
pedis
pedis
master

搜索帮助

14c37bed 8189591 565d56ea 8189591