# Bitalostored

  • 当前有数款知名的开源存储系统(兼容redis协议),同为redis的替代品,选取其中性能优秀的两款产品(t*d* 与 *i*a)做性能对比。

# 硬件

CPU:    Intel(R) Xeon(R) Platinum 8255C CPU @ 2.50GHz
Memory: 384GB
Disk:   2*3.5TB SSD
  • Disk(File) IOPS(BW)
BlockSize Write RandWrite Read RandRead
4KB 294K(1150MiB/s) 232K(905MiB/s) 446K(1742MiB/s) 446K(1743MiB/s)
8KB 266K(2080MiB/s) 244K(1902MiB/s) 309K(2414MiB/s) 404K(3159MiB/s)

# 程序

  • 压测工具:redis官方memtier_benchmark

  • 存储服务:线程数(8)、CPU限制(8核)

  • 压测命令:--data-size=1024|128、-n=40672038|335544320

./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="set __key__ __data__" --key-prefix="performance_test_key_prefix_" --key-minimum=1 --key-maximum=40672038 --random-data --data-size=1024 -n 81920
./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="get __key__" --key-prefix="performance_test_key_prefix_" --key-minimum=1 --key-maximum=40672038 --test-time=300
./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="incr __key__" --key-prefix="int_" --key-minimum=1 --key-maximum=40672038 --random-data --data-size=1024 -n 81920
./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="lpush __key__ __data__" --key-prefix="list_" --key-minimum=1 --key-maximum=40672038 --random-data --data-size=1024 -n 81920
./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="sadd __key__ __data__" --key-prefix="set_" --key-minimum=1 --key-maximum=40672038 --random-data --data-size=1024 -n 81920
./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="zadd __key__ __key__ __data__" --key-prefix="" --key-minimum=1 --key-maximum=40672038 --random-data --data-size=1024 -n 81920
./memtier_benchmark -t 16 -c 32 -s 127.0.0.1 -p xxxx --distinct-client-seed --command="hset __key__ __data__ __key__" --key-prefix="hash_" --key-minimum=1 --key-maximum=40672038 --random-data --data-size=1024 -n 81920

# 数据

  • 数据总量:40GB

  • 对比维度:命令(SET、GET、INCR、LPUSH、SADD、ZADD、HSET) x 数据大小&条数(1KB & 40,672,000、128B & 335,544,320)

# 配置

  • t*d* & *i*a
Threads:8
Memtable:1GB
WAL:disable
Binlog:disable
Cache:40GB

其余参数使用官方推荐压测配置
  • bitalostored
Threads:8
Memtable:1GB
WAL:disable
Raftlog:disable

# 结果

  • QPS

benchmark

ZUOYEBANG