Stargazers Over Time | Contributors Over Time |
---|---|
Introduction中文
Pika is a persistent huge storage service , compatible with the vast majority of redis interfaces (details), including string, hash, list, zset, set and management interfaces. With the huge amount of data stored, redis may suffer for a capacity bottleneck, and pika was born for solving it. Except huge storage capacity, pika also support master-slave mode by slaveof command, including full and partial synchronization. You can also use pika together with twemproxy or codis(pika has supported data migration in codis,thanks left2right and fancy-rabbit) for distributed Redis solution
- huge storage capacity
- compatible with redis interface, you can migrate to pika easily
- support master-slave mode (slaveof)
- various management interfaces
The User can download the binary release from releases or compile the source release.
-
linux - CentOS 6&7
-
linux - Ubuntu
-
macOS
- gcc g++, C++17 support (version>=7)
- make
- cmake (version>=3.18)
- autoconf
- tar
Upgrade your gcc to version at least 7 to get C++17 support.
- Get the source code
git clone https://github.com/OpenAtomFoundation/pika.git
- Checkout the latest release version
a. exec git tag to get the latest release tag
b. exec git checkout TAG to switch to the latest version
- Compile
Please run the script build.sh before you compile this db to check the environment and build this repo. If the gcc version is later than 7, such as CentOS6 or centOS7, you need to upgrade the gcc version first
Do as follows
a. sudo yum -y install centos-release-scl
b. sudo yum -y install devtoolset-7-gcc devtoolset-7-gcc-c++
c. scl enable devtoolset-7 bash
Please run the script build.sh before you compile this db to check the environment and build this repo.
./build.sh
The compilation result is in the 'output' directory.
By default the compilation process is in 'release' mode. If you wanna debug this db,you need to compile it in 'debug' mode.
rm -fr output
cmake -B output -DCMAKE_BUILD_TYPE=Debug
cd ouput && make
./output/pika -c ./conf/pika.conf
If wanna clean up the compilation content, you can choose one of the following two methods as your will.
1. exec `cd output && make clean` clean pika Compile content
2. exec `rm -fr output` rebuild cmake (for complete recompilation)
More details on Performance.
Wechat: PikiwiDB (The attachment comment should be "Join Pika Wechat Group")
QQ group: 294254078