apache / apache/iceberg-python

Upserting large table extremely slow

未關閉
#2,159 22 則留言 2 個 reaction 已指派 0 人 在 GitHub 檢視
stale
主要語言
Python
星號
1.1k
分支
581
平均合併
1 天 17 小時
30 天內合併 PR
78

描述

### Feature Request / Improvement

## Feature Request / Improvement

Upserting large dataframes (tens of millions of rows) in un-usably slow due to creating a massive `BooleanExpression` in `upsert_util.create_match_filter`. This is before any IO is even started. It would be nice if upserts could support large tables.

I'd be happy to work on this issue.

貢獻指南

這個儲存庫沒有索引到貢獻指南

研究方向

從 upsert_util.create_match_filter 開始,該 issue 指出一個巨大的 BooleanExpression 是 I/O 之前的瓶頸。追蹤 dataframe upsert 期間如何使用此篩選器,並使用大型資料表測量其行為。完成的標準是:對數千萬列執行 upsert 時,不再將無法接受的大量時間花費在建構比對篩選器上。

由索引模型根據 Issue 內容生成。

評估

技術堆疊
python
領域
data-engineering
Issue 類型
功能
難度
4/5
預估耗時
3-5 天
活躍度
活躍
描述清晰度
基本清楚
新手友好度
48/100

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。