Apache Beam 2.40.0

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

有關 2.40.0 中變更的更多資訊,請查看詳細發行說明

重點

  • 新增 RunInference API,這是一個與框架無關的推論轉換。在此版本中,轉換支援 PyTorch 和 Scikit-learn。另請參閱 apache_beam/examples/inference/pytorch_image_classification.py 中的範例

I/O

  • HCatalogIO 已升級至 Hive 3.1.3。使用者仍然可以提供自己的 Hive 版本。(Java)(Issue-19554)。

新功能/改進

  • Go SDK 使用者現在可以使用通用註冊函式來最佳化其 DoFn 執行。( BEAM-14347 )
  • Go SDK 使用者現在可以寫入自我檢查點的 Splittable DoFns,以從串流來源讀取。( BEAM-11104 )
  • Go SDK textio 讀取已完全移至 Splittable DoFns。( BEAM-14489 )
  • 已測試 Go SDK 新增的 Pipeline 排出支援。( BEAM-11106 )
  • Go SDK 使用者現在可以在 Worker 狀態中查看堆積使用量、sideinput 快取統計資料和作用中處理套件統計資料。( BEAM-13829 )
  • Python 的序列化 (pickling) 程式庫是 dill==0.3.1.1 ( BEAM-11167 )

重大變更

  • 為了支援泛型,Go Sdk 現在需要 1.18 的最低版本 ( BEAM-14347 )。
  • synthetic.SourceConfig 欄位類型已從 int 變更為 int64,以更好地與 Flink 在 Schema 中使用邏輯類型相容 (Go) ( BEAM-14173 )
  • 預設編碼器已更新,以壓縮與 BoundedSourceAsSDFWrapperFnUnboundedSourceAsSDFWrapper 一起使用的來源。

錯誤修正

  • 修正 Java 擴展服務以允許暫存特定檔案 ( BEAM-14160 )。
  • 修正同時使用 ssl 和使用者名稱/密碼時的 Elasticsearch 連線 (Java) ( BEAM-14000 )

已知問題

  • 當使用某些內建函式(例如 sumlen)建構時,Python 的 beam.FlatMap 將引發 AttributeError: 'builtin_function_or_method' object has no attribute '__func__' ( #22091 )。
  • Java 的 BigQueryIO.Write 可能會發生例外狀況,其中它會嘗試輸出超出最大時間戳記範圍的時間戳記 Cannot output with timestamp 294247-01-10T04:00:54.776Z. Output timestamps must be no earlier than the timestamp of the current input or timer (294247-01-10T04:00:54.776Z) minus the allowed skew (0 milliseconds) and no later than 294247-01-10T04:00:54.775Z. See the DoFn#getAllowedTimestampSkew() Javadoc for details on changing the allowed skew.。當接收器閒置導致觸發閒置逾時,或當使用動態目的地時特定表格閒置時間夠長時,就會發生這種情況。發生這種情況時,作業將無法再排出。此問題已在 2.41 版本中修正。

貢獻者清單

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

Ahmed Abualsaud Ahmet Altay Aizhamal Nurmamat kyzy Alejandro Rodriguez-Morantes Alexander Zhuravlev Alexey Romanenko Anand Inguva andoni-guzman Andy Ye Balázs Németh Benjamin Gonzalez Brian Hulette bulat safiullin bullet03 Chamikara Jayalath Damon Douglas Daniel Oliveira Danny McCormick Darkhan Nausharipov David Huntsperger Diego Gomez dpcollins-google Ekaterina Tatanova Elias Segundo Etienne Chauchot Evan Galpin fbeevikm Fernando Morales Heejong Lee Igor Krasavin Ilion Beyst Israel Herraiz Jack McCluskey Jan Kuehle Jan Lukavský johnjcasey Jonathan Lui jrmccluskey Julien Tournay Kenneth Knowles Kerry Donny-Clark Kevin Puthusseri Kiley Sok Kyle Weaver kynx Lucas Nogueira Luke Cwik LuNing Wang Marco Robles masahitojp Minbo Bae Moritz Mack Naireen Hussain Nancy Xu Niel Markwick Ning Kang nishant jain nishantjain91 Oskar Firlej Pablo Estrada pablo rodriguez defino Rebecca Szper Red Daly Reuven Lax Ritesh Ghorse Robert Bradshaw Robert Burke Ryan Thompson Sam Whittle Thiago Nunes Tom Stepp vachan-shetty Valentyn Tymofieiev vikash2310 Vitaly Terentyev Vladislav Chunikhin Yichi Zhang Yi Hu Yiru Tang yixiaoshen zwestrick