Categorygithub.com/smallnest/kvbench
repositorypackage
0.0.0-20230718011136-0a88802f14d4
Repository: https://github.com/smallnest/kvbench.git
Documentation: pkg.go.dev

# Packages

No description provided by the author

# README

KVBench

cloned from tidwall/kvbench

KVBench is a Redis server clone backed by a few different Go databases.

It's intended to be used with the redis-benchmark command to test the performance of various Go databases. It has support for redis pipelining. The redis-benchmark can run as explained here https://github.com/tidwall/kvbench#examples.

This cloned version adds more kv databases and automatic scripts.

Features:

SSD benchmark

The following benchmarks show the throughput of inserting/reading keys (of size 9 bytes) and values (of size 256 bytes).

nofsync

throughputs

badgerbboltboltleveldbkvbuntdbpebblepogrebnutsdbrocksdbbtreebtree/memorymapmap/memory
Batch Write18180003050002790004580001130001109000484000169400019780004400002322000OOM2718000OOM
del420685830560272084124984479139224442641140128616859700276131512892713956378
set3994517457175841198461159840720777946645711345581718137413652104137153551238
get47494369181270682541683232969185773332152750637946302742951423034517203567577522846459314
setmixed12353105259520210945133959058853504222886357994557858649585366134747
getmixed1717714487694691271831702053949857168025210983137648172137232248366470377661697788

time (latency)

badgerbboltboltleveldbkvbuntdbpebblepogrebnutsdbrocksdbbtreebtree/memorymapmap/memory
getmixed1455557532136412171501414871184181614521076682661358
set625814320142162086215546139321337612203305918193831822453
get526361353599758213477749396847821223238
setmixed809459501010503747405194793104264169911983234646172431792511561117147421
del594242880446253468200052172710586242192290141832819363

fsync

throughputs

badgerbboltboltleveldbkvbuntdbpebblepogrebnutsdbrocksdbbtreebtree/memorymapmap/memory
Batch Write198100033200030800012200020600075900032400016000260003920001350000OOM1510000OOM
get51126274020174940913993453304424198113125897256537176244827957940730151931155123680465064254
setmixed9345525183515197264849972809947467593124593
getmixed4112171294071476372506920606175627496855743527284410023183371963638967
del19595494984619121909729386961261983210949337805323943419262
set1827848482361285097290005297285799353550494467439

time (latency)

badgerbboltboltleveldbkvbuntdbpebblepogrebnutsdbrocksdbbtreebtree/memorymapmap/memory
setmixed1069991918773819329929120008671941291026163337761020268643102556623559601062035913391106521408026
get488337333178756510379934141894611292049
getmixed607935034934412132142337909448760574240916249360785127325391
del127585078760509501629542050825770788507260255087577855067310265417773
set13676515268251675921056019194542571839862047365482558664874726839044662649372534