apache / apache/iceberg-python

Add `VariantType`

Offen
#1,819 8 Kommentare 4 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
V3
Vorherrschende Sprache
Python
Sterne
1.1k
Forks
581
Ø Merge
1 T. 17 Std.
Gemergte PRs (30 T.)
78

Beschreibung

### Feature Request / Improvement

The VariantType is a semi-structured type that's part of V3.

- Hopefully, the Parquet format will be released soon: https://lists.apache.org/thread/mr8krzdy8qslhhy5zbll53fd2hy6cpwg
- Once that's in, I'll be added to Arrow: https://github.com/apache/arrow/pull/45375
- I think for PyIceberg, we need to wait for PyArrow support.

There is a Python implementation in Spark that we could vendor into the project, but that will be pretty slow: https://github.com/apache/spark/blob/master/python/pyspark/sql/variant_utils.py

Thoughts?

Original proposal: https://github.com/apache/iceberg/issues/10392

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, die verlinkte Arbeit zu Parquet und Arrow zu prüfen, um festzustellen, ob die erforderliche Unterstützung für VariantType verfügbar ist, und lies anschließend Spark's python/pyspark/sql/variant_utils.py als die referenzierte Implementierung. Die Aufgabe ist abgeschlossen, wenn PyIceberg einen abgestimmten Implementierungspfad für VariantType hat, sobald die PyArrow-Abhängigkeit dies unterstützt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python, spark
Bereich
data
Issue-Typ
Feature
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Ruhig
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.