Assortment of VortexSource improvements and fixes#8718
Conversation
Polar Signals Profiling ResultsLatest Run
Previous Runs (3)
Powered by Polar Signals Cloud |
Benchmarks: PolarSignals ProfilingVortex (geomean): 0.894x ✅ How to read Verdict and Engines
datafusion / vortex-file-compressed (0.894x ✅, 7↑ 0↓)
No file size changes detected. |
Merging this PR will not alter performance
Comparing Footnotes
|
Benchmarks: TPC-H SF=1 on NVMEVerdict: No clear signal (environment too noisy confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.987x ➖, 0↑ 0↓)
datafusion / vortex-compact (0.989x ➖, 0↑ 0↓)
datafusion / parquet (0.979x ➖, 1↑ 1↓)
datafusion / arrow (0.965x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed (0.981x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.985x ➖, 0↑ 0↓)
duckdb / parquet (0.987x ➖, 2↑ 1↓)
duckdb / duckdb (0.988x ➖, 0↑ 0↓)
No file size changes detected. |
Benchmarks: FineWeb NVMeVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.946x ➖, 2↑ 0↓)
datafusion / vortex-compact (0.973x ➖, 1↑ 0↓)
datafusion / parquet (0.973x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.966x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.977x ➖, 1↑ 0↓)
duckdb / parquet (0.999x ➖, 0↑ 1↓)
No file size changes detected. |
Benchmarks: TPC-DS SF=1 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.992x ➖, 0↑ 1↓)
datafusion / vortex-compact (0.988x ➖, 0↑ 0↓)
datafusion / parquet (0.979x ➖, 2↑ 1↓)
duckdb / vortex-file-compressed (0.980x ➖, 1↑ 0↓)
duckdb / vortex-compact (0.990x ➖, 1↑ 2↓)
duckdb / parquet (0.989x ➖, 0↑ 1↓)
duckdb / duckdb (1.000x ➖, 1↑ 2↓)
No file size changes detected. |
Benchmarks: Clickbench Sorted on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.118x ❌, 0↑ 5↓)
datafusion / parquet (1.063x ➖, 0↑ 1↓)
duckdb / vortex-file-compressed (1.041x ➖, 1↑ 3↓)
duckdb / parquet (0.995x ➖, 0↑ 1↓)
duckdb / duckdb (1.102x ❌, 0↑ 6↓)
File Size Changes (201 files changed, -0.1% overall, 89↑ 112↓)
Totals:
|
Benchmarks: FineWeb S3Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.938x ➖, 1↑ 0↓)
datafusion / vortex-compact (0.938x ➖, 1↑ 0↓)
datafusion / parquet (0.968x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.980x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.978x ➖, 0↑ 0↓)
duckdb / parquet (0.977x ➖, 0↑ 0↓)
|
Benchmarks: Statistical and Population GeneticsVerdict: No clear signal (low confidence) How to read Verdict and Engines
duckdb / vortex-file-compressed (1.116x ❌, 0↑ 7↓)
duckdb / vortex-compact (1.027x ➖, 0↑ 0↓)
duckdb / parquet (1.094x ➖, 0↑ 3↓)
No file size changes detected. |
Benchmarks: Clickbench on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.974x ➖, 1↑ 1↓)
datafusion / parquet (0.968x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed (1.006x ➖, 0↑ 4↓)
duckdb / parquet (0.992x ➖, 0↑ 0↓)
duckdb / duckdb (0.983x ➖, 0↑ 0↓)
File Size Changes (1 files changed, -0.0% overall, 0↑ 1↓)
Totals:
|
Benchmarks: TPC-H SF=10 on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.902x ➖, 11↑ 0↓)
datafusion / vortex-compact (0.920x ➖, 2↑ 0↓)
datafusion / parquet (0.920x ➖, 4↑ 0↓)
datafusion / arrow (0.850x ✅, 19↑ 0↓)
duckdb / vortex-file-compressed (0.914x ➖, 7↑ 0↓)
duckdb / vortex-compact (0.951x ➖, 0↑ 0↓)
duckdb / parquet (0.948x ➖, 0↑ 0↓)
duckdb / duckdb (0.944x ➖, 1↑ 0↓)
No file size changes detected. |
Benchmarks: TPC-H SF=1 on S3Verdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.928x ➖, 2↑ 0↓)
datafusion / vortex-compact (0.811x ➖, 5↑ 0↓)
datafusion / parquet (1.003x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (0.966x ➖, 0↑ 0↓)
duckdb / vortex-compact (0.960x ➖, 0↑ 0↓)
duckdb / parquet (0.943x ➖, 0↑ 0↓)
|
VortexSource improvements and fixes
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
Benchmarks: Vortex queriesVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (1.031x ➖, 0↑ 0↓)
datafusion / parquet (0.943x ➖, 0↑ 0↓)
duckdb / vortex-file-compressed (1.006x ➖, 0↑ 0↓)
duckdb / parquet (1.004x ➖, 0↑ 0↓)
No file size changes detected. |
Benchmarks: Appian on NVMEVerdict: No clear signal (low confidence) How to read Verdict and Engines
datafusion / vortex-file-compressed (0.942x ➖, 0↑ 0↓)
datafusion / parquet (0.930x ➖, 1↑ 0↓)
duckdb / vortex-file-compressed (0.972x ➖, 0↑ 0↓)
duckdb / parquet (0.969x ➖, 0↑ 0↓)
duckdb / duckdb (0.942x ➖, 0↑ 0↓)
File Size Changes (1 files changed, -0.0% overall, 0↑ 1↓)
Totals:
|
🚨🚨🚨❌❌❌ SQL BENCHMARK FAILED ❌❌❌🚨🚨🚨Benchmark |
| static SESSION: LazyLock<VortexSession> = LazyLock::new(VortexSession::default); | ||
|
|
||
| #[derive(Debug, Eq, Hash, PartialEq)] | ||
| struct SnapshotErrorExpr; |
There was a problem hiding this comment.
add a doc str explaining why you added this
Signed-off-by: Adam Gutglick <adam@spiraldb.com>
Benchmarks: Random AccessVortex (geomean): 1.070x ➖ How to read Verdict and Engines
unknown / unknown (1.046x ➖, 0↑ 6↓)
|
Benchmarks: CompressionVortex (geomean): 1.002x ➖ How to read Verdict and Engines
unknown / unknown (0.985x ➖, 1↑ 1↓)
|
Rationale for this change
General improvements of the
FileSource-based Apache DataFusion integration.What changes are included in this PR?
ParquetSourceprovides.batch_sizefrom the source, by default DataFusion splits the data coming out ofDataScanExecnodes.What APIs are changed? Are there any user-facing changes?
More metrics will be reported in DF, and batch size needs to be done through the
DataSourceExecandFileScanConfiglevel.