Apache Beam 2.50.0

我們很高興推出 Beam 的新版本 2.50.0。此版本包含改進和新功能。請參閱此版本的下載頁面

有關 2.50.0 中變更的詳細資訊,請查看詳細的發佈說明

重點

  • Spark 3.2.2 用作 Spark 執行器的預設版本 (#23804)。
  • Go SDK 有一個新的預設本機執行器,稱為 Prism (#24789)。
  • 所有 Beam 發佈的容器映像現在都是多架構映像,支援 x86 和 ARM CPU 架構。

I/O

  • Java KafkaIO 現在支援透過 topicPattern 挑選主題 (#26948)
  • 支援從 Cosmos DB Core SQL API 讀取 (#23604)
  • HBaseIO 升級至 HBase 2.5.5。(Java) (#27711)
  • 新增對 GoogleAdsIO 來源的支援 (Java) (#27681)。

新功能 / 改進

  • Go SDK 現在需要 Go 1.20 才能建置。 (#27558)
  • Go SDK 有一個新的預設本機執行器 Prism。 (#24789)。
  • Python SDK 新增用於 RunInference 的 Hugging Face 模型處理器。 (#26632)
  • Python SDK 新增對 RunInference 的 Hugging Face Pipelines 支援。 (#27399)
  • 用於 RunInference 的 Vertex AI 模型處理器現在支援私人端點 (#27696)
  • 新增了 MLTransform 轉換,支援常見的 ML 前/後處理操作 (#26795)
  • Java SDK 的 Kryo 擴充功能升級至 Kryo 5.5.0。這帶來了錯誤修正、效能改進以及 Java 14 記錄的序列化。 (#27635)
  • 所有 Beam 發佈的容器映像現在都是多架構映像,支援 x86 和 ARM CPU 架構。 (#27674)。多架構容器映像包括
    • 所有版本的 Go、Python、Java 和 Typescript SDK 容器。
    • 所有版本的 Flink 工作伺服器容器。
    • Java 和 Python 擴充服務容器。
    • 轉換服務控制器容器。
    • Spark3 工作伺服器容器。
  • 新增對 AWS SQS 的批次寫入支援,以提高輸送量 (Java、AWS 2)。(#21429)

重大變更

  • Python SDK:Dataflow 中移除了舊版執行器支援,所有管線都必須使用執行器 v2。
  • Python SDK:Dataflow 執行器將不再於管線提交時,在 --staging_location 中暫存來自 PyPI 的 Beam SDK。不是以 Beam 預設映像為基礎的自訂容器映像必須包含 Apache Beam 安裝。( #26996)

已棄用

  • Go 直接執行器現在已棄用。它仍然可用,以減少移轉的混亂情況。
    • 可以透過覆寫 TestMain 將測試設定回直接執行器:func TestMain(m *testing.M) { ptest.MainWithDefault(m, "direct") }
    • 建議修正使用 Prism 測試時發現的問題,因為它們也可能發生在任何可攜式執行器上。
    • 使用泛型註冊套件來註冊管線 DoFn,以確保管線在可攜式執行器 (如 prism) 上運作。
    • 請勿依賴閉包或使用套件全域變數進行 DoFn 設定。它們在可攜式執行器上無法運作。

錯誤修正

已知問題

  • 長時間執行的 Python 管線可能會發生記憶體洩漏:#28246
  • 使用 BigQuery IO 或 orjson 相依性的 Python 管線可能會發生區段錯誤或卡住:#28318
  • Python SDK 的跨語言 Bigtable Sink 會錯誤處理沒有設定明確時間戳記的記錄:#28632。為避免此問題,請在寫入 Bigtable 之前,為所有記錄設定明確的時間戳記。

貢獻者清單

根據 git shortlog,以下人員為 2.50.0 版本做出了貢獻。感謝所有貢獻者!

Abacn

acejune

AdalbertMemSQL

ahmedabu98

Ahmed Abualsaud

al97

Aleksandr Dudko

Alexey Romanenko

Anand Inguva

Andrey Devyatkin

Anton Shalkovich

ArjunGHUB

Bjorn Pedersen

BjornPrime

Brett Morgan

Bruno Volpato

Buqian Zheng

Burke Davison

Byron Ellis

bzablocki

case-k

Celeste Zeng

Chamikara Jayalath

Clay Johnson

Connor Brett

Damon

Damon Douglas

Dan Hansen

Danny McCormick

Darkhan Nausharipov

Dip Patel

Dmytro Sadovnychyi

Florent Biville

Gabriel Lacroix

Hai Joey Tran

Hong Liang Teoh

Jack McCluskey

James Fricker

Jeff Kinard

Jeff Zhang

Jing

johnjcasey

jon esperanza

Josef Šimánek

Kenneth Knowles

Laksh

Liam Miller-Cushon

liferoad

magicgoody

Mahmud Ridwan

Manav Garg

Marco Vela

martin trieu

Mattie Fu

Michel Davit

Moritz Mack

mosche

Peter Sobot

Pranav Bhandari

Reeba Qureshi

Reuven Lax

Ritesh Ghorse

Robert Bradshaw

Robert Burke

RyuSA

Saba Sathya

Sam Whittle

Steven Niemitz

Steven van Rossum

Svetak Sundhar

Tony Tang

Valentyn Tymofieiev

Vitaly Terentyev

Vlado Djerek

Yichi Zhang

Yi Hu

Zechen Jiang