apache / apache/iceberg-python

Support multi-argument transforms

オープン
#3,628 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Python
スター
1.1k
フォーク
581
平均マージ
1日 17時間
マージ済み PR(30日)
77

説明

### Feature Request / Improvement

Part of #1818.

The V3 spec generalizes partition and sort fields to multiple source columns via `source-ids`. PyIceberg currently raises when `source-ids` has more than one element, so loading such tables fails — but the spec requires v3 readers to read tables with unknown transforms, ignoring them (null partition values, always-true projection in scan planning).

Scope: model `source-ids`, serialize per spec (`source-id` for single-argument transforms, `source-ids` otherwise), and treat multi-argument transforms as unknown in scan planning. Evaluating multi-argument transforms on write is out of scope until the spec defines concrete ones.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

まず partition-field モデルとそのシリアライゼーションを追跡し、次に scan-planning における unknown transforms の処理を確認します。現在の単一引数の source-id の動作を V3 仕様と比較します。完了条件は、複数引数の source-ids が正しくロードおよびシリアライズされ、scan-planning 中に unknown として扱われ、write-time evaluation は引き続きスコープ外であることです。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
data-engineering
issue の種類
機能追加
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
58/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。