From ec0b1ff2bdabad5b024f741f68e0a6a440ea483a Mon Sep 17 00:00:00 2001 From: Levi Tamasi Date: Mon, 14 Feb 2022 15:37:20 -0800 Subject: [PATCH] Add blob compaction readahead size to the BlobDB benchmark script (#9566) Summary: Pull Request resolved: https://github.com/facebook/rocksdb/pull/9566 Reviewed By: riversand963 Differential Revision: D34226256 Pulled By: ltamasi fbshipit-source-id: 4374b819e937c35e3a866ba5b5eafba87ff20af3 --- tools/run_blob_bench.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tools/run_blob_bench.sh b/tools/run_blob_bench.sh index b3657438a..bec26e578 100755 --- a/tools/run_blob_bench.sh +++ b/tools/run_blob_bench.sh @@ -53,6 +53,7 @@ function display_usage() { echo -e "\tENABLE_BLOB_GC\t\t\tEnable blob garbage collection (default: 1)" echo -e "\tBLOB_GC_AGE_CUTOFF\t\tBlob garbage collection age cutoff (default: 0.25)" echo -e "\tBLOB_GC_FORCE_THRESHOLD\t\tThreshold for forcing garbage collection of the oldest blob files (default: 1.0)" + echo -e "\tBLOB_COMPACTION_READAHEAD_SIZE\tBlob compaction readahead size (default: 0)" echo -e "\tTARGET_FILE_SIZE_BASE\t\tTarget SST file size for compactions (default: write buffer size, scaled down if blob files are enabled)" echo -e "\tMAX_BYTES_FOR_LEVEL_BASE\tMaximum size for the base level (default: 8 * target SST file size)" } @@ -111,6 +112,7 @@ blob_compression_type=${BLOB_COMPRESSION_TYPE:-lz4} enable_blob_garbage_collection=${ENABLE_BLOB_GC:-1} blob_garbage_collection_age_cutoff=${BLOB_GC_AGE_CUTOFF:-0.25} blob_garbage_collection_force_threshold=${BLOB_GC_FORCE_THRESHOLD:-1.0} +blob_compaction_readahead_size=${BLOB_COMPACTION_READAHEAD_SIZE:-0} if [ "$enable_blob_files" == "1" ]; then target_file_size_base=${TARGET_FILE_SIZE_BASE:-$((32 * write_buffer_size / value_size))} @@ -139,6 +141,7 @@ echo -e "Compression type for blob files:\t$blob_compression_type" echo -e "Blob GC enabled:\t\t\t$enable_blob_garbage_collection" echo -e "Blob GC age cutoff:\t\t\t$blob_garbage_collection_age_cutoff" echo -e "Blob GC force threshold:\t\t$blob_garbage_collection_force_threshold" +echo -e "Blob compaction readahead size:\t\t$blob_compaction_readahead_size" echo -e "Target SST file size:\t\t\t$target_file_size_base" echo -e "Maximum size of base level:\t\t$max_bytes_for_level_base" echo "=================================================================" @@ -171,7 +174,8 @@ PARAMS="\ PARAMS_GC="$PARAMS \ --enable_blob_garbage_collection=$enable_blob_garbage_collection \ --blob_garbage_collection_age_cutoff=$blob_garbage_collection_age_cutoff \ - --blob_garbage_collection_force_threshold=$blob_garbage_collection_force_threshold" + --blob_garbage_collection_force_threshold=$blob_garbage_collection_force_threshold \ + --blob_compaction_readahead_size=$blob_compaction_readahead_size" # bulk load (using fillrandom) + compact env -u DURATION -S "$ENV_VARS" ./tools/benchmark.sh bulkload "$PARAMS"