Metadata Benchmark
This page documents the metadata benchmark workflow that is currently checked into Curvine. The source of truth is build/tests/meta-bench.sh.
What the script runsâ
The wrapper loads ../conf/curvine-env.sh, sets CLASSPATH to lib/curvine-hadoop-*shade.jar, and invokes:
java -Xms256m -Xmx256m io.curvine.bench.NNBenchWithoutMR -operation $ACTION -bytesToWrite 0 -confDir ${CURVINE_HOME}/conf -threads 10 -baseDir cv://default/fs-meta -numFiles 1000
Because -bytesToWrite is fixed to 0, this script is aimed at metadata operations rather than data-path throughput.
Supported actionsâ
The checked-in script lists these actions:
createWriteopenReadrenamedeletermdir
Each run executes one action at a time.
Default checked-in workloadâ
The active wrapper parameters are:
- Java heap:
256m - Threads:
10 - Base path:
cv://default/fs-meta - File count:
1000
Older benchmark notes that mention larger heaps, higher thread counts, or published QPS tables are not reflected in the current checked-in script.
How to runâ
From the source tree:
bash build/tests/meta-bench.sh createWrite
bash build/tests/meta-bench.sh openRead
bash build/tests/meta-bench.sh rename
bash build/tests/meta-bench.sh delete
bash build/tests/meta-bench.sh rmdir
Before running the benchmark, make sure:
- Curvine is built and
${CURVINE_HOME}/lib/curvine-hadoop-*shade.jaris present. ${CURVINE_HOME}/confcontains the cluster configuration.- The target cluster is reachable at the
cv://defaultendpoint used by the config.
Resultsâ
The reference tree does not check in official metadata benchmark result tables for this workload. Record QPS from your own runs and annotate them with the cluster shape, storage tier, and config used for that run.