| commit | 7c23f2fe425180d9d2b47cae91846a7967641d4f | [log] [tgz] |
|---|---|---|
| author | wangyuan21 <wangyuan21@baidu.com> | Fri Jan 28 13:58:57 2022 +0800 |
| committer | Wang Yuan <wangyuancode@163.com> | Fri Jan 28 14:10:06 2022 +0800 |
| tree | 0c8d791b9b10805174552681c62240acf1fba969 | |
| parent | 651036eaa08ffdb113c3e53e72e11448d3bfb206 [diff] |
Release 2.0.6
Kvrocks is an open-source key-value database which is based on rocksdb and compatible with Redis protocol. Intention to decrease the cost of memory and increase the capability while compared to Redis. The design of replication and storage was inspired by rocksplicator and blackwidow.
Kvrocks has the following key features:
Thanks for designers @田凌宇 and @范世丽 contribute the kvrocks logo for us.
Tickets a pull reqeust to let us known that you're using kvrocks and add your logo to README
NOTE: You should install the snappy first:
# Centos/Redhat sudo yum install -y epel-release && sudo yum install -y git gcc gcc-c++ make snappy snappy-devel autoconf automake libtool which gtest gtest-devel # Ubuntu sudo apt-get install gcc g++ make libsnappy-dev autoconf automake libtool which libgtest-dev # MACOSX brew install autoconf automake libtool snappy googletest
It is as simple as:
$ git clone --recursive https://github.com/kvrockslabs/kvrocks.git $ cd kvrocks $ make -j4
$ ./src/kvrocks -c kvrocks.conf
NOTE: You should install the googletest first
make test
$ docker run -it -p 6666:6666 kvrocks/kvrocks $ redis-cli -p 6666 127.0.0.1:6666> get a (nil)
namespace was used to isolate data between users. unlike all the redis databases can be visited by requirepass, we use one token per namespace. requirepass was regraded as admin token, only admin token allows to access the namespace command, as well as some commands like config, slaveof, bgsave, etc…
# add token 127.0.0.1:6666> namespace add ns1 my_token OK # update token 127.0.0.1:6666> namespace set ns1 new_token OK # list namespace 127.0.0.1:6666> namespace get * 1) "ns1" 2) "new_token" 3) "__namespace" 4) "foobared" # delete namespace 127.0.0.1:6666> namespace del ns1 OK
For more informations, can see: Kvrocks Wiki
kvrocks2redis in build dirBenchmark Client: multi-thread redis-benchmark(unstable branch)
kvrocks: workers = 16, benchmark: 8 threads/ 512 conns / 128 payload
latency: 99.9% < 10ms

kvrocks: workers = 16, benchmark: 8 threads/ 512 conns
latency: 99.9% < 10ms

kvrocks: workers = 16, benchmark: 8 threads/ 512 conns / 128 payload
latency: 99.9% < 10ms

Kvrocks is under the BSD-3-Clause license. See the LICENSE file for details.