Native tuple sketch functions (tuple_*, Spark 4.2): audit the crate against Java and implement
I maintainer di solito rispondono entro 2 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 12/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Ambito
- data-engineering
Direzione di ricerca
This is a multi-part audit and implementation across the Rust tuple feature of the datasketches crate and Comet's Spark expression support, so it is not a starting point. Begin with the Spark 4.2 tuple function definitions and the existing theta sketch expressions in the Comet source, then compare the crate's summary types and union/intersection policies against DataSketches-Java 6.2.0 fixtures. Done means each tuple_* function runs natively with a Spark fallback before 4.2, backed by committed fixtures and tests.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
What is the problem the feature request solves?
Part of #7397.
Spark 4.2 adds Tuple sketch functions: tuple_sketch_agg, tuple_union_agg, tuple_intersection_agg, the tuple_difference / tuple_union / tuple_intersection scalars, and tuple_sketch_estimate, tuple_sketch_summary and tuple_sketch_theta, each in integer and double summary variants. None of them run natively in Comet. The crate's tuple feature arrived in datasketches 0.4.0.
Describe the potential solution
- Score the family with
suggest-native-expressionfirst. This is the lowest priority of the four, because it only exists in the newest Spark version Comet supports. - Do the theta work first, since a tuple sketch is a theta sketch with a summary attached and shares its hashing and set-operation behavior.
- Audit the crate's
tuplefeature against DataSketches-Java 6.2.0 using committed fixtures. The summary types and the policies that combine summaries on union and intersection need to match Spark's exactly, and the serialized summary format has to be readable in both directions. - Implement, test and document as for the other families, with a fallback on Spark versions before 4.2.
- Lingua principale
- Scala
- Stelle
- 1.3k
- Fork
- 414
- Merge medio
- 3g 5h
- PR unite (30g)
- 210
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di apache/datafusion-comet
-
requires-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
apache/datafusion-comet#7559 ·
I maintainer di solito rispondono entro 2 giorni
-
requires-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/datafusion-comet#7558 ·
I maintainer di solito rispondono entro 2 giorni
-
enhancement requires-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/datafusion-comet#7557 ·
I maintainer di solito rispondono entro 2 giorni
-
`rand` and `randn` with an integer seed fall back to Spark without a fallback reasonForse già presa @galaxytemple l’ha presa 2 giorni fa. Apertarequires-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
apache/datafusion-comet#7479 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 2 giorni
-
area:writer enhancement requires-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
apache/datafusion-comet#7463 ·
I maintainer di solito rispondono entro 2 giorni
Tutte le issue di apache/datafusion-comet
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
chipsalliance/rocket-chip#3845 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 86/100
I maintainer di solito rispondono entro 13 giorni
-
gesticulate: the `FastInfoset` suffix is written `fast-infoset`, not the registered `fastinfoset`Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
propensive/soundness#2437 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
ergoplatform/ergo#2918 ·
I maintainer di solito rispondono entro 2 giorni