To run the codes in this repo, you should have the following:
-
g++ support C++17 standard
- Since we need to test Redis recovery performance, we need to disable Redis persistence, which can be done by setting
set ""
inredis.conf
. - To use MySQL Connector/C++ x DevAPI, we need X Plugin enabled for MySQL, which is by default in MySQL 8.
-
python3 gen.py
: generate initial file. -
make
: compile the source code into an executable file. -
./run.sh [user] [password]
: run the experiment.[user]
and[password]
stand for the username and password to connect to MySQL server. Note that we need a user to have privileges for tables. -
python3 plot.py
: plot the data and save it.
The current data size is about 512MB with 2M key-value pairs, each pair 256B.
We crash the redis server at 1 min, 2 min, 4 min and 8 min.
- The performance fluctuates a lot on the VM. We may take the key-value pair smaller.
-
Improve the existing experiment to get better result.
-
Read the Phoenix kernel and user api code.