diff --git a/datafusion-vortex-partitioned/benchmark.sh b/datafusion-vortex-partitioned/benchmark.sh index eea2b6f5c..a257b10eb 100755 --- a/datafusion-vortex-partitioned/benchmark.sh +++ b/datafusion-vortex-partitioned/benchmark.sh @@ -15,17 +15,17 @@ sudo apt-get install -y gcc jq build-essential # Install Vortex from latest release main branch git clone https://github.com/spiraldb/vortex.git || true cd vortex -git checkout 0.34.0 +git checkout 0.44.0 git submodule update --init # We build a release version of the benchmarking utility using mimalloc, just like the datafusion-cli -cargo build --release --bin clickbench --package bench-vortex +cargo build --release --bin query_bench --package bench-vortex export PATH="`pwd`/target/release:$PATH" cd .. # Vortex's benchmarking utility generates appropriate Vortex files by itself, so we just run it to make sure they exist before we start measuring. # This will download parquet files (with time and string columns already converted to the logically correct datatype) and generate Vortex files from them. echo -n "Load time: " -command time -f '%e' clickbench -i 1 --targets datafusion:vortex --display-format gh-json -q 0 --hide-progress-bar --flavor partitioned +command time -f '%e' query_bench clickbench -i 1 --targets datafusion:vortex --display-format gh-json -q 0 --hide-progress-bar --flavor partitioned # Run benchmarks for single parquet and partitioned, our CLI generates the relevant vortex files. ./run.sh partitioned diff --git a/datafusion-vortex-partitioned/results/c6a.4xlarge.json b/datafusion-vortex-partitioned/results/c6a.4xlarge.json index 9b73b15d2..8e067d874 100644 --- a/datafusion-vortex-partitioned/results/c6a.4xlarge.json +++ b/datafusion-vortex-partitioned/results/c6a.4xlarge.json @@ -1,56 +1,56 @@ { "system": "DataFusion (Vortex, partitioned)", - "date": "2025-07-10", + "date": "2025-08-07", "machine": "c6a.4xlarge", "cluster_size": 1, "proprietary": "no", "tuned": "no", "tags": ["Rust","column-oriented","embedded","stateless"], - "load_time": 2025, - "data_size": 16030812776, + "load_time": 208.63, + "data_size": 15812419580, "result": [ - [0.189, 0.035, 0.037], - [0.226, 0.047, 0.044], - [0.29, 0.091, 0.091], - [0.883, 0.141, 0.145], - [1.412, 0.916, 0.902], - [1.536, 0.82, 0.801], - [0.177, 0.037, 0.035], - [0.226, 0.05, 0.049], - [1.79, 0.989, 0.943], - [2.156, 1.065, 1.065], - [1.01, 0.185, 0.179], - [1.08, 0.197, 0.196], - [1.63, 0.76, 0.742], - [3.317, 1.39, 1.425], - [1.727, 0.722, 0.735], - [1.393, 1.06, 1.055], - [3.428, 1.957, 2.005], - [3.266, 1.953, 1.907], - [5.093, 3.731, 3.761], - [0.447, 0.078, 0.082], - [13.758, 0.653, 0.642], - [14.857, 0.765, 0.771], - [17.913, 1.444, 1.471], - [49.105, 4, 4.035], - [2.279, 0.28, 0.279], - [1.309, 0.211, 0.214], - [2.263, 0.318, 0.319], - [13.616, 1.25, 1.256], - [12.664, 9.603, 9.902], - [0.642, 0.427, 0.42], - [2.845, 0.581, 0.571], - [5.975, 0.676, 0.657], - [4.7, 3.333, 3.414], - [13.778, 3.58, 3.572], - [14.066, 3.679, 3.589], - [1.419, 1.227, 1.168], - [0.355, 0.143, 0.136], - [0.275, 0.074, 0.068], - [0.272, 0.071, 0.065], - [0.447, 0.256, 0.258], - [0.278, 0.046, 0.05], - [0.26, 0.048, 0.049], - [0.267, 0.069, 0.062] -] + [0.46253397, 0.037158406, 0.037691171], + [0.610650301, 0.048488383, 0.050934092], + [1.396069485, 0.080961145, 0.084554878], + [3.02162171, 0.133933147, 0.129616406], + [3.041626834, 0.75920063, 0.796099832], + [4.184650763, 0.828085784, 0.78301152], + [0.227687226, 0.047766699, 0.035752126], + [0.348559013, 0.051515242, 0.050747312], + [4.128052101, 0.901855398, 0.932169221], + [4.404706066, 1.00746441, 0.986336246], + [2.673922599, 0.160169697, 0.166423223], + [3.041334404, 0.179402617, 0.182405352], + [4.505253625, 0.675846421, 0.675620887], + [7.270337032, 1.270896868, 1.223746891], + [4.495065472, 0.656599954, 0.654115063], + [2.734807873, 0.979836753, 0.874699098], + [6.795665382, 1.722579261, 1.751881691], + [6.824501787, 1.74540955, 1.738042042], + [9.183125573, 3.337959019, 3.265056724], + [1.704086675, 0.080394864, 0.072437846], + [28.532298301, 0.604708132, 0.612086862], + [31.09728059, 0.730309909, 0.72754013], + [36.869137338, 1.336949381, 1.367562413], + [98.810300479, 4.318801697, 4.390844988], + [5.906679078, 0.236549325, 0.243135004], + [4.143619741, 0.160338307, 0.149354462], + [6.210047753, 0.241249493, 0.243290856], + [28.515009562, 1.149712509, 1.158252015], + [23.22071924, 9.41772195, 9.43845471], + [0.85688345, 0.535619387, 0.54440709], + [6.914319046, 0.57216058, 0.570108651], + [13.230020774, 0.691255195, 0.636682458], + [9.34386667, 3.150708616, 3.200822751], + [28.586140461, 3.48110173, 3.467666154], + [28.622548393, 3.442896776, 3.465528342], + [2.137594646, 1.122478265, 1.15540769], + [0.364387036, 0.149012906, 0.155900777], + [0.550358513, 0.096588634, 0.091583696], + [0.836532657, 0.073034192, 0.082260376], + [1.143149152, 0.274401365, 0.292553024], + [0.499817024, 0.059016133, 0.062895227], + [0.678132818, 0.05422875, 0.055551027], + [0.628570513, 0.072180356, 0.066718048] + ] } \ No newline at end of file diff --git a/datafusion-vortex-partitioned/run.sh b/datafusion-vortex-partitioned/run.sh index 62b38d886..fff252300 100755 --- a/datafusion-vortex-partitioned/run.sh +++ b/datafusion-vortex-partitioned/run.sh @@ -34,7 +34,7 @@ for query_num in $(seq 0 42); do echo -n "[" for i in $(seq 1 $TRIES); do # Parse query results out of the JSON output, which reports the time in ns - RES=$(RUST_LOG=off clickbench -i 1 --flavor $FLAVOR --targets datafusion:vortex --display-format gh-json --queries-file ./queries.sql -q $query_num --hide-progress-bar | jq ".value / 1000000000") + RES=$(RUST_LOG=off query_bench clickbench -i 1 --flavor $FLAVOR --targets datafusion:vortex --display-format gh-json --queries-file ./queries.sql -q $query_num --hide-progress-bar | jq ".value / 1000000000") [[ $RES != "" ]] && \ echo -n "$RES" || \