apache / apache/datafusion-comet
Support splitting large DV-backed files in the native Delta scan
- Vorherrschende Sprache
- Scala
- Sterne
- 1.3k
- Forks
- 375
- Ø Merge
- 2 T. 10 Std.
- Gemergte PRs (30 T.)
- 231
Beschreibung
### What is the problem the feature request solves?
Follow-up from the native Delta Lake scan review (#5365). The admitted DV path carries Spark's row-index field, which causes the shared planner to disable file splitting, so a large DV-backed file is read by one task. Enabling native DV splitting would increase scan parallelism.
If splitting is enabled, access-plan construction must prepare only the owned row groups while preserving file-global row positions, whole-file corruption validation, and memory accounting. Dictionary-page ownership, half-open split boundaries, and interaction with pruning deserve explicit regressions. Descriptor reuse can then be evaluated where multiple splits share one DV, and split-file benchmarks should accompany the change.
### Describe the potential solution
No response
### Additional context
Raised in the #5365 review discussion.
Beitragsleitfaden
Rechercherichtung
Beginne mit dem nativen Delta-Scan und dem gemeinsam genutzten Planner, die in Review #5365 besprochen wurden, und verfolge dann die Konstruktion des DV-Zugriffsplans sowie, wie die Behandlung von Zeilenindizes das Aufteilen deaktiviert. Definiere Regressionen für die Zuständigkeit von Zeilengruppen, globale Positionen innerhalb der Datei, die Validierung von Beschädigungen, die Speicherabrechnung, Dictionary Pages, Aufteilungsgrenzen und Pruning; füge Benchmarks für aufgeteilte Dateien hinzu, bevor du die Wiederverwendung von Deskriptoren evaluierst.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- rust, scala
- Bereich
- data-engineering, performance
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Aktiv
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 38/100