Skip to content

Conversation

@a10y
Copy link
Contributor

@a10y a10y commented Oct 14, 2025

Part of #4889

To better support writing nested data, here we update our builtin StructLayout in a backwards-compatible fashion.

  • StructStrategy will shred struct fields into their own StructLayout recurseively
  • StructLayout can support nullable structs now. It does this by writing a new child layout containing the validity buffer for nullable arrays

I use the RealNest dataset to evaluate, which contains a copy of ~200k github pull request webhook events. Nested struct layout reduces file size over the previous strategy by about ~10%, and also makes pushdown into the nested columns possible.

Some open questions

  • The validity child requires some extra handling. It seems like the validity handling is very dependent on the expression being pushed down. For example if I'm doing a simple project of a child field, then adding the validity to the result is a simple masking operation. If I'm pushing down an UNNEST or something else that increases the result size, it is hard to map the validity buffer onto the projection_eval result
  • I collect all validity chunks into a single buffer at write time. The idea being that it's better to access the struct validity as a single unit since it is much smaller than the data size. Assuming an 8MB target segment size, this lets us comfortably fit ~64mm rows into a single segment. Another alternative is to bring back roaring, or enable some other boolean compressors.

Comment on lines 288 to 303
vortex_array::compute::mask(
projection.as_ref(),
&Mask::from_buffer(!validity.to_bool().boolean_buffer()),
)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is only safe when we know that the projection has the same length as the struct itself. If we're projecting an UNNEST(a) that will not hold. We don't have UNNEST but i suspect we'll want to add it so we can pushdown into list elements

@a10y a10y requested a review from robert3005 October 14, 2025 15:00
@a10y a10y added the changelog/feature A new feature label Oct 14, 2025
Copy link
Contributor

@robert3005 robert3005 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this makes sense. Some of the code comments are not correct though

chunks.push(chunk);
}

let collected = ChunkedArray::try_new(chunks, _dtype)?.to_array();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe we canonicalize here instead of writing a flat chunked array?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In practice that ends up happening b/c the child here is the CompressStrategy, so it will canonicalize + compress internally.

In general I tried to mirror this on the RepartitionStrategy which yields ChunkedArray as well. I think the LayoutStrategies are a bit weird tbh and there are a few unexpected things like this.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought repartition strategy will have a chunked strategy as a child so it will flatten the chunked array, in this case I think we go straight to flat.

a10y added a commit that referenced this pull request Oct 16, 2025
GithubArchive is an archival dataset of Github event logs, hosted at
https://www.gharchive.org/.

It's also distributed as part of RealNest from CWI.

This is our first benchmark to test nested data access with Vortex.


I want to get this in before we merge #4942 or any other follow on work
for nested data support.

TODOs:

- [x] Add more data files. Currently queries finish way too fast
- [x] Add a few more queries

---------

Signed-off-by: Andrew Duffy <andrew@a10y.dev>
@a10y a10y added the action/benchmark-sql Trigger SQL benchmarks to run on this PR label Oct 16, 2025
@github-actions github-actions bot removed the action/benchmark-sql Trigger SQL benchmarks to run on this PR label Oct 16, 2025
@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: FineWeb S3

Summary

  • Overall: 1.020x ➖
  • Vortex: 1.039x ➖
  • duckdb:vortex: 0.987x ➖
  • datafusion:vortex: 1.094x ➖
  • Best: fineweb_q00/datafusion:vortex-file-compressed (0.790x)
  • Worst: fineweb_q02/datafusion:vortex-compact (1.518x)
  • Significant (>30%): 0↑ 9↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
fineweb_q00/datafusion:parquet 5849530 5.9231e+06 0.987578 ns
fineweb_q00/datafusion:parquet 5849530 6.16464e+06 0.948885 ns
fineweb_q01/datafusion:parquet 309882455 3.09527e+08 1.00115 ns
fineweb_q01/datafusion:parquet 309882455 3.20878e+08 0.965734 ns
fineweb_q02/datafusion:parquet 304448190 3.02935e+08 1.005 ns
fineweb_q02/datafusion:parquet 304448190 3.10408e+08 0.980799 ns
fineweb_q03/datafusion:parquet 295683515 3.05646e+08 0.967405 ns
fineweb_q03/datafusion:parquet 295683515 3.01212e+08 0.981646 ns
fineweb_q04/datafusion:parquet 329183323 3.27152e+08 1.00621 ns
fineweb_q04/datafusion:parquet 329183323 3.44847e+08 0.954578 ns
fineweb_q05/datafusion:parquet 320172349 3.12463e+08 1.02467 ns
fineweb_q05/datafusion:parquet 320172349 3.32365e+08 0.963315 ns
fineweb_q06/datafusion:parquet 308370058 3.01829e+08 1.02167 ns
fineweb_q06/datafusion:parquet 308370058 3.23812e+08 0.952312 ns
fineweb_q07/datafusion:parquet 299149786 3.00368e+08 0.995945 ns
fineweb_q07/datafusion:parquet 299149786 3.1597e+08 0.946766 ns
fineweb_q08/datafusion:parquet 299094982 2.9599e+08 1.01049 ns
fineweb_q08/datafusion:parquet 299094982 3.08913e+08 0.968216 ns
fineweb_q00/datafusion:vortex-file-compressed 3630240 3.65042e+06 0.994471 ns
fineweb_q00/datafusion:vortex-file-compressed 3630240 4.59665e+06 0.789758 ns
fineweb_q01/datafusion:vortex-file-compressed 25815157 2.65619e+07 0.971888 ns
fineweb_q01/datafusion:vortex-file-compressed 25815157 2.57153e+07 1.00389 ns
fineweb_q02/datafusion:vortex-file-compressed 22000383 2.69639e+07 0.81592 ns
fineweb_q02/datafusion:vortex-file-compressed 22000383 2.67587e+07 0.822178 ns
fineweb_q03/datafusion:vortex-file-compressed 88428848 7.59454e+07 1.16437 ns
fineweb_q03/datafusion:vortex-file-compressed 88428848 9.167e+07 0.964644 ns
fineweb_q04/datafusion:vortex-file-compressed 206002206 2.12127e+08 0.971127 ns
fineweb_q04/datafusion:vortex-file-compressed 206002206 2.11025e+08 0.9762 ns
fineweb_q05/datafusion:vortex-file-compressed 187763422 1.89032e+08 0.993288 ns
fineweb_q05/datafusion:vortex-file-compressed 187763422 1.85189e+08 1.0139 ns
fineweb_q06/datafusion:vortex-file-compressed 64400924 6.59356e+07 0.976725 ns
fineweb_q06/datafusion:vortex-file-compressed 64400924 6.57365e+07 0.979682 ns
fineweb_q07/datafusion:vortex-file-compressed 64844814 6.87143e+07 0.943687 ns
fineweb_q07/datafusion:vortex-file-compressed 64844814 6.76663e+07 0.958303 ns
fineweb_q08/datafusion:vortex-file-compressed 25771633 2.62786e+07 0.980708 ns
fineweb_q08/datafusion:vortex-file-compressed 25771633 2.7111e+07 0.950596 ns
fineweb_q00/datafusion:vortex-compact 3911760 4.59831e+06 0.850696 ns
fineweb_q00/datafusion:vortex-compact 3911760 4.61326e+06 0.847938 ns
fineweb_q01/datafusion:vortex-compact 174116368 1.39416e+08 1.2489 ns
fineweb_q01/datafusion:vortex-compact 174116368 1.2479e+08 1.39527 ns 🚨
fineweb_q02/datafusion:vortex-compact 160140795 1.05491e+08 1.51805 ns 🚨
fineweb_q02/datafusion:vortex-compact 160140795 1.09967e+08 1.45626 ns 🚨
fineweb_q03/datafusion:vortex-compact 1382317364 9.67785e+08 1.42833 ns 🚨
fineweb_q03/datafusion:vortex-compact 1382317364 9.64336e+08 1.43344 ns 🚨
fineweb_q04/datafusion:vortex-compact 1633194068 1.11388e+09 1.46621 ns 🚨
fineweb_q04/datafusion:vortex-compact 1633194068 1.09391e+09 1.49298 ns 🚨
fineweb_q05/datafusion:vortex-compact 1244377067 9.21696e+08 1.3501 ns 🚨
fineweb_q05/datafusion:vortex-compact 1244377067 9.16969e+08 1.35705 ns 🚨
fineweb_q06/datafusion:vortex-compact 630387042 5.2338e+08 1.20445 ns
fineweb_q06/datafusion:vortex-compact 630387042 4.90609e+08 1.28491 ns
fineweb_q07/datafusion:vortex-compact 664726960 5.18273e+08 1.28258 ns
fineweb_q07/datafusion:vortex-compact 664726960 5.14246e+08 1.29262 ns
fineweb_q08/datafusion:vortex-compact 21832232 2.04177e+07 1.06928 ns
fineweb_q08/datafusion:vortex-compact 21832232 2.39467e+07 0.911701 ns
fineweb_q00/duckdb:parquet 29195168 2.73622e+07 1.06699 ns
fineweb_q00/duckdb:parquet 29195168 3.04507e+07 0.958769 ns
fineweb_q01/duckdb:parquet 95027839 9.47541e+07 1.00289 ns
fineweb_q01/duckdb:parquet 95027839 9.8999e+07 0.959887 ns
fineweb_q02/duckdb:parquet 101569213 1.01057e+08 1.00507 ns
fineweb_q02/duckdb:parquet 101569213 1.05957e+08 0.958585 ns
fineweb_q03/duckdb:parquet 305254468 3.04638e+08 1.00202 ns
fineweb_q03/duckdb:parquet 305254468 3.11753e+08 0.979156 ns
fineweb_q04/duckdb:parquet 428265743 4.29666e+08 0.996742 ns
fineweb_q04/duckdb:parquet 428265743 4.35444e+08 0.983515 ns
fineweb_q05/duckdb:parquet 403098097 4.01786e+08 1.00327 ns
fineweb_q05/duckdb:parquet 403098097 4.10478e+08 0.982022 ns
fineweb_q06/duckdb:parquet 200533780 1.9974e+08 1.00398 ns
fineweb_q06/duckdb:parquet 200533780 2.09789e+08 0.955882 ns
fineweb_q07/duckdb:parquet 213666243 2.13199e+08 1.00219 ns
fineweb_q07/duckdb:parquet 213666243 2.19694e+08 0.972564 ns
fineweb_q08/duckdb:parquet 59440209 6.20049e+07 0.958637 ns
fineweb_q08/duckdb:parquet 59440209 6.62005e+07 0.897881 ns
fineweb_q00/duckdb:vortex-file-compressed 4982169 4.58425e+06 1.0868 ns
fineweb_q00/duckdb:vortex-file-compressed 4982169 4.91286e+06 1.01411 ns
fineweb_q01/duckdb:vortex-file-compressed 25288483 2.71192e+07 0.932495 ns
fineweb_q01/duckdb:vortex-file-compressed 25288483 2.60869e+07 0.969395 ns
fineweb_q02/duckdb:vortex-file-compressed 31239118 2.93826e+07 1.06318 ns
fineweb_q02/duckdb:vortex-file-compressed 31239118 3.02683e+07 1.03207 ns
fineweb_q03/duckdb:vortex-file-compressed 117335679 1.15025e+08 1.02009 ns
fineweb_q03/duckdb:vortex-file-compressed 117335679 1.06518e+08 1.10156 ns
fineweb_q04/duckdb:vortex-file-compressed 189537852 1.92134e+08 0.986486 ns
fineweb_q04/duckdb:vortex-file-compressed 189537852 1.94951e+08 0.972236 ns
fineweb_q05/duckdb:vortex-file-compressed 177100294 1.78785e+08 0.990578 ns
fineweb_q05/duckdb:vortex-file-compressed 177100294 1.77763e+08 0.996272 ns
fineweb_q06/duckdb:vortex-file-compressed 54870559 6.3189e+07 0.868356 ns
fineweb_q06/duckdb:vortex-file-compressed 54870559 5.62627e+07 0.975257 ns
fineweb_q07/duckdb:vortex-file-compressed 59053475 6.01289e+07 0.982115 ns
fineweb_q07/duckdb:vortex-file-compressed 59053475 6.12705e+07 0.963816 ns
fineweb_q08/duckdb:vortex-file-compressed 8018342 9.043e+06 0.88669 ns
fineweb_q08/duckdb:vortex-file-compressed 8018342 8.84628e+06 0.906409 ns
fineweb_q00/duckdb:vortex-compact 5973744 5.82711e+06 1.02516 ns
fineweb_q00/duckdb:vortex-compact 5973744 5.99473e+06 0.9965 ns
fineweb_q01/duckdb:vortex-compact 101084212 9.97098e+07 1.01378 ns
fineweb_q01/duckdb:vortex-compact 101084212 9.30759e+07 1.08604 ns
fineweb_q02/duckdb:vortex-compact 101177824 1.00506e+08 1.00668 ns
fineweb_q02/duckdb:vortex-compact 101177824 1.03725e+08 0.975439 ns
fineweb_q03/duckdb:vortex-compact 841843782 8.50468e+08 0.98986 ns
fineweb_q03/duckdb:vortex-compact 841843782 8.43795e+08 0.997688 ns
fineweb_q04/duckdb:vortex-compact 896828922 8.93003e+08 1.00428 ns
fineweb_q04/duckdb:vortex-compact 896828922 9.07964e+08 0.987736 ns
fineweb_q05/duckdb:vortex-compact 797808375 8.00506e+08 0.996631 ns
fineweb_q05/duckdb:vortex-compact 797808375 8.10225e+08 0.984676 ns
fineweb_q06/duckdb:vortex-compact 443297447 4.47383e+08 0.990868 ns
fineweb_q06/duckdb:vortex-compact 443297447 4.55087e+08 0.974093 ns
fineweb_q07/duckdb:vortex-compact 458926093 4.61399e+08 0.994641 ns
fineweb_q07/duckdb:vortex-compact 458926093 4.58018e+08 1.00198 ns
fineweb_q08/duckdb:vortex-compact 7486249 8.99054e+06 0.832681 ns
fineweb_q08/duckdb:vortex-compact 7486249 7.61464e+06 0.983138 ns

@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: FineWeb NVMe

Summary

  • Overall: 1.048x ➖
  • Vortex: 1.065x ➖
  • duckdb:vortex: 1.001x ➖
  • datafusion:vortex: 1.133x ❌
  • Best: fineweb_q08/datafusion:vortex-compact (0.800x)
  • Worst: fineweb_q04/datafusion:vortex-compact (1.554x)
  • Significant (>10%): 5↑ 17↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
fineweb_q00/datafusion:parquet 6605248 5.9231e+06 1.11517 ns
fineweb_q00/datafusion:parquet 6605248 6.16464e+06 1.07147 ns
fineweb_q01/datafusion:parquet 324624563 3.09527e+08 1.04878 ns
fineweb_q01/datafusion:parquet 324624563 3.20878e+08 1.01168 ns
fineweb_q02/datafusion:parquet 311454720 3.02935e+08 1.02813 ns
fineweb_q02/datafusion:parquet 311454720 3.10408e+08 1.00337 ns
fineweb_q03/datafusion:parquet 304231937 3.05646e+08 0.995374 ns
fineweb_q03/datafusion:parquet 304231937 3.01212e+08 1.01003 ns
fineweb_q04/datafusion:parquet 348921848 3.27152e+08 1.06654 ns
fineweb_q04/datafusion:parquet 348921848 3.44847e+08 1.01182 ns
fineweb_q05/datafusion:parquet 326343806 3.12463e+08 1.04442 ns
fineweb_q05/datafusion:parquet 326343806 3.32365e+08 0.981883 ns
fineweb_q06/datafusion:parquet 313588584 3.01829e+08 1.03896 ns
fineweb_q06/datafusion:parquet 313588584 3.23812e+08 0.968428 ns
fineweb_q07/datafusion:parquet 309599409 3.00368e+08 1.03073 ns
fineweb_q07/datafusion:parquet 309599409 3.1597e+08 0.979838 ns
fineweb_q08/datafusion:parquet 307793022 2.9599e+08 1.03988 ns
fineweb_q08/datafusion:parquet 307793022 3.08913e+08 0.996373 ns
fineweb_q00/datafusion:vortex-file-compressed 3768200 3.65042e+06 1.03226 ns
fineweb_q00/datafusion:vortex-file-compressed 3768200 4.59665e+06 0.819771 ns
fineweb_q01/datafusion:vortex-file-compressed 24867466 2.65619e+07 0.936209 ns
fineweb_q01/datafusion:vortex-file-compressed 24867466 2.57153e+07 0.967032 ns
fineweb_q02/datafusion:vortex-file-compressed 28258382 2.69639e+07 1.04801 ns
fineweb_q02/datafusion:vortex-file-compressed 28258382 2.67587e+07 1.05605 ns
fineweb_q03/datafusion:vortex-file-compressed 91112920 7.59454e+07 1.19972 ns
fineweb_q03/datafusion:vortex-file-compressed 91112920 9.167e+07 0.993923 ns
fineweb_q04/datafusion:vortex-file-compressed 211738889 2.12127e+08 0.998171 ns
fineweb_q04/datafusion:vortex-file-compressed 211738889 2.11025e+08 1.00338 ns
fineweb_q05/datafusion:vortex-file-compressed 193488188 1.89032e+08 1.02357 ns
fineweb_q05/datafusion:vortex-file-compressed 193488188 1.85189e+08 1.04482 ns
fineweb_q06/datafusion:vortex-file-compressed 69376477 6.59356e+07 1.05219 ns
fineweb_q06/datafusion:vortex-file-compressed 69376477 6.57365e+07 1.05537 ns
fineweb_q07/datafusion:vortex-file-compressed 67374747 6.87143e+07 0.980505 ns
fineweb_q07/datafusion:vortex-file-compressed 67374747 6.76663e+07 0.995691 ns
fineweb_q08/datafusion:vortex-file-compressed 26803375 2.62786e+07 1.01997 ns
fineweb_q08/datafusion:vortex-file-compressed 26803375 2.7111e+07 0.988652 ns
fineweb_q00/datafusion:vortex-compact 4597498 4.59831e+06 0.999824 ns
fineweb_q00/datafusion:vortex-compact 4597498 4.61326e+06 0.996583 ns
fineweb_q01/datafusion:vortex-compact 170359265 1.39416e+08 1.22195 ns
fineweb_q01/datafusion:vortex-compact 170359265 1.2479e+08 1.36517 ns 🚨
fineweb_q02/datafusion:vortex-compact 163843792 1.05491e+08 1.55315 ns 🚨
fineweb_q02/datafusion:vortex-compact 163843792 1.09967e+08 1.48993 ns 🚨
fineweb_q03/datafusion:vortex-compact 1404571667 9.67785e+08 1.45133 ns 🚨
fineweb_q03/datafusion:vortex-compact 1404571667 9.64336e+08 1.45652 ns 🚨
fineweb_q04/datafusion:vortex-compact 1700296761 1.11388e+09 1.52646 ns 🚨
fineweb_q04/datafusion:vortex-compact 1700296761 1.09391e+09 1.55433 ns 🚨
fineweb_q05/datafusion:vortex-compact 1255857668 9.21696e+08 1.36255 ns 🚨
fineweb_q05/datafusion:vortex-compact 1255857668 9.16969e+08 1.36957 ns 🚨
fineweb_q06/datafusion:vortex-compact 645277017 5.2338e+08 1.2329 ns
fineweb_q06/datafusion:vortex-compact 645277017 4.90609e+08 1.31526 ns 🚨
fineweb_q07/datafusion:vortex-compact 676788181 5.18273e+08 1.30585 ns 🚨
fineweb_q07/datafusion:vortex-compact 676788181 5.14246e+08 1.31608 ns 🚨
fineweb_q08/datafusion:vortex-compact 19159297 2.04177e+07 0.938366 ns
fineweb_q08/datafusion:vortex-compact 19159297 2.39467e+07 0.80008 ns
fineweb_q00/duckdb:parquet 29739935 2.73622e+07 1.0869 ns
fineweb_q00/duckdb:parquet 29739935 3.04507e+07 0.976659 ns
fineweb_q01/duckdb:parquet 98819398 9.47541e+07 1.0429 ns
fineweb_q01/duckdb:parquet 98819398 9.8999e+07 0.998186 ns
fineweb_q02/duckdb:parquet 102785817 1.01057e+08 1.01711 ns
fineweb_q02/duckdb:parquet 102785817 1.05957e+08 0.970067 ns
fineweb_q03/duckdb:parquet 311870378 3.04638e+08 1.02374 ns
fineweb_q03/duckdb:parquet 311870378 3.11753e+08 1.00038 ns
fineweb_q04/duckdb:parquet 437116617 4.29666e+08 1.01734 ns
fineweb_q04/duckdb:parquet 437116617 4.35444e+08 1.00384 ns
fineweb_q05/duckdb:parquet 408033463 4.01786e+08 1.01555 ns
fineweb_q05/duckdb:parquet 408033463 4.10478e+08 0.994045 ns
fineweb_q06/duckdb:parquet 206399418 1.9974e+08 1.03334 ns
fineweb_q06/duckdb:parquet 206399418 2.09789e+08 0.983842 ns
fineweb_q07/duckdb:parquet 218468613 2.13199e+08 1.02471 ns
fineweb_q07/duckdb:parquet 218468613 2.19694e+08 0.994424 ns
fineweb_q08/duckdb:parquet 62483102 6.20049e+07 1.00771 ns
fineweb_q08/duckdb:parquet 62483102 6.62005e+07 0.943846 ns
fineweb_q00/duckdb:vortex-file-compressed 4865240 4.58425e+06 1.06129 ns
fineweb_q00/duckdb:vortex-file-compressed 4865240 4.91286e+06 0.990308 ns
fineweb_q01/duckdb:vortex-file-compressed 24052874 2.71192e+07 0.886933 ns
fineweb_q01/duckdb:vortex-file-compressed 24052874 2.60869e+07 0.92203 ns
fineweb_q02/duckdb:vortex-file-compressed 28759188 2.93826e+07 0.978782 ns
fineweb_q02/duckdb:vortex-file-compressed 28759188 3.02683e+07 0.950141 ns
fineweb_q03/duckdb:vortex-file-compressed 111769737 1.15025e+08 0.971703 ns
fineweb_q03/duckdb:vortex-file-compressed 111769737 1.06518e+08 1.04931 ns
fineweb_q04/duckdb:vortex-file-compressed 199902936 1.92134e+08 1.04043 ns
fineweb_q04/duckdb:vortex-file-compressed 199902936 1.94951e+08 1.0254 ns
fineweb_q05/duckdb:vortex-file-compressed 185067234 1.78785e+08 1.03514 ns
fineweb_q05/duckdb:vortex-file-compressed 185067234 1.77763e+08 1.04109 ns
fineweb_q06/duckdb:vortex-file-compressed 55678126 6.3189e+07 0.881136 ns
fineweb_q06/duckdb:vortex-file-compressed 55678126 5.62627e+07 0.989611 ns
fineweb_q07/duckdb:vortex-file-compressed 60455756 6.01289e+07 1.00544 ns
fineweb_q07/duckdb:vortex-file-compressed 60455756 6.12705e+07 0.986702 ns
fineweb_q08/duckdb:vortex-file-compressed 8552947 9.043e+06 0.945808 ns
fineweb_q08/duckdb:vortex-file-compressed 8552947 8.84628e+06 0.966841 ns
fineweb_q00/duckdb:vortex-compact 5738632 5.82711e+06 0.984817 ns
fineweb_q00/duckdb:vortex-compact 5738632 5.99473e+06 0.95728 ns
fineweb_q01/duckdb:vortex-compact 89226672 9.97098e+07 0.894864 ns
fineweb_q01/duckdb:vortex-compact 89226672 9.30759e+07 0.958644 ns
fineweb_q02/duckdb:vortex-compact 100139950 1.00506e+08 0.996358 ns
fineweb_q02/duckdb:vortex-compact 100139950 1.03725e+08 0.965433 ns
fineweb_q03/duckdb:vortex-compact 861621812 8.50468e+08 1.01312 ns
fineweb_q03/duckdb:vortex-compact 861621812 8.43795e+08 1.02113 ns
fineweb_q04/duckdb:vortex-compact 905551822 8.93003e+08 1.01405 ns
fineweb_q04/duckdb:vortex-compact 905551822 9.07964e+08 0.997343 ns
fineweb_q05/duckdb:vortex-compact 801367297 8.00506e+08 1.00108 ns
fineweb_q05/duckdb:vortex-compact 801367297 8.10225e+08 0.989068 ns
fineweb_q06/duckdb:vortex-compact 459940349 4.47383e+08 1.02807 ns
fineweb_q06/duckdb:vortex-compact 459940349 4.55087e+08 1.01066 ns
fineweb_q07/duckdb:vortex-compact 470783922 4.61399e+08 1.02034 ns
fineweb_q07/duckdb:vortex-compact 470783922 4.58018e+08 1.02787 ns
fineweb_q08/duckdb:vortex-compact 10401275 8.99054e+06 1.15691 ns
fineweb_q08/duckdb:vortex-compact 10401275 7.61464e+06 1.36596 ns 🚨

@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: TPC-H SF=1 on S3

Summary

  • Overall: 0.948x ➖
  • Vortex: 0.947x ➖
  • duckdb:vortex: 0.966x ➖
  • datafusion:vortex: 0.929x ➖
  • Best: tpch_q05/datafusion:vortex-file-compressed (0.608x)
  • Worst: tpch_q01/datafusion:vortex-compact (1.169x)
  • Significant (>30%): 2↑ 0↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
tpch_q01/datafusion:parquet 270125974 2.80435e+08 0.963239 ns
tpch_q02/datafusion:parquet 368924670 3.99638e+08 0.923147 ns
tpch_q03/datafusion:parquet 303842105 3.03242e+08 1.00198 ns
tpch_q04/datafusion:parquet 139948524 1.45387e+08 0.962594 ns
tpch_q05/datafusion:parquet 380682848 4.93353e+08 0.771623 ns
tpch_q06/datafusion:parquet 141251284 1.3332e+08 1.05949 ns
tpch_q07/datafusion:parquet 401547170 4.82709e+08 0.831861 ns
tpch_q08/datafusion:parquet 473010410 4.78494e+08 0.988539 ns
tpch_q09/datafusion:parquet 439243802 4.45672e+08 0.985575 ns
tpch_q10/datafusion:parquet 452556826 4.70425e+08 0.962016 ns
tpch_q11/datafusion:parquet 296840119 2.94689e+08 1.0073 ns
tpch_q12/datafusion:parquet 213146546 2.4059e+08 0.885934 ns
tpch_q13/datafusion:parquet 428043357 4.36198e+08 0.981305 ns
tpch_q14/datafusion:parquet 157992108 1.66396e+08 0.949496 ns
tpch_q15/datafusion:parquet 287484820 2.88299e+08 0.997177 ns
tpch_q16/datafusion:parquet 193985264 2.09423e+08 0.926283 ns
tpch_q17/datafusion:parquet 350245693 3.70351e+08 0.945712 ns
tpch_q18/datafusion:parquet 443762453 4.52839e+08 0.979957 ns
tpch_q19/datafusion:parquet 326248191 3.0354e+08 1.07481 ns
tpch_q20/datafusion:parquet 277792627 2.74237e+08 1.01297 ns
tpch_q21/datafusion:parquet 421628812 4.44302e+08 0.948969 ns
tpch_q22/datafusion:parquet 169142086 1.83119e+08 0.923674 ns
tpch_q01/datafusion:vortex-file-compressed 256397665 2.32196e+08 1.10423 ns
tpch_q02/datafusion:vortex-file-compressed 206261718 2.52913e+08 0.815544 ns
tpch_q03/datafusion:vortex-file-compressed 293206727 3.63625e+08 0.806344 ns
tpch_q04/datafusion:vortex-file-compressed 188879055 1.91839e+08 0.984571 ns
tpch_q05/datafusion:vortex-file-compressed 265105333 4.35969e+08 0.608082 ns 🚀
tpch_q06/datafusion:vortex-file-compressed 196097108 2.90851e+08 0.674218 ns 🚀
tpch_q07/datafusion:vortex-file-compressed 278737415 2.58551e+08 1.07807 ns
tpch_q08/datafusion:vortex-file-compressed 483741458 4.83398e+08 1.00071 ns
tpch_q09/datafusion:vortex-file-compressed 428916230 4.75673e+08 0.901704 ns
tpch_q10/datafusion:vortex-file-compressed 311798110 3.92344e+08 0.794706 ns
tpch_q11/datafusion:vortex-file-compressed 125467681 1.18619e+08 1.05774 ns
tpch_q12/datafusion:vortex-file-compressed 258783411 2.81586e+08 0.91902 ns
tpch_q13/datafusion:vortex-file-compressed 210234535 2.18334e+08 0.962904 ns
tpch_q14/datafusion:vortex-file-compressed 172772133 1.65717e+08 1.04257 ns
tpch_q15/datafusion:vortex-file-compressed 241834305 2.42042e+08 0.999141 ns
tpch_q16/datafusion:vortex-file-compressed 128560542 1.28734e+08 0.998652 ns
tpch_q17/datafusion:vortex-file-compressed 378890682 3.69926e+08 1.02423 ns
tpch_q18/datafusion:vortex-file-compressed 297218344 3.18562e+08 0.933 ns
tpch_q19/datafusion:vortex-file-compressed 320382696 3.29849e+08 0.971301 ns
tpch_q20/datafusion:vortex-file-compressed 227029018 2.40388e+08 0.944429 ns
tpch_q21/datafusion:vortex-file-compressed 327062011 4.61855e+08 0.708149 ns
tpch_q22/datafusion:vortex-file-compressed 146432119 1.40353e+08 1.04331 ns
tpch_q01/datafusion:vortex-compact 302194260 2.5853e+08 1.1689 ns
tpch_q02/datafusion:vortex-compact 181062173 1.95649e+08 0.925446 ns
tpch_q03/datafusion:vortex-compact 271373667 2.69365e+08 1.00746 ns
tpch_q04/datafusion:vortex-compact 189418862 2.14352e+08 0.88368 ns
tpch_q05/datafusion:vortex-compact 261355121 2.55177e+08 1.02421 ns
tpch_q06/datafusion:vortex-compact 281764899 3.131e+08 0.899919 ns
tpch_q07/datafusion:vortex-compact 230534933 2.48226e+08 0.928728 ns
tpch_q08/datafusion:vortex-compact 330646808 4.20816e+08 0.785728 ns
tpch_q09/datafusion:vortex-compact 383046460 3.72036e+08 1.0296 ns
tpch_q10/datafusion:vortex-compact 329558392 3.33314e+08 0.988731 ns
tpch_q11/datafusion:vortex-compact 98902266 1.00575e+08 0.983364 ns
tpch_q12/datafusion:vortex-compact 306939482 3.24336e+08 0.946364 ns
tpch_q13/datafusion:vortex-compact 141688131 1.57925e+08 0.897183 ns
tpch_q14/datafusion:vortex-compact 170412829 1.7716e+08 0.961914 ns
tpch_q15/datafusion:vortex-compact 281220629 2.90022e+08 0.969654 ns
tpch_q16/datafusion:vortex-compact 124159531 1.33964e+08 0.92681 ns
tpch_q17/datafusion:vortex-compact 325349725 3.78313e+08 0.860001 ns
tpch_q18/datafusion:vortex-compact 242402646 2.58669e+08 0.937117 ns
tpch_q19/datafusion:vortex-compact 385427260 3.61356e+08 1.06661 ns
tpch_q20/datafusion:vortex-compact 236448176 2.46603e+08 0.958821 ns
tpch_q21/datafusion:vortex-compact 342774433 4.82184e+08 0.710879 ns
tpch_q22/datafusion:vortex-compact 103368404 1.06704e+08 0.968736 ns
tpch_q01/duckdb:parquet 505049978 6.06934e+08 0.832133 ns
tpch_q02/duckdb:parquet 1090452787 1.21839e+09 0.894993 ns
tpch_q03/duckdb:parquet 854912318 9.68633e+08 0.882597 ns
tpch_q04/duckdb:parquet 533257952 5.92527e+08 0.899972 ns
tpch_q05/duckdb:parquet 1300672508 1.24804e+09 1.04217 ns
tpch_q06/duckdb:parquet 366243808 3.7697e+08 0.971547 ns
tpch_q07/duckdb:parquet 1062420223 1.05437e+09 1.00763 ns
tpch_q08/duckdb:parquet 1258008158 1.43683e+09 0.875545 ns
tpch_q09/duckdb:parquet 1162848993 1.23113e+09 0.944538 ns
tpch_q10/duckdb:parquet 1116243074 1.21573e+09 0.918168 ns
tpch_q11/duckdb:parquet 725788852 7.66393e+08 0.947019 ns
tpch_q12/duckdb:parquet 534538440 4.94787e+08 1.08034 ns
tpch_q13/duckdb:parquet 812116839 8.17937e+08 0.992885 ns
tpch_q14/duckdb:parquet 518070409 5.51425e+08 0.939512 ns
tpch_q15/duckdb:parquet 568740477 6.42377e+08 0.885368 ns
tpch_q16/duckdb:parquet 500635046 4.89645e+08 1.02244 ns
tpch_q17/duckdb:parquet 637793344 6.968e+08 0.915318 ns
tpch_q18/duckdb:parquet 720401777 8.02536e+08 0.897657 ns
tpch_q19/duckdb:parquet 681277471 6.90702e+08 0.986355 ns
tpch_q20/duckdb:parquet 860472727 9.06055e+08 0.949691 ns
tpch_q21/duckdb:parquet 936688546 1.07979e+09 0.867472 ns
tpch_q22/duckdb:parquet 441881968 4.21357e+08 1.04871 ns
tpch_q01/duckdb:vortex-file-compressed 296881638 3.03982e+08 0.976641 ns
tpch_q02/duckdb:vortex-file-compressed 710894105 7.23294e+08 0.982856 ns
tpch_q03/duckdb:vortex-file-compressed 609146352 6.32046e+08 0.963768 ns
tpch_q04/duckdb:vortex-file-compressed 382401449 3.7776e+08 1.01229 ns
tpch_q05/duckdb:vortex-file-compressed 706586978 7.18719e+08 0.983119 ns
tpch_q06/duckdb:vortex-file-compressed 404946769 4.06319e+08 0.996624 ns
tpch_q07/duckdb:vortex-file-compressed 705305805 6.84867e+08 1.02984 ns
tpch_q08/duckdb:vortex-file-compressed 978443541 9.75834e+08 1.00267 ns
tpch_q09/duckdb:vortex-file-compressed 873935604 7.93966e+08 1.10072 ns
tpch_q10/duckdb:vortex-file-compressed 759709069 7.6133e+08 0.997871 ns
tpch_q11/duckdb:vortex-file-compressed 439436113 3.93338e+08 1.1172 ns
tpch_q12/duckdb:vortex-file-compressed 526585496 5.08075e+08 1.03643 ns
tpch_q13/duckdb:vortex-file-compressed 437242687 4.26453e+08 1.0253 ns
tpch_q14/duckdb:vortex-file-compressed 380294216 4.63372e+08 0.82071 ns
tpch_q15/duckdb:vortex-file-compressed 282701461 3.49324e+08 0.809282 ns
tpch_q16/duckdb:vortex-file-compressed 285846553 3.3345e+08 0.857239 ns
tpch_q17/duckdb:vortex-file-compressed 563237780 6.42455e+08 0.876697 ns
tpch_q18/duckdb:vortex-file-compressed 659292527 6.91636e+08 0.953236 ns
tpch_q19/duckdb:vortex-file-compressed 424486272 4.83524e+08 0.877901 ns
tpch_q20/duckdb:vortex-file-compressed 635230130 8.99383e+08 0.706295 ns
tpch_q21/duckdb:vortex-file-compressed 959283500 9.24508e+08 1.03761 ns
tpch_q22/duckdb:vortex-file-compressed 235855713 2.35355e+08 1.00213 ns
tpch_q01/duckdb:vortex-compact 307580448 3.02766e+08 1.0159 ns
tpch_q02/duckdb:vortex-compact 716483928 7.00804e+08 1.02237 ns
tpch_q03/duckdb:vortex-compact 548314320 6.51251e+08 0.84194 ns
tpch_q04/duckdb:vortex-compact 355223744 3.26937e+08 1.08652 ns
tpch_q05/duckdb:vortex-compact 658741903 6.12174e+08 1.07607 ns
tpch_q06/duckdb:vortex-compact 406980749 4.24625e+08 0.958448 ns
tpch_q07/duckdb:vortex-compact 723293880 6.43283e+08 1.12438 ns
tpch_q08/duckdb:vortex-compact 866382840 9.07407e+08 0.95479 ns
tpch_q09/duckdb:vortex-compact 779488052 8.29099e+08 0.940162 ns
tpch_q10/duckdb:vortex-compact 644473315 6.77084e+08 0.951836 ns
tpch_q11/duckdb:vortex-compact 364591149 3.58422e+08 1.01721 ns
tpch_q12/duckdb:vortex-compact 472475612 4.81989e+08 0.980263 ns
tpch_q13/duckdb:vortex-compact 388769013 3.97096e+08 0.97903 ns
tpch_q14/duckdb:vortex-compact 379732998 3.99816e+08 0.949769 ns
tpch_q15/duckdb:vortex-compact 249704558 2.82963e+08 0.882464 ns
tpch_q16/duckdb:vortex-compact 282107492 3.14081e+08 0.898201 ns
tpch_q17/duckdb:vortex-compact 499019766 5.36362e+08 0.930378 ns
tpch_q18/duckdb:vortex-compact 529768034 5.59025e+08 0.947664 ns
tpch_q19/duckdb:vortex-compact 440144848 4.56538e+08 0.964092 ns
tpch_q20/duckdb:vortex-compact 657583551 6.39678e+08 1.02799 ns
tpch_q21/duckdb:vortex-compact 827804096 8.4921e+08 0.974793 ns
tpch_q22/duckdb:vortex-compact 229807182 2.34437e+08 0.980251 ns

@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: TPC-H SF=10 on NVME

Summary

  • Overall: 1.009x ➖
  • Vortex: 1.003x ➖
  • duckdb:vortex: 0.998x ➖
  • datafusion:vortex: 1.009x ➖
  • Best: tpch_q06/datafusion:vortex-file-compressed (0.957x)
  • Worst: tpch_q12/datafusion:vortex-file-compressed (1.042x)
  • Significant (>10%): 0↑ 0↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
tpch_q01/datafusion:arrow 484053938 4.84666e+08 0.998738 ns
tpch_q02/datafusion:arrow 92974157 9.32104e+07 0.997466 ns
tpch_q03/datafusion:arrow 190117368 1.85969e+08 1.02231 ns
tpch_q04/datafusion:arrow 98649331 9.08764e+07 1.08553 ns
tpch_q05/datafusion:arrow 357639687 3.41371e+08 1.04766 ns
tpch_q06/datafusion:arrow 66068589 5.88141e+07 1.12335 ns
tpch_q07/datafusion:arrow 669112914 6.52751e+08 1.02507 ns
tpch_q08/datafusion:arrow 288120158 2.84391e+08 1.01311 ns
tpch_q09/datafusion:arrow 580761988 5.67531e+08 1.02331 ns
tpch_q10/datafusion:arrow 234874233 2.38987e+08 0.982792 ns
tpch_q11/datafusion:arrow 394328689 3.84865e+08 1.02459 ns
tpch_q12/datafusion:arrow 179767857 1.78934e+08 1.00466 ns
tpch_q13/datafusion:arrow 191258874 1.95783e+08 0.976891 ns
tpch_q14/datafusion:arrow 55037670 5.33293e+07 1.03203 ns
tpch_q15/datafusion:arrow 99476797 9.9471e+07 1.00006 ns
tpch_q16/datafusion:arrow 75329002 7.61076e+07 0.98977 ns
tpch_q17/datafusion:arrow 593197013 5.86471e+08 1.01147 ns
tpch_q18/datafusion:arrow 1424989172 1.3482e+09 1.05695 ns
tpch_q19/datafusion:arrow 139048757 1.11394e+08 1.24826 ns
tpch_q20/datafusion:arrow 167110863 1.68171e+08 0.993698 ns
tpch_q21/datafusion:arrow 912540276 8.87372e+08 1.02836 ns
tpch_q22/datafusion:arrow 52744935 5.3104e+07 0.993238 ns
tpch_q01/datafusion:parquet 700712424 6.89264e+08 1.01661 ns
tpch_q02/datafusion:parquet 209480773 2.09681e+08 0.999045 ns
tpch_q03/datafusion:parquet 296313678 2.93313e+08 1.01023 ns
tpch_q04/datafusion:parquet 215118931 2.08705e+08 1.03073 ns
tpch_q05/datafusion:parquet 463798717 4.62778e+08 1.00221 ns
tpch_q06/datafusion:parquet 115280412 1.18574e+08 0.972227 ns
tpch_q07/datafusion:parquet 679951592 6.7553e+08 1.00655 ns
tpch_q08/datafusion:parquet 521394780 5.226e+08 0.997693 ns
tpch_q09/datafusion:parquet 842070580 8.08475e+08 1.04155 ns
tpch_q10/datafusion:parquet 521312732 5.04823e+08 1.03266 ns
tpch_q11/datafusion:parquet 135814092 1.33718e+08 1.01567 ns
tpch_q12/datafusion:parquet 211878453 2.03923e+08 1.03901 ns
tpch_q13/datafusion:parquet 424509471 4.26377e+08 0.99562 ns
tpch_q14/datafusion:parquet 158084303 1.53179e+08 1.03202 ns
tpch_q15/datafusion:parquet 245205118 2.45054e+08 1.00062 ns
tpch_q16/datafusion:parquet 146821897 1.45326e+08 1.01029 ns
tpch_q17/datafusion:parquet 708444709 7.10852e+08 0.996613 ns
tpch_q18/datafusion:parquet 1137248668 1.12499e+09 1.0109 ns
tpch_q19/datafusion:parquet 301735204 2.82361e+08 1.06862 ns
tpch_q20/datafusion:parquet 306367480 3.05112e+08 1.00411 ns
tpch_q21/datafusion:parquet 870780468 8.65505e+08 1.0061 ns
tpch_q22/datafusion:parquet 331837657 3.28879e+08 1.009 ns
tpch_q01/datafusion:vortex-file-compressed 489603674 4.87458e+08 1.0044 ns
tpch_q02/datafusion:vortex-file-compressed 159737689 1.63499e+08 0.976993 ns
tpch_q03/datafusion:vortex-file-compressed 220123942 2.20431e+08 0.998608 ns
tpch_q04/datafusion:vortex-file-compressed 102290670 1.0081e+08 1.01469 ns
tpch_q05/datafusion:vortex-file-compressed 581086203 5.69454e+08 1.02043 ns
tpch_q06/datafusion:vortex-file-compressed 35820691 3.74137e+07 0.957423 ns
tpch_q07/datafusion:vortex-file-compressed 585138602 5.76774e+08 1.0145 ns
tpch_q08/datafusion:vortex-file-compressed 645454535 6.36032e+08 1.01481 ns
tpch_q09/datafusion:vortex-file-compressed 988751822 9.74346e+08 1.01479 ns
tpch_q10/datafusion:vortex-file-compressed 261704508 2.5364e+08 1.03179 ns
tpch_q11/datafusion:vortex-file-compressed 134884433 1.29486e+08 1.04169 ns
tpch_q12/datafusion:vortex-file-compressed 101734827 9.76204e+07 1.04215 ns
tpch_q13/datafusion:vortex-file-compressed 219674240 2.20476e+08 0.996363 ns
tpch_q14/datafusion:vortex-file-compressed 54763655 5.3992e+07 1.01429 ns
tpch_q15/datafusion:vortex-file-compressed 92701412 9.45297e+07 0.980659 ns
tpch_q16/datafusion:vortex-file-compressed 87268544 8.47424e+07 1.02981 ns
tpch_q17/datafusion:vortex-file-compressed 910367969 9.03796e+08 1.00727 ns
tpch_q18/datafusion:vortex-file-compressed 1106761716 1.09878e+09 1.00727 ns
tpch_q19/datafusion:vortex-file-compressed 66132274 6.56276e+07 1.00769 ns
tpch_q20/datafusion:vortex-file-compressed 177103936 1.76184e+08 1.00522 ns
tpch_q21/datafusion:vortex-file-compressed 752812346 7.56789e+08 0.994746 ns
tpch_q22/datafusion:vortex-file-compressed 68435256 6.85724e+07 0.998001 ns
tpch_q01/datafusion:vortex-compact 529229141 5.36937e+08 0.985645 ns
tpch_q02/datafusion:vortex-compact 165460882 1.65331e+08 1.00079 ns
tpch_q03/datafusion:vortex-compact 232856550 2.32027e+08 1.00358 ns
tpch_q04/datafusion:vortex-compact 119678077 1.15952e+08 1.03214 ns
tpch_q05/datafusion:vortex-compact 580250203 5.81603e+08 0.997675 ns
tpch_q06/datafusion:vortex-compact 73927580 7.31008e+07 1.01131 ns
tpch_q07/datafusion:vortex-compact 609307864 6.05289e+08 1.00664 ns
tpch_q08/datafusion:vortex-compact 641123782 6.44616e+08 0.994582 ns
tpch_q09/datafusion:vortex-compact 988303203 9.80113e+08 1.00836 ns
tpch_q10/datafusion:vortex-compact 292139753 2.93159e+08 0.996523 ns
tpch_q11/datafusion:vortex-compact 137219184 1.32894e+08 1.03255 ns
tpch_q12/datafusion:vortex-compact 160017085 1.57053e+08 1.01887 ns
tpch_q13/datafusion:vortex-compact 266191405 2.63645e+08 1.00966 ns
tpch_q14/datafusion:vortex-compact 84266774 8.20268e+07 1.02731 ns
tpch_q15/datafusion:vortex-compact 165292426 1.59945e+08 1.03343 ns
tpch_q16/datafusion:vortex-compact 93579984 9.18689e+07 1.01863 ns
tpch_q17/datafusion:vortex-compact 925428710 9.2688e+08 0.998434 ns
tpch_q18/datafusion:vortex-compact 1111827442 1.10343e+09 1.00761 ns
tpch_q19/datafusion:vortex-compact 121333476 1.19095e+08 1.0188 ns
tpch_q20/datafusion:vortex-compact 207266535 2.04327e+08 1.01439 ns
tpch_q21/datafusion:vortex-compact 761221111 7.53056e+08 1.01084 ns
tpch_q22/datafusion:vortex-compact 77057823 7.6699e+07 1.00468 ns
tpch_q01/duckdb:parquet 262262225 2.64839e+08 0.990271 ns
tpch_q02/duckdb:parquet 129628241 1.15551e+08 1.12183 ns
tpch_q03/duckdb:parquet 225655482 2.24532e+08 1.005 ns
tpch_q04/duckdb:parquet 152251817 1.52895e+08 0.995794 ns
tpch_q05/duckdb:parquet 234848548 2.34728e+08 1.00051 ns
tpch_q06/duckdb:parquet 71361847 7.10421e+07 1.0045 ns
tpch_q07/duckdb:parquet 218282409 2.17827e+08 1.00209 ns
tpch_q08/duckdb:parquet 331062523 3.29109e+08 1.00593 ns
tpch_q09/duckdb:parquet 488756246 4.90443e+08 0.996562 ns
tpch_q10/duckdb:parquet 640108616 6.34762e+08 1.00842 ns
tpch_q11/duckdb:parquet 58766758 5.59088e+07 1.05112 ns
tpch_q12/duckdb:parquet 142733168 1.40829e+08 1.01352 ns
tpch_q13/duckdb:parquet 410818406 4.11852e+08 0.997489 ns
tpch_q14/duckdb:parquet 179849462 1.80992e+08 0.993689 ns
tpch_q15/duckdb:parquet 108498227 1.0823e+08 1.00248 ns
tpch_q16/duckdb:parquet 160750965 1.60855e+08 0.99935 ns
tpch_q17/duckdb:parquet 207848924 2.07325e+08 1.00253 ns
tpch_q18/duckdb:parquet 366294165 3.64275e+08 1.00554 ns
tpch_q19/duckdb:parquet 289834328 2.92265e+08 0.991684 ns
tpch_q20/duckdb:parquet 256209663 2.50224e+08 1.02392 ns
tpch_q21/duckdb:parquet 590204764 5.84874e+08 1.00911 ns
tpch_q22/duckdb:parquet 301199067 3.03611e+08 0.992055 ns
tpch_q01/duckdb:vortex-file-compressed 201000975 1.96628e+08 1.02224 ns
tpch_q02/duckdb:vortex-file-compressed 58246078 5.73945e+07 1.01484 ns
tpch_q03/duckdb:vortex-file-compressed 131613678 1.33838e+08 0.983384 ns
tpch_q04/duckdb:vortex-file-compressed 164268619 1.67017e+08 0.983545 ns
tpch_q05/duckdb:vortex-file-compressed 132511972 1.32175e+08 1.00255 ns
tpch_q06/duckdb:vortex-file-compressed 52866473 5.342e+07 0.989638 ns
tpch_q07/duckdb:vortex-file-compressed 145398740 1.44504e+08 1.00619 ns
tpch_q08/duckdb:vortex-file-compressed 233640106 2.36512e+08 0.987859 ns
tpch_q09/duckdb:vortex-file-compressed 363857447 3.63117e+08 1.00204 ns
tpch_q10/duckdb:vortex-file-compressed 145150390 1.44821e+08 1.00228 ns
tpch_q11/duckdb:vortex-file-compressed 39231681 3.93805e+07 0.996222 ns
tpch_q12/duckdb:vortex-file-compressed 106158673 1.08948e+08 0.974401 ns
tpch_q13/duckdb:vortex-file-compressed 237513377 2.36989e+08 1.00221 ns
tpch_q14/duckdb:vortex-file-compressed 64853737 6.56039e+07 0.988565 ns
tpch_q15/duckdb:vortex-file-compressed 94189793 9.54596e+07 0.986697 ns
tpch_q16/duckdb:vortex-file-compressed 79800226 8.24691e+07 0.967638 ns
tpch_q17/duckdb:vortex-file-compressed 126048595 1.2362e+08 1.01964 ns
tpch_q18/duckdb:vortex-file-compressed 284706501 2.82313e+08 1.00848 ns
tpch_q19/duckdb:vortex-file-compressed 96743271 9.47484e+07 1.02105 ns
tpch_q20/duckdb:vortex-file-compressed 168891542 1.67715e+08 1.00701 ns
tpch_q21/duckdb:vortex-file-compressed 589739531 5.85373e+08 1.00746 ns
tpch_q22/duckdb:vortex-file-compressed 73747870 7.44207e+07 0.99096 ns
tpch_q01/duckdb:vortex-compact 248012418 2.4795e+08 1.00025 ns
tpch_q02/duckdb:vortex-compact 72690651 7.18127e+07 1.01223 ns
tpch_q03/duckdb:vortex-compact 177788965 1.78709e+08 0.99485 ns
tpch_q04/duckdb:vortex-compact 208261315 2.10115e+08 0.991177 ns
tpch_q05/duckdb:vortex-compact 171606931 1.748e+08 0.981733 ns
tpch_q06/duckdb:vortex-compact 107931265 1.08754e+08 0.992438 ns
tpch_q07/duckdb:vortex-compact 218494435 2.19149e+08 0.997013 ns
tpch_q08/duckdb:vortex-compact 257607855 2.59165e+08 0.993992 ns
tpch_q09/duckdb:vortex-compact 411286208 4.07748e+08 1.00868 ns
tpch_q10/duckdb:vortex-compact 206133621 2.07178e+08 0.994959 ns
tpch_q11/duckdb:vortex-compact 44307873 4.46109e+07 0.993207 ns
tpch_q12/duckdb:vortex-compact 290561795 2.93564e+08 0.989773 ns
tpch_q13/duckdb:vortex-compact 298370949 2.96869e+08 1.00506 ns
tpch_q14/duckdb:vortex-compact 104392479 1.05259e+08 0.991767 ns
tpch_q15/duckdb:vortex-compact 132207563 1.30207e+08 1.01536 ns
tpch_q16/duckdb:vortex-compact 90857206 9.16168e+07 0.991709 ns
tpch_q17/duckdb:vortex-compact 140007595 1.39852e+08 1.00111 ns
tpch_q18/duckdb:vortex-compact 335092711 3.33301e+08 1.00538 ns
tpch_q19/duckdb:vortex-compact 152943983 1.53902e+08 0.993776 ns
tpch_q20/duckdb:vortex-compact 220484117 2.22119e+08 0.99264 ns
tpch_q21/duckdb:vortex-compact 676967641 6.84159e+08 0.989489 ns
tpch_q22/duckdb:vortex-compact 82171147 8.23662e+07 0.997632 ns
tpch_q01/duckdb:duckdb 117947211 1.17608e+08 1.00289 ns
tpch_q02/duckdb:duckdb 52459194 5.11189e+07 1.02622 ns
tpch_q03/duckdb:duckdb 103768597 1.01707e+08 1.02027 ns
tpch_q04/duckdb:duckdb 131628780 1.2975e+08 1.01448 ns
tpch_q05/duckdb:duckdb 116136188 1.15663e+08 1.00409 ns
tpch_q06/duckdb:duckdb 45429644 4.62004e+07 0.983317 ns
tpch_q07/duckdb:duckdb 111290669 1.10503e+08 1.00713 ns
tpch_q08/duckdb:duckdb 141166076 1.40445e+08 1.00513 ns
tpch_q09/duckdb:duckdb 308668984 3.06118e+08 1.00833 ns
tpch_q10/duckdb:duckdb 214971496 2.14649e+08 1.0015 ns
tpch_q11/duckdb:duckdb 23186312 2.2929e+07 1.01122 ns
tpch_q12/duckdb:duckdb 87887706 8.68753e+07 1.01165 ns
tpch_q13/duckdb:duckdb 234396279 2.36265e+08 0.992091 ns
tpch_q14/duckdb:duckdb 78481426 7.88991e+07 0.994707 ns
tpch_q15/duckdb:duckdb 82075139 8.20993e+07 0.999705 ns
tpch_q16/duckdb:duckdb 74734516 7.34811e+07 1.01706 ns
tpch_q17/duckdb:duckdb 100218453 9.98898e+07 1.00329 ns
tpch_q18/duckdb:duckdb 219082216 2.18489e+08 1.00272 ns
tpch_q19/duckdb:duckdb 129949143 1.29289e+08 1.00511 ns
tpch_q20/duckdb:duckdb 124816623 1.24605e+08 1.0017 ns
tpch_q21/duckdb:duckdb 318264762 3.16852e+08 1.00446 ns
tpch_q22/duckdb:duckdb 73802952 6.87369e+07 1.0737 ns

@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: Statistical and Population Genetics

Summary

  • Overall: 1.003x ➖
  • Vortex: 0.996x ➖
  • duckdb:vortex: 0.996x ➖
  • Best: statpopgen_q01/duckdb:vortex-compact (0.815x)
  • Worst: statpopgen_q00/duckdb:vortex-compact (1.057x)
  • Significant (>10%): 1↑ 0↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
statpopgen_q00/duckdb:parquet 199468195 1.97782e+08 1.00853 ns
statpopgen_q01/duckdb:parquet 337977420 3.34866e+08 1.00929 ns
statpopgen_q02/duckdb:parquet 646145878 6.47674e+08 0.99764 ns
statpopgen_q03/duckdb:parquet 1080013925 1.07521e+09 1.00447 ns
statpopgen_q04/duckdb:parquet 1086003364 1.10122e+09 0.986186 ns
statpopgen_q05/duckdb:parquet 715909780 7.01677e+08 1.02028 ns
statpopgen_q06/duckdb:parquet 1327368003 1.3231e+09 1.00322 ns
statpopgen_q07/duckdb:parquet 841212030 8.14246e+08 1.03312 ns
statpopgen_q08/duckdb:parquet 876828423 8.26578e+08 1.06079 ns
statpopgen_q09/duckdb:parquet 953789326 9.20081e+08 1.03664 ns
statpopgen_q10/duckdb:parquet 2159350281 2.09529e+09 1.03057 ns
statpopgen_q00/duckdb:vortex-file-compressed 12880901 1.27986e+07 1.00643 ns
statpopgen_q01/duckdb:vortex-file-compressed 106679469 1.08693e+08 0.981477 ns
statpopgen_q02/duckdb:vortex-file-compressed 1195344541 1.16116e+09 1.02944 ns
statpopgen_q03/duckdb:vortex-file-compressed 2821493689 2.79555e+09 1.00928 ns
statpopgen_q04/duckdb:vortex-file-compressed 2821861536 2.80037e+09 1.00768 ns
statpopgen_q05/duckdb:vortex-file-compressed 1278690342 1.28337e+09 0.996352 ns
statpopgen_q06/duckdb:vortex-file-compressed 1959888400 1.95663e+09 1.00166 ns
statpopgen_q07/duckdb:vortex-file-compressed 283782595 2.85398e+08 0.994341 ns
statpopgen_q08/duckdb:vortex-file-compressed 295782948 3.01601e+08 0.980709 ns
statpopgen_q09/duckdb:vortex-file-compressed 2543332467 2.52347e+09 1.00787 ns
statpopgen_q10/duckdb:vortex-file-compressed 4242199391 4.06542e+09 1.04348 ns
statpopgen_q00/duckdb:vortex-compact 13637004 1.29006e+07 1.05708 ns
statpopgen_q01/duckdb:vortex-compact 226508261 2.7803e+08 0.81469 ns
statpopgen_q02/duckdb:vortex-compact 538697344 5.44082e+08 0.990103 ns
statpopgen_q03/duckdb:vortex-compact 2225628269 2.24221e+09 0.992607 ns
statpopgen_q04/duckdb:vortex-compact 2242660765 2.2234e+09 1.00866 ns
statpopgen_q05/duckdb:vortex-compact 586884101 5.83418e+08 1.00594 ns
statpopgen_q06/duckdb:vortex-compact 1495015555 1.48373e+09 1.0076 ns
statpopgen_q07/duckdb:vortex-compact 2714974982 2.78279e+09 0.975632 ns
statpopgen_q08/duckdb:vortex-compact 137575432314 1.3598e+11 1.01173 ns
statpopgen_q09/duckdb:vortex-compact 1987767527 1.98887e+09 0.999445 ns
statpopgen_q10/duckdb:vortex-compact 3799618243 3.77762e+09 1.00582 ns

@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: TPC-H SF=10 on S3

Summary

  • Overall: 0.955x ➖
  • Vortex: 0.955x ➖
  • duckdb:vortex: 0.953x ➖
  • datafusion:vortex: 0.957x ➖
  • Best: tpch_q14/datafusion:vortex-file-compressed (0.749x)
  • Worst: tpch_q22/datafusion:vortex-compact (1.127x)
  • Significant (>30%): 0↑ 0↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
tpch_q01/datafusion:parquet 1266976369 1.11927e+09 1.13197 ns
tpch_q02/datafusion:parquet 639004633 7.44463e+08 0.858343 ns
tpch_q03/datafusion:parquet 969766236 8.78325e+08 1.10411 ns
tpch_q04/datafusion:parquet 567463888 5.31896e+08 1.06687 ns
tpch_q05/datafusion:parquet 1128146324 1.03429e+09 1.09075 ns
tpch_q06/datafusion:parquet 535610490 5.36993e+08 0.997426 ns
tpch_q07/datafusion:parquet 1426292577 1.32231e+09 1.07864 ns
tpch_q08/datafusion:parquet 1425090821 1.44016e+09 0.989536 ns
tpch_q09/datafusion:parquet 1732037069 1.78288e+09 0.971483 ns
tpch_q10/datafusion:parquet 1969464983 2.00178e+09 0.983856 ns
tpch_q11/datafusion:parquet 433850451 4.35912e+08 0.99527 ns
tpch_q12/datafusion:parquet 648492551 6.25018e+08 1.03756 ns
tpch_q13/datafusion:parquet 762688352 7.46414e+08 1.0218 ns
tpch_q14/datafusion:parquet 758290274 7.4468e+08 1.01828 ns
tpch_q15/datafusion:parquet 1273758111 1.22547e+09 1.0394 ns
tpch_q16/datafusion:parquet 360010699 3.50283e+08 1.02777 ns
tpch_q17/datafusion:parquet 1370892688 1.36861e+09 1.00167 ns
tpch_q18/datafusion:parquet 1844716585 1.79385e+09 1.02835 ns
tpch_q19/datafusion:parquet 910704259 9.4437e+08 0.964351 ns
tpch_q20/datafusion:parquet 1011127044 1.0833e+09 0.933375 ns
tpch_q21/datafusion:parquet 1823117062 1.8637e+09 0.978226 ns
tpch_q22/datafusion:parquet 774846048 7.67925e+08 1.00901 ns
tpch_q01/datafusion:vortex-file-compressed 777120915 7.14859e+08 1.0871 ns
tpch_q02/datafusion:vortex-file-compressed 651719797 7.83423e+08 0.831888 ns
tpch_q03/datafusion:vortex-file-compressed 814364560 9.22666e+08 0.882621 ns
tpch_q04/datafusion:vortex-file-compressed 495522216 5.01725e+08 0.987637 ns
tpch_q05/datafusion:vortex-file-compressed 1129164469 1.02764e+09 1.0988 ns
tpch_q06/datafusion:vortex-file-compressed 492135293 5.07672e+08 0.969397 ns
tpch_q07/datafusion:vortex-file-compressed 1010675571 9.95461e+08 1.01528 ns
tpch_q08/datafusion:vortex-file-compressed 1391161480 1.43433e+09 0.969903 ns
tpch_q09/datafusion:vortex-file-compressed 1748681769 1.77718e+09 0.983964 ns
tpch_q10/datafusion:vortex-file-compressed 892640938 8.67501e+08 1.02898 ns
tpch_q11/datafusion:vortex-file-compressed 434735802 4.90594e+08 0.886141 ns
tpch_q12/datafusion:vortex-file-compressed 764247595 7.86261e+08 0.972002 ns
tpch_q13/datafusion:vortex-file-compressed 414901897 4.36485e+08 0.950553 ns
tpch_q14/datafusion:vortex-file-compressed 454580002 6.06517e+08 0.749493 ns
tpch_q15/datafusion:vortex-file-compressed 891600018 9.45938e+08 0.942557 ns
tpch_q16/datafusion:vortex-file-compressed 338539673 3.11379e+08 1.08723 ns
tpch_q17/datafusion:vortex-file-compressed 1476785404 1.42123e+09 1.03909 ns
tpch_q18/datafusion:vortex-file-compressed 1665138119 1.50961e+09 1.10303 ns
tpch_q19/datafusion:vortex-file-compressed 618713886 7.18509e+08 0.861108 ns
tpch_q20/datafusion:vortex-file-compressed 757570703 9.04983e+08 0.837111 ns
tpch_q21/datafusion:vortex-file-compressed 1647714419 1.77124e+09 0.930259 ns
tpch_q22/datafusion:vortex-file-compressed 322846730 3.15955e+08 1.02181 ns
tpch_q01/datafusion:vortex-compact 805466277 7.52149e+08 1.07089 ns
tpch_q02/datafusion:vortex-compact 559771484 5.73692e+08 0.975736 ns
tpch_q03/datafusion:vortex-compact 705284002 8.29251e+08 0.850508 ns
tpch_q04/datafusion:vortex-compact 433758256 5.24753e+08 0.826595 ns
tpch_q05/datafusion:vortex-compact 924284791 9.51293e+08 0.971609 ns
tpch_q06/datafusion:vortex-compact 564137763 5.59837e+08 1.00768 ns
tpch_q07/datafusion:vortex-compact 967808275 9.30301e+08 1.04032 ns
tpch_q08/datafusion:vortex-compact 1238128272 1.32887e+09 0.931714 ns
tpch_q09/datafusion:vortex-compact 1538463334 1.63639e+09 0.94016 ns
tpch_q10/datafusion:vortex-compact 789627599 7.84059e+08 1.0071 ns
tpch_q11/datafusion:vortex-compact 389034423 4.41136e+08 0.881892 ns
tpch_q12/datafusion:vortex-compact 656078627 7.47869e+08 0.877264 ns
tpch_q13/datafusion:vortex-compact 412762008 4.49529e+08 0.918209 ns
tpch_q14/datafusion:vortex-compact 479882043 5.38389e+08 0.891329 ns
tpch_q15/datafusion:vortex-compact 823039785 9.26456e+08 0.888375 ns
tpch_q16/datafusion:vortex-compact 297893738 2.80226e+08 1.06305 ns
tpch_q17/datafusion:vortex-compact 1495071228 1.4004e+09 1.0676 ns
tpch_q18/datafusion:vortex-compact 1423697060 1.39022e+09 1.02408 ns
tpch_q19/datafusion:vortex-compact 661245445 7.64409e+08 0.865041 ns
tpch_q20/datafusion:vortex-compact 695113804 7.89539e+08 0.880404 ns
tpch_q21/datafusion:vortex-compact 1363763856 1.4412e+09 0.94627 ns
tpch_q22/datafusion:vortex-compact 357474846 3.1729e+08 1.12665 ns
tpch_q01/duckdb:parquet 942079722 1.07858e+09 0.873442 ns
tpch_q02/duckdb:parquet 1299474741 1.33961e+09 0.970039 ns
tpch_q03/duckdb:parquet 1315682697 1.51364e+09 0.869219 ns
tpch_q04/duckdb:parquet 905467368 1.0621e+09 0.852522 ns
tpch_q05/duckdb:parquet 1706591281 2.03471e+09 0.838739 ns
tpch_q06/duckdb:parquet 611916637 6.52253e+08 0.938158 ns
tpch_q07/duckdb:parquet 1498763462 1.67662e+09 0.893922 ns
tpch_q08/duckdb:parquet 2146248337 2.34732e+09 0.91434 ns
tpch_q09/duckdb:parquet 1933417698 2.12484e+09 0.909912 ns
tpch_q10/duckdb:parquet 2752796979 3.00192e+09 0.917012 ns
tpch_q11/duckdb:parquet 734044209 7.99403e+08 0.91824 ns
tpch_q12/duckdb:parquet 844859301 1.00267e+09 0.842613 ns
tpch_q13/duckdb:parquet 1048778571 1.11238e+09 0.942826 ns
tpch_q14/duckdb:parquet 1062007356 1.10906e+09 0.957575 ns
tpch_q15/duckdb:parquet 937684503 9.56624e+08 0.980201 ns
tpch_q16/duckdb:parquet 646243146 6.12445e+08 1.05519 ns
tpch_q17/duckdb:parquet 1241669813 1.20575e+09 1.02979 ns
tpch_q18/duckdb:parquet 1142387462 1.32532e+09 0.861972 ns
tpch_q19/duckdb:parquet 1314910898 1.4325e+09 0.917914 ns
tpch_q20/duckdb:parquet 1409565444 2.1296e+09 0.661893 ns 🚀
tpch_q21/duckdb:parquet 1643987704 1.80428e+09 0.91116 ns
tpch_q22/duckdb:parquet 893085117 1.0679e+09 0.836303 ns
tpch_q01/duckdb:vortex-file-compressed 756289519 8.41667e+08 0.898561 ns
tpch_q02/duckdb:vortex-file-compressed 1125688867 1.40307e+09 0.802304 ns
tpch_q03/duckdb:vortex-file-compressed 1213199388 1.26179e+09 0.961492 ns
tpch_q04/duckdb:vortex-file-compressed 771154712 8.16638e+08 0.944304 ns
tpch_q05/duckdb:vortex-file-compressed 1217615401 1.26901e+09 0.959503 ns
tpch_q06/duckdb:vortex-file-compressed 1001529153 9.43162e+08 1.06188 ns
tpch_q07/duckdb:vortex-file-compressed 1261620813 1.32831e+09 0.949793 ns
tpch_q08/duckdb:vortex-file-compressed 1679976843 1.79991e+09 0.933369 ns
tpch_q09/duckdb:vortex-file-compressed 1767113790 1.93772e+09 0.911956 ns
tpch_q10/duckdb:vortex-file-compressed 1301094775 1.38828e+09 0.9372 ns
tpch_q11/duckdb:vortex-file-compressed 849723888 8.89364e+08 0.955428 ns
tpch_q12/duckdb:vortex-file-compressed 789628507 9.4885e+08 0.832195 ns
tpch_q13/duckdb:vortex-file-compressed 1058211986 1.14582e+09 0.923544 ns
tpch_q14/duckdb:vortex-file-compressed 802854563 8.41174e+08 0.954446 ns
tpch_q15/duckdb:vortex-file-compressed 624939224 6.87452e+08 0.909066 ns
tpch_q16/duckdb:vortex-file-compressed 558484934 5.97894e+08 0.934088 ns
tpch_q17/duckdb:vortex-file-compressed 1153248007 1.27105e+09 0.90732 ns
tpch_q18/duckdb:vortex-file-compressed 1239958281 1.24537e+09 0.995658 ns
tpch_q19/duckdb:vortex-file-compressed 865070316 8.95603e+08 0.965908 ns
tpch_q20/duckdb:vortex-file-compressed 1264473114 1.43645e+09 0.880279 ns
tpch_q21/duckdb:vortex-file-compressed 2060272898 2.12636e+09 0.968919 ns
tpch_q22/duckdb:vortex-file-compressed 504256429 5.12056e+08 0.984768 ns
tpch_q01/duckdb:vortex-compact 800207862 7.59686e+08 1.05334 ns
tpch_q02/duckdb:vortex-compact 940811632 9.2163e+08 1.02081 ns
tpch_q03/duckdb:vortex-compact 1039577998 1.1095e+09 0.936978 ns
tpch_q04/duckdb:vortex-compact 595866566 6.71958e+08 0.886762 ns
tpch_q05/duckdb:vortex-compact 1131453986 1.1251e+09 1.00565 ns
tpch_q06/duckdb:vortex-compact 801634885 7.94259e+08 1.00929 ns
tpch_q07/duckdb:vortex-compact 1159102032 1.17691e+09 0.984867 ns
tpch_q08/duckdb:vortex-compact 1590205329 1.76802e+09 0.899427 ns
tpch_q09/duckdb:vortex-compact 1528420922 1.6047e+09 0.952463 ns
tpch_q10/duckdb:vortex-compact 1202464503 1.341e+09 0.896693 ns
tpch_q11/duckdb:vortex-compact 693989879 7.34594e+08 0.944725 ns
tpch_q12/duckdb:vortex-compact 797648882 7.86306e+08 1.01443 ns
tpch_q13/duckdb:vortex-compact 775258632 7.50194e+08 1.03341 ns
tpch_q14/duckdb:vortex-compact 818978155 8.50962e+08 0.962415 ns
tpch_q15/duckdb:vortex-compact 649983770 6.49984e+08 1 ns
tpch_q16/duckdb:vortex-compact 486748733 5.01805e+08 0.969996 ns
tpch_q17/duckdb:vortex-compact 1043450084 1.0827e+09 0.963751 ns
tpch_q18/duckdb:vortex-compact 944432370 1.06052e+09 0.890538 ns
tpch_q19/duckdb:vortex-compact 838240248 8.28725e+08 1.01148 ns
tpch_q20/duckdb:vortex-compact 1156512516 1.18845e+09 0.97313 ns
tpch_q21/duckdb:vortex-compact 1800644654 1.75863e+09 1.02389 ns
tpch_q22/duckdb:vortex-compact 547156958 5.53854e+08 0.987909 ns

@github-actions
Copy link
Contributor

github-actions bot commented Oct 16, 2025

Benchmarks: Clickbench on NVME

Summary

  • Overall: 0.990x ➖
  • Vortex: 0.984x ➖
  • duckdb:vortex: 0.975x ➖
  • datafusion:vortex: 0.994x ➖
  • Best: clickbench_q26/duckdb:vortex-compact (0.749x)
  • Worst: clickbench_q24/duckdb:vortex-file-compressed (1.273x)
  • Significant (>10%): 19↑ 10↓
Detailed Results Table
name PR 570d987 base 2c31a75 ratio (PR/base) unit remark
clickbench_q00/datafusion:parquet 1772179 1.73117e+06 1.02369 ns
clickbench_q01/datafusion:parquet 28595380 2.58253e+07 1.10726 ns
clickbench_q02/datafusion:parquet 62669388 5.97688e+07 1.04853 ns
clickbench_q03/datafusion:parquet 55539838 5.39703e+07 1.02908 ns
clickbench_q04/datafusion:parquet 373129560 3.69383e+08 1.01014 ns
clickbench_q05/datafusion:parquet 377922109 3.74517e+08 1.00909 ns
clickbench_q06/datafusion:parquet 1895214 2.01357e+06 0.941221 ns
clickbench_q07/datafusion:parquet 33666079 3.11009e+07 1.08248 ns
clickbench_q08/datafusion:parquet 449638692 4.69399e+08 0.957903 ns
clickbench_q09/datafusion:parquet 681570777 7.10079e+08 0.959852 ns
clickbench_q10/datafusion:parquet 131105212 1.33884e+08 0.979242 ns
clickbench_q11/datafusion:parquet 156885452 1.60807e+08 0.975612 ns
clickbench_q12/datafusion:parquet 382666022 3.87206e+08 0.988275 ns
clickbench_q13/datafusion:parquet 541258956 5.51321e+08 0.981749 ns
clickbench_q14/datafusion:parquet 375821647 3.79399e+08 0.99057 ns
clickbench_q15/datafusion:parquet 417280956 4.28491e+08 0.973839 ns
clickbench_q16/datafusion:parquet 782861143 7.82266e+08 1.00076 ns
clickbench_q17/datafusion:parquet 770773867 7.66672e+08 1.00535 ns
clickbench_q18/datafusion:parquet 1423263568 1.48614e+09 0.957695 ns
clickbench_q19/datafusion:parquet 40291132 4.18324e+07 0.963156 ns
clickbench_q20/datafusion:parquet 641327686 6.35186e+08 1.00967 ns
clickbench_q21/datafusion:parquet 719706545 7.29259e+08 0.986901 ns
clickbench_q22/datafusion:parquet 1080767736 1.07053e+09 1.00956 ns
clickbench_q23/datafusion:parquet 4294335145 4.28054e+09 1.00322 ns
clickbench_q24/datafusion:parquet 107871451 1.12518e+08 0.958702 ns
clickbench_q25/datafusion:parquet 156700953 1.53929e+08 1.01801 ns
clickbench_q26/datafusion:parquet 110514414 1.08024e+08 1.02306 ns
clickbench_q27/datafusion:parquet 1065256454 1.06581e+09 0.999485 ns
clickbench_q28/datafusion:parquet 5866712206 5.81231e+09 1.00936 ns
clickbench_q29/datafusion:parquet 248665897 2.3731e+08 1.04785 ns
clickbench_q30/datafusion:parquet 372179707 3.74243e+08 0.994485 ns
clickbench_q31/datafusion:parquet 417813310 4.24281e+08 0.984756 ns
clickbench_q32/datafusion:parquet 1402929516 1.35726e+09 1.03365 ns
clickbench_q33/datafusion:parquet 1630978734 1.63413e+09 0.998075 ns
clickbench_q34/datafusion:parquet 1610062191 1.61847e+09 0.994805 ns
clickbench_q35/datafusion:parquet 604415264 6.06671e+08 0.996282 ns
clickbench_q36/datafusion:parquet 168706374 1.69972e+08 0.992557 ns
clickbench_q37/datafusion:parquet 63594013 6.30899e+07 1.00799 ns
clickbench_q38/datafusion:parquet 96005150 1.00319e+08 0.956995 ns
clickbench_q39/datafusion:parquet 327751028 3.14781e+08 1.0412 ns
clickbench_q40/datafusion:parquet 37924964 3.66499e+07 1.03479 ns
clickbench_q41/datafusion:parquet 34024150 3.56709e+07 0.953835 ns
clickbench_q42/datafusion:parquet 35211574 3.59549e+07 0.979325 ns
clickbench_q00/datafusion:vortex-file-compressed 1855197 1.99582e+06 0.92954 ns
clickbench_q01/datafusion:vortex-file-compressed 11888475 1.2134e+07 0.979763 ns
clickbench_q02/datafusion:vortex-file-compressed 28437742 2.9673e+07 0.958371 ns
clickbench_q03/datafusion:vortex-file-compressed 31085824 3.20792e+07 0.969033 ns
clickbench_q04/datafusion:vortex-file-compressed 317190743 3.17028e+08 1.00051 ns
clickbench_q05/datafusion:vortex-file-compressed 329340096 3.38865e+08 0.971891 ns
clickbench_q06/datafusion:vortex-file-compressed 2155544 2.0868e+06 1.03294 ns
clickbench_q07/datafusion:vortex-file-compressed 16373051 1.57637e+07 1.03866 ns
clickbench_q08/datafusion:vortex-file-compressed 385626489 3.85033e+08 1.00154 ns
clickbench_q09/datafusion:vortex-file-compressed 565143457 5.69847e+08 0.991746 ns
clickbench_q10/datafusion:vortex-file-compressed 73145120 7.18923e+07 1.01743 ns
clickbench_q11/datafusion:vortex-file-compressed 83383845 7.97552e+07 1.0455 ns
clickbench_q12/datafusion:vortex-file-compressed 272778809 2.71062e+08 1.00633 ns
clickbench_q13/datafusion:vortex-file-compressed 432585168 4.43876e+08 0.974564 ns
clickbench_q14/datafusion:vortex-file-compressed 255447256 2.54678e+08 1.00302 ns
clickbench_q15/datafusion:vortex-file-compressed 366022680 3.76354e+08 0.97255 ns
clickbench_q16/datafusion:vortex-file-compressed 750908276 7.75663e+08 0.968086 ns
clickbench_q17/datafusion:vortex-file-compressed 748192620 7.45812e+08 1.00319 ns
clickbench_q18/datafusion:vortex-file-compressed 1416761045 1.44865e+09 0.977987 ns
clickbench_q19/datafusion:vortex-file-compressed 19722869 2.09997e+07 0.939198 ns
clickbench_q20/datafusion:vortex-file-compressed 324560301 2.78691e+08 1.16459 ns
clickbench_q21/datafusion:vortex-file-compressed 377658596 3.44796e+08 1.09531 ns
clickbench_q22/datafusion:vortex-file-compressed 556221255 6.81828e+08 0.81578 ns
clickbench_q23/datafusion:vortex-file-compressed 1518880734 1.97343e+09 0.769664 ns
clickbench_q24/datafusion:vortex-file-compressed 64357571 7.31328e+07 0.88001 ns
clickbench_q25/datafusion:vortex-file-compressed 61474221 6.03204e+07 1.01913 ns
clickbench_q26/datafusion:vortex-file-compressed 63985990 7.25369e+07 0.882116 ns
clickbench_q27/datafusion:vortex-file-compressed 801173770 7.7959e+08 1.02769 ns
clickbench_q28/datafusion:vortex-file-compressed 6947766355 6.86637e+09 1.01185 ns
clickbench_q29/datafusion:vortex-file-compressed 253974955 2.46831e+08 1.02894 ns
clickbench_q30/datafusion:vortex-file-compressed 272981194 2.50256e+08 1.09081 ns
clickbench_q31/datafusion:vortex-file-compressed 314790472 2.84677e+08 1.10578 ns
clickbench_q32/datafusion:vortex-file-compressed 1342949362 1.34966e+09 0.995025 ns
clickbench_q33/datafusion:vortex-file-compressed 1434814285 1.43468e+09 1.00009 ns
clickbench_q34/datafusion:vortex-file-compressed 1430631253 1.46277e+09 0.978027 ns
clickbench_q35/datafusion:vortex-file-compressed 560087386 5.45109e+08 1.02748 ns
clickbench_q36/datafusion:vortex-file-compressed 84428392 8.14196e+07 1.03695 ns
clickbench_q37/datafusion:vortex-file-compressed 38811725 3.76825e+07 1.02997 ns
clickbench_q38/datafusion:vortex-file-compressed 21729731 2.12952e+07 1.02041 ns
clickbench_q39/datafusion:vortex-file-compressed 164078800 1.71225e+08 0.958267 ns
clickbench_q40/datafusion:vortex-file-compressed 19875801 1.98256e+07 1.00253 ns
clickbench_q41/datafusion:vortex-file-compressed 17958556 1.81551e+07 0.989176 ns
clickbench_q42/datafusion:vortex-file-compressed 21955603 2.19535e+07 1.0001 ns
clickbench_q00/datafusion:vortex-compact 1899654 2.01039e+06 0.94492 ns
clickbench_q01/datafusion:vortex-compact 11547651 1.11405e+07 1.03654 ns
clickbench_q02/datafusion:vortex-compact 28960839 2.91614e+07 0.993122 ns
clickbench_q03/datafusion:vortex-compact 31570249 3.13481e+07 1.00709 ns
clickbench_q04/datafusion:vortex-compact 314651742 3.13591e+08 1.00338 ns
clickbench_q05/datafusion:vortex-compact 324516722 3.23466e+08 1.00325 ns
clickbench_q06/datafusion:vortex-compact 1936314 2.0417e+06 0.948383 ns
clickbench_q07/datafusion:vortex-compact 17423063 1.52535e+07 1.14224 ns
clickbench_q08/datafusion:vortex-compact 391356996 3.80492e+08 1.02855 ns
clickbench_q09/datafusion:vortex-compact 562142730 5.60603e+08 1.00275 ns
clickbench_q10/datafusion:vortex-compact 69487020 7.00299e+07 0.992248 ns
clickbench_q11/datafusion:vortex-compact 83018552 8.14549e+07 1.0192 ns
clickbench_q12/datafusion:vortex-compact 273891021 2.66399e+08 1.02812 ns
clickbench_q13/datafusion:vortex-compact 428963329 4.40157e+08 0.97457 ns
clickbench_q14/datafusion:vortex-compact 259291115 2.4913e+08 1.04079 ns
clickbench_q15/datafusion:vortex-compact 374239562 3.68565e+08 1.0154 ns
clickbench_q16/datafusion:vortex-compact 748003073 7.75772e+08 0.964205 ns
clickbench_q17/datafusion:vortex-compact 745556682 7.52999e+08 0.990116 ns
clickbench_q18/datafusion:vortex-compact 1419227074 1.40639e+09 1.00913 ns
clickbench_q19/datafusion:vortex-compact 20350391 2.13291e+07 0.954114 ns
clickbench_q20/datafusion:vortex-compact 319350181 2.75249e+08 1.16022 ns
clickbench_q21/datafusion:vortex-compact 377654079 3.41005e+08 1.10747 ns
clickbench_q22/datafusion:vortex-compact 543832691 6.66746e+08 0.815652 ns
clickbench_q23/datafusion:vortex-compact 1419579223 1.81153e+09 0.783637 ns
clickbench_q24/datafusion:vortex-compact 63984418 7.46692e+07 0.856906 ns
clickbench_q25/datafusion:vortex-compact 61034749 6.16772e+07 0.989583 ns
clickbench_q26/datafusion:vortex-compact 63237538 7.47797e+07 0.845651 ns
clickbench_q27/datafusion:vortex-compact 811524151 8.20829e+08 0.988664 ns
clickbench_q28/datafusion:vortex-compact 6823214194 6.68426e+09 1.02079 ns
clickbench_q29/datafusion:vortex-compact 248984972 2.49436e+08 0.998192 ns
clickbench_q30/datafusion:vortex-compact 273684404 2.52712e+08 1.08299 ns
clickbench_q31/datafusion:vortex-compact 313042517 2.85229e+08 1.09751 ns
clickbench_q32/datafusion:vortex-compact 1230148056 1.33973e+09 0.918208 ns
clickbench_q33/datafusion:vortex-compact 1422945810 1.41025e+09 1.009 ns
clickbench_q34/datafusion:vortex-compact 1417166840 1.39168e+09 1.01831 ns
clickbench_q35/datafusion:vortex-compact 557193503 5.45984e+08 1.02053 ns
clickbench_q36/datafusion:vortex-compact 81679917 7.90304e+07 1.03353 ns
clickbench_q37/datafusion:vortex-compact 39849179 3.7435e+07 1.06449 ns
clickbench_q38/datafusion:vortex-compact 21755981 2.16437e+07 1.00519 ns
clickbench_q39/datafusion:vortex-compact 173227477 1.69868e+08 1.01978 ns
clickbench_q40/datafusion:vortex-compact 19766071 2.01121e+07 0.982794 ns
clickbench_q41/datafusion:vortex-compact 18459183 1.77138e+07 1.04208 ns
clickbench_q42/datafusion:vortex-compact 22619331 2.1463e+07 1.05387 ns
clickbench_q00/duckdb:parquet 124488974 1.22902e+08 1.01291 ns
clickbench_q01/duckdb:parquet 49662796 5.11945e+07 0.970081 ns
clickbench_q02/duckdb:parquet 63251130 6.42205e+07 0.984906 ns
clickbench_q03/duckdb:parquet 62768070 6.29538e+07 0.99705 ns
clickbench_q04/duckdb:parquet 199576652 1.99322e+08 1.00128 ns
clickbench_q05/duckdb:parquet 269546299 2.70374e+08 0.996937 ns
clickbench_q06/duckdb:parquet 60788927 6.15841e+07 0.987087 ns
clickbench_q07/duckdb:parquet 54665871 5.50553e+07 0.992927 ns
clickbench_q08/duckdb:parquet 265318771 2.64234e+08 1.00411 ns
clickbench_q09/duckdb:parquet 390066886 3.87015e+08 1.00789 ns
clickbench_q10/duckdb:parquet 95568277 9.50193e+07 1.00578 ns
clickbench_q11/duckdb:parquet 104303047 1.05724e+08 0.986562 ns
clickbench_q12/duckdb:parquet 286188842 2.87307e+08 0.996109 ns
clickbench_q13/duckdb:parquet 473951613 4.67853e+08 1.01303 ns
clickbench_q14/duckdb:parquet 319655596 3.21877e+08 0.9931 ns
clickbench_q15/duckdb:parquet 236375824 2.35687e+08 1.00292 ns
clickbench_q16/duckdb:parquet 566092197 5.62388e+08 1.00659 ns
clickbench_q17/duckdb:parquet 471261730 4.72181e+08 0.998053 ns
clickbench_q18/duckdb:parquet 981225145 9.86643e+08 0.994509 ns
clickbench_q19/duckdb:parquet 48010995 5.15962e+07 0.930514 ns
clickbench_q20/duckdb:parquet 404622708 4.04506e+08 1.00029 ns
clickbench_q21/duckdb:parquet 526902499 5.2326e+08 1.00696 ns
clickbench_q22/duckdb:parquet 911896497 9.05081e+08 1.00753 ns
clickbench_q23/duckdb:parquet 276627370 2.74784e+08 1.00671 ns
clickbench_q24/duckdb:parquet 78540003 8.04883e+07 0.975794 ns
clickbench_q25/duckdb:parquet 138605982 1.39107e+08 0.996402 ns
clickbench_q26/duckdb:parquet 54887954 5.37008e+07 1.02211 ns
clickbench_q27/duckdb:parquet 619074022 6.15945e+08 1.00508 ns
clickbench_q28/duckdb:parquet 4862873746 4.87942e+09 0.996608 ns
clickbench_q29/duckdb:parquet 61274272 6.30064e+07 0.972509 ns
clickbench_q30/duckdb:parquet 306631104 3.04786e+08 1.00605 ns
clickbench_q31/duckdb:parquet 345638080 3.46337e+08 0.997982 ns
clickbench_q32/duckdb:parquet 1027402027 1.03352e+09 0.99408 ns
clickbench_q33/duckdb:parquet 1052457588 1.0453e+09 1.00685 ns
clickbench_q34/duckdb:parquet 1096957481 1.09324e+09 1.0034 ns
clickbench_q35/duckdb:parquet 348104660 3.51537e+08 0.990236 ns
clickbench_q36/duckdb:parquet 60494133 6.03192e+07 1.0029 ns
clickbench_q37/duckdb:parquet 49409785 4.88542e+07 1.01137 ns
clickbench_q38/duckdb:parquet 51338449 5.14257e+07 0.998303 ns
clickbench_q39/duckdb:parquet 94932271 9.28246e+07 1.02271 ns
clickbench_q40/duckdb:parquet 55124267 5.36755e+07 1.02699 ns
clickbench_q41/duckdb:parquet 56243610 5.75168e+07 0.977863 ns
clickbench_q42/duckdb:parquet 42436138 4.17131e+07 1.01733 ns
clickbench_q00/duckdb:vortex-file-compressed 12598044 1.20087e+07 1.04908 ns
clickbench_q01/duckdb:vortex-file-compressed 19344105 1.87451e+07 1.03196 ns
clickbench_q02/duckdb:vortex-file-compressed 29411228 2.95981e+07 0.993687 ns
clickbench_q03/duckdb:vortex-file-compressed 34367368 3.58159e+07 0.959555 ns
clickbench_q04/duckdb:vortex-file-compressed 172739226 1.72303e+08 1.00253 ns
clickbench_q05/duckdb:vortex-file-compressed 191893675 1.90209e+08 1.00886 ns
clickbench_q06/duckdb:vortex-file-compressed 33323821 3.22195e+07 1.03427 ns
clickbench_q07/duckdb:vortex-file-compressed 21677388 2.19529e+07 0.987448 ns
clickbench_q08/duckdb:vortex-file-compressed 261240947 2.62552e+08 0.995007 ns
clickbench_q09/duckdb:vortex-file-compressed 345895095 3.51838e+08 0.983109 ns
clickbench_q10/duckdb:vortex-file-compressed 71614256 7.40851e+07 0.966648 ns
clickbench_q11/duckdb:vortex-file-compressed 84874760 8.49547e+07 0.999059 ns
clickbench_q12/duckdb:vortex-file-compressed 207286181 2.03501e+08 1.0186 ns
clickbench_q13/duckdb:vortex-file-compressed 465238153 4.62458e+08 1.00601 ns
clickbench_q14/duckdb:vortex-file-compressed 295629692 2.89263e+08 1.02201 ns
clickbench_q15/duckdb:vortex-file-compressed 211136297 2.10623e+08 1.00244 ns
clickbench_q16/duckdb:vortex-file-compressed 943445461 9.57631e+08 0.985187 ns
clickbench_q17/duckdb:vortex-file-compressed 846657518 8.54079e+08 0.99131 ns
clickbench_q18/duckdb:vortex-file-compressed 1420154156 1.47259e+09 0.964394 ns
clickbench_q19/duckdb:vortex-file-compressed 26084111 2.67863e+07 0.973786 ns
clickbench_q20/duckdb:vortex-file-compressed 328306448 3.82305e+08 0.858756 ns
clickbench_q21/duckdb:vortex-file-compressed 353969017 3.16373e+08 1.11884 ns
clickbench_q22/duckdb:vortex-file-compressed 567423538 6.7101e+08 0.845626 ns
clickbench_q23/duckdb:vortex-file-compressed 1056376805 1.37988e+09 0.765559 ns
clickbench_q24/duckdb:vortex-file-compressed 66969903 5.26019e+07 1.27315 ns
clickbench_q25/duckdb:vortex-file-compressed 68334629 6.84404e+07 0.998454 ns
clickbench_q26/duckdb:vortex-file-compressed 56887590 4.86313e+07 1.16977 ns
clickbench_q27/duckdb:vortex-file-compressed 433225869 4.4466e+08 0.974286 ns
clickbench_q28/duckdb:vortex-file-compressed 3027972397 3.09886e+09 0.977124 ns
clickbench_q29/duckdb:vortex-file-compressed 33185296 3.42586e+07 0.96867 ns
clickbench_q30/duckdb:vortex-file-compressed 205898425 1.85571e+08 1.10954 ns
clickbench_q31/duckdb:vortex-file-compressed 272343150 2.46325e+08 1.10562 ns
clickbench_q32/duckdb:vortex-file-compressed 1064438266 1.06704e+09 0.997558 ns
clickbench_q33/duckdb:vortex-file-compressed 1022676931 1.01708e+09 1.00551 ns
clickbench_q34/duckdb:vortex-file-compressed 1527164697 1.48489e+09 1.02847 ns
clickbench_q35/duckdb:vortex-file-compressed 359193439 3.61658e+08 0.993186 ns
clickbench_q36/duckdb:vortex-file-compressed 24440346 2.50203e+07 0.976819 ns
clickbench_q37/duckdb:vortex-file-compressed 16258085 1.75227e+07 0.92783 ns
clickbench_q38/duckdb:vortex-file-compressed 17920216 1.79277e+07 0.999581 ns
clickbench_q39/duckdb:vortex-file-compressed 41929757 4.36949e+07 0.959602 ns
clickbench_q40/duckdb:vortex-file-compressed 16954262 1.62957e+07 1.04041 ns
clickbench_q41/duckdb:vortex-file-compressed 18409258 1.7364e+07 1.0602 ns
clickbench_q42/duckdb:vortex-file-compressed 20954599 2.09663e+07 0.999441 ns
clickbench_q00/duckdb:vortex-compact 10853694 1.14582e+07 0.947244 ns
clickbench_q01/duckdb:vortex-compact 40325221 4.02512e+07 1.00184 ns
clickbench_q02/duckdb:vortex-compact 46660933 4.68942e+07 0.995026 ns
clickbench_q03/duckdb:vortex-compact 44688282 4.45536e+07 1.00302 ns
clickbench_q04/duckdb:vortex-compact 211502256 2.11403e+08 1.00047 ns
clickbench_q05/duckdb:vortex-compact 228531300 2.39239e+08 0.955244 ns
clickbench_q06/duckdb:vortex-compact 35084401 3.5677e+07 0.98339 ns
clickbench_q07/duckdb:vortex-compact 54791750 5.66335e+07 0.96748 ns
clickbench_q08/duckdb:vortex-compact 284080067 2.8305e+08 1.00364 ns
clickbench_q09/duckdb:vortex-compact 406686413 4.10735e+08 0.990142 ns
clickbench_q10/duckdb:vortex-compact 122676238 1.24895e+08 0.982232 ns
clickbench_q11/duckdb:vortex-compact 142677457 1.43413e+08 0.994868 ns
clickbench_q12/duckdb:vortex-compact 272297572 3.08782e+08 0.881844 ns
clickbench_q13/duckdb:vortex-compact 534686313 5.73409e+08 0.932469 ns
clickbench_q14/duckdb:vortex-compact 369297771 4.02983e+08 0.916409 ns
clickbench_q15/duckdb:vortex-compact 250794684 2.49538e+08 1.00504 ns
clickbench_q16/duckdb:vortex-compact 1030785730 1.02658e+09 1.00409 ns
clickbench_q17/duckdb:vortex-compact 933321444 9.29149e+08 1.00449 ns
clickbench_q18/duckdb:vortex-compact 1512818157 1.52892e+09 0.989467 ns
clickbench_q19/duckdb:vortex-compact 29141011 2.90349e+07 1.00365 ns
clickbench_q20/duckdb:vortex-compact 412928800 5.21435e+08 0.791908 ns
clickbench_q21/duckdb:vortex-compact 469577204 4.69492e+08 1.00018 ns
clickbench_q22/duckdb:vortex-compact 823514452 9.64976e+08 0.853404 ns
clickbench_q23/duckdb:vortex-compact 1365924589 1.48832e+09 0.917764 ns
clickbench_q24/duckdb:vortex-compact 77959796 9.32061e+07 0.836423 ns
clickbench_q25/duckdb:vortex-compact 131257410 1.73717e+08 0.755583 ns
clickbench_q26/duckdb:vortex-compact 70573899 9.42836e+07 0.748528 ns
clickbench_q27/duckdb:vortex-compact 608240398 7.80857e+08 0.778939 ns
clickbench_q28/duckdb:vortex-compact 3122068863 3.38483e+09 0.92237 ns
clickbench_q29/duckdb:vortex-compact 39494847 4.00604e+07 0.985884 ns
clickbench_q30/duckdb:vortex-compact 289918190 2.84164e+08 1.02025 ns
clickbench_q31/duckdb:vortex-compact 347181966 3.32875e+08 1.04298 ns
clickbench_q32/duckdb:vortex-compact 1074690219 1.07927e+09 0.995753 ns
clickbench_q33/duckdb:vortex-compact 1120612853 1.07269e+09 1.04468 ns
clickbench_q34/duckdb:vortex-compact 1610579726 1.60171e+09 1.00554 ns
clickbench_q35/duckdb:vortex-compact 379099115 3.63408e+08 1.04318 ns
clickbench_q36/duckdb:vortex-compact 29303443 3.33971e+07 0.877426 ns
clickbench_q37/duckdb:vortex-compact 23068056 2.34673e+07 0.982989 ns
clickbench_q38/duckdb:vortex-compact 22957296 2.32864e+07 0.985868 ns
clickbench_q39/duckdb:vortex-compact 48579240 5.1344e+07 0.946152 ns
clickbench_q40/duckdb:vortex-compact 25412099 2.68576e+07 0.94618 ns
clickbench_q41/duckdb:vortex-compact 22974530 2.4252e+07 0.947326 ns
clickbench_q42/duckdb:vortex-compact 22324633 2.25055e+07 0.991965 ns
clickbench_q00/duckdb:duckdb 18850149 1.87278e+07 1.00653 ns
clickbench_q01/duckdb:duckdb 37247146 3.73663e+07 0.996812 ns
clickbench_q02/duckdb:duckdb 45964993 4.62373e+07 0.99411 ns
clickbench_q03/duckdb:duckdb 47941604 4.82521e+07 0.993566 ns
clickbench_q04/duckdb:duckdb 190519006 1.90205e+08 1.00165 ns
clickbench_q05/duckdb:duckdb 299559076 2.98916e+08 1.00215 ns
clickbench_q06/duckdb:duckdb 35857846 3.61418e+07 0.992143 ns
clickbench_q07/duckdb:duckdb 38523345 3.85595e+07 0.999063 ns
clickbench_q08/duckdb:duckdb 249960432 2.51016e+08 0.995796 ns
clickbench_q09/duckdb:duckdb 364205734 3.62973e+08 1.0034 ns
clickbench_q10/duckdb:duckdb 111730275 1.12032e+08 0.997304 ns
clickbench_q11/duckdb:duckdb 122311006 1.22791e+08 0.996093 ns
clickbench_q12/duckdb:duckdb 265259859 2.67969e+08 0.989889 ns
clickbench_q13/duckdb:duckdb 448005129 4.52813e+08 0.989381 ns
clickbench_q14/duckdb:duckdb 292839630 2.92252e+08 1.00201 ns
clickbench_q15/duckdb:duckdb 220359089 2.19983e+08 1.00171 ns
clickbench_q16/duckdb:duckdb 544323727 5.44623e+08 0.99945 ns
clickbench_q17/duckdb:duckdb 457308008 4.60352e+08 0.993387 ns
clickbench_q18/duckdb:duckdb 952567165 9.5141e+08 1.00122 ns
clickbench_q19/duckdb:duckdb 37203900 3.73463e+07 0.996187 ns
clickbench_q20/duckdb:duckdb 452654018 4.52517e+08 1.0003 ns
clickbench_q21/duckdb:duckdb 474951682 4.80246e+08 0.988976 ns
clickbench_q22/duckdb:duckdb 550677451 5.35412e+08 1.02851 ns
clickbench_q23/duckdb:duckdb 242233591 2.73348e+08 0.886174 ns
clickbench_q24/duckdb:duckdb 49463251 4.90617e+07 1.00818 ns
clickbench_q25/duckdb:duckdb 112438177 1.12882e+08 0.996065 ns
clickbench_q26/duckdb:duckdb 47652293 4.6473e+07 1.02538 ns
clickbench_q27/duckdb:duckdb 534605345 5.31648e+08 1.00556 ns
clickbench_q28/duckdb:duckdb 4478235492 4.51282e+09 0.992337 ns
clickbench_q29/duckdb:duckdb 49607527 4.9627e+07 0.999608 ns
clickbench_q30/duckdb:duckdb 270828872 2.73708e+08 0.98948 ns
clickbench_q31/duckdb:duckdb 337589233 3.39757e+08 0.993619 ns
clickbench_q32/duckdb:duckdb 1014584949 1.01997e+09 0.994721 ns
clickbench_q33/duckdb:duckdb 1069649773 1.078e+09 0.99225 ns
clickbench_q34/duckdb:duckdb 1143687956 1.14945e+09 0.994987 ns
clickbench_q35/duckdb:duckdb 265687416 2.66515e+08 0.996895 ns
clickbench_q36/duckdb:duckdb 45616316 4.06877e+07 1.12113 ns
clickbench_q37/duckdb:duckdb 32842441 3.25093e+07 1.01025 ns
clickbench_q38/duckdb:duckdb 34044722 3.4089e+07 0.998701 ns
clickbench_q39/duckdb:duckdb 67829207 7.2477e+07 0.935872 ns
clickbench_q40/duckdb:duckdb 32555391 3.27811e+07 0.993114 ns
clickbench_q41/duckdb:duckdb 33295847 3.31404e+07 1.00469 ns
clickbench_q42/duckdb:duckdb 32257039 3.23462e+07 0.997243 ns

Signed-off-by: Andrew Duffy <andrew@a10y.dev>
@a10y
Copy link
Contributor Author

a10y commented Oct 28, 2025

The latest few commits remove the contention in register_splits by pushing down the row range into split registration. So rather than having every partition register_splits for the entire file, it will only register its row range. That sped up query 0 by 83%, but didn't seem to make much of a difference on the others.

It's a bit bittersweet, but the reason the other queries seem to have gotten slower is because...we're compressing better.

We now have 773 leaf StructLayouts, most of which encode string data. Now that those are all being shredded out, we're compressing them with Dict+FSST much more frequently, which makes decoding slower:

image image

So I think that the StructLayout is fine, it's actually the way we read back chunks from a DictLayout that may be problematic.

For Query 3 from gharchive: select actor.login, count() as freq from events group by actor.login order by freq desc limit 10, we end up reading with splitsize of 8192 rows. A single dictionary chunk in the actor.login column is nearly 300k codes, and 54,000 values.

image image

This means that to read just one single chunk with splits of 8192 rows, require 36 split tasks. Each split task returns a DictArray wrapping 8192 codes, and the entire 54,000 item FSST-encoded dictionary. Calling to_arrow on each of these DictArray chunks will in turn decode the entire FSST values dictionary.

So in effect, it's not that FSST is too slow, but rather that we're decoding the same FSST array 36 times.

@a10y
Copy link
Contributor Author

a10y commented Oct 28, 2025

I suppose this is something that Operator work is supposed to help with? Though that really seems more focused on memoizing decodes in a single split task, rather than across split tasks?

@robert3005
Copy link
Contributor

If we only get 8192 codes we should only decode those codes. I know duckdb have a decompression cache on the fsst array to avoid any double decompression which is similar to us caching canonicalisations. I would still try first to avoid canonicalising values unconditionally and performing the take first

Signed-off-by: Andrew Duffy <andrew@a10y.dev>
@a10y
Copy link
Contributor Author

a10y commented Oct 28, 2025

This is about values not codes though. The issue is that every chunk goes through ToArrow, which canonicalizes. The entire values array gets decompressed for each chunk in that case.

As a test, when I switch the DictReader to instead eagerly canonicalize the values, Q3 goes from being 40% slower to nearly 2x faster than baseline.

I'm going to revert that commit for now, but I think this is a problem that is independent of nested struct splitting and is something we'll have to handle more fundamentally with DictLayouts.

This reverts commit 570d987.

Signed-off-by: Andrew Duffy <andrew@a10y.dev>
@a10y a10y merged commit 1c01fae into develop Oct 28, 2025
40 checks passed
@a10y a10y deleted the aduffy/nest1 branch October 28, 2025 15:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog/feature A new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants