Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Redis | 62,402 | 3 | a day ago | 1 | February 27, 2018 | 2,519 | bsd-3-clause | C | ||
Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps. | ||||||||||
Codis | 12,985 | 16 | 1 | 2 years ago | 6 | September 04, 2018 | 287 | mit | Go | |
Proxy based Redis cluster solution supporting pipeline and scaling dynamically | ||||||||||
Ssdb | 7,686 | 2 years ago | 1 | February 27, 2018 | 378 | bsd-3-clause | C++ | |||
SSDB - A fast NoSQL database, an alternative to Redis | ||||||||||
Pika | 5,349 | a day ago | 128 | bsd-3-clause | C++ | |||||
Pika is a NoSQL database compatible with Redis developed by Qihoo's infrastructure team. | ||||||||||
Octosql | 4,600 | 3 | 2 months ago | 38 | May 30, 2023 | 41 | mpl-2.0 | Go | ||
OctoSQL is a query tool that allows you to join, analyse and transform data from multiple databases and file formats using SQL. | ||||||||||
Dynomite | 4,050 | 8 months ago | 1 | December 15, 2021 | 109 | apache-2.0 | C | |||
A generic dynamo implementation for different k-v storage engines | ||||||||||
Db Tutorial | 3,677 | 18 hours ago | 7 | cc-by-sa-4.0 | Java | |||||
📚 db-tutorial 是一个数据库教程。 | ||||||||||
Dotnetguide | 3,115 | a day ago | 9 | mit | C# | |||||
🐱🚀【C#/.NET/.NET Core学习、工作、面试指南】记录、收集和总结C#/.NET/.NET Core基础知识、学习路线、开发实战、学习视频、文章、书籍、项目框架、社区组织、开发必备工具、常见面试题、面试须知、简历模板、以及自己在学习和工作中的一些微薄见解。希望能和大家一起学习,共同进步👊【让现在的自己不再迷茫✨,如果本知识库能为您提供帮助,别忘了给予支持哦(关注、点赞、分享)💖】。 | ||||||||||
Tendis | 2,557 | 7 months ago | 98 | other | C++ | |||||
Tendis is a high-performance distributed storage system fully compatible with the Redis protocol. | ||||||||||
Nosqlmap | 2,526 | 2 months ago | 4 | gpl-3.0 | Python | |||||
Automated NoSQL database enumeration and web application exploitation tool. |
Stargazers Over Time | Contributors Over Time |
---|---|
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 codisthanks left2right and fancy-rabbit) for distributed Redis solution
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
The User can download the binary release from releases or compile the source release.
linux - CentOS
linux - Ubuntu
macOS
Upgrade your gcc to version at least 7 to get C++17 support.
git clone https://github.com/OpenAtomFoundation/pika.git
a. exec git tag to get the latest release tag
b. exec git checkout TAG to switch to the latest version
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 dbyou need to compile it in 'debug' mode.
rm -fr output
cmake -B output -DCMAKE_BUILD_TYPE=Debug
cd output && make
Extra components like codis
or pika_operator
could also built by using build.sh
.
# build codis, default target build-all
./build.sh codis
# build codis, but only the codis-proxy
./build.sh codis codis-proxy
# build pika_operator
./build.sh operator
./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)
docker run -d \
--restart=always \
-p 9221:9221 \
-v <log_dir>:/pika/log \
-v <db_dir>:/pika/db \
-v <dump_dir>:/pika/dump \
-v <dbsync_dir>:/pika/dbsync \
pikadb/pika:v3.3.6
redis-cli -p 9221 "info"
Meaning of dirs:
If you want to build the image yourself, we have provided a script build_docker.sh
to simplify this process.
The script accepts several optional arguments:
-t tag
: Specify the Docker tag for the image. By default, the tag is pikadb/pika:<git tag>
.-p platform
: Specify the platform for the Docker image. By default is current docker's platform. all
, linux/amd64
, linux/arm
, linux/arm64
.--proxy
: Use a proxy to download packages to speed up the build process. This is particularly useful if you are in China.--help
: Display help information.Here is an example usage of the script:
./build_docker.sh -p linux/amd64 -t private_registry/pika:latest
You can use the pika-operator
to easily deploy pika
in a Kubernetes environment.
Please note that this operator is NOT recommended for use in a production environment.
Local Deploy
cd tools/pika_operator
make minikube-up # run this if you don't have a minikube cluster
make local-deploy
cd tools/pika_operator
kubectl apply -f examples/pika-sample/
# check pika status
kubectl get pika pika-sample
# get pika instance info
kubectl run pika-sample-test --image redis -it --rm --restart=Never \
-- /usr/local/bin/redis-cli -h pika-sample -p 9221 info
More details on Performance.
More details on Metrics.
QQ group: 294254078