Apache Beam 2.18.0

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

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

重點

  • BEAM-8470 - 建立基於 Spark Structured Streaming 框架的新 Spark 執行器

I/O

  • BEAM-7636 - 新增 SqsIO v2 支援。
  • BEAM-8513 - RabbitMqIO:允許從交換綁定的佇列讀取,而無需宣告交換。
  • BEAM-8540 - 修復 FileIO 文件中的 CSVSink 範例

新功能 / 改進

  • BEAM-5878 - 在 Python 3 中新增對具有僅限關鍵字引數的 DoFn 的支援。
  • BEAM-6756 - 改善了對結構描述中延遲可迭代物件的支援 (Java)。
  • BEAM-4776 AND BEAM-4777 - 新增對可攜式執行器的指標支援。
  • 對互動式 Beam 的各種改進:BEAM-7760BEAM-8379BEAM-8016BEAM-8016
  • BEAM-8658 - 在 FlinkUberJarJobServer 中可選地設定 artifact staging 連接埠。
  • BEAM-8660 - 覆寫傳回的 artifact staging 端點

SQL

  • BEAM-8343 - [SQL] 新增 IO API 在執行 SQL 管線時支援謂詞和/或專案下推的方法。以及 BEAM-8468BEAM-8365BEAM-8508
  • BEAM-8427 - [SQL] 新增 MongoDB 來源的支援。
  • BEAM-8456 - 新增管線選項以控制 Beam SQL 處理的 BigQuery 資料的截斷。

重大變更

  • BEAM-8814 - –no_auth 旗標變更為布林類型。

棄用

  • BEAM-8252 AND BEAM-8254 新增 worker_region 和 worker_zone 選項。已棄用 –zone 旗標和 –worker_region 實驗引數。

相依性變更

  • BEAM-7078 - com.amazonaws:amazon-kinesis-client 更新至 1.13.0。
  • BEAM-8822 - 將 Hadoop 相依性升級至 2.8 版。

錯誤修復

  • BEAM-7917 - Python datastore v1new 在重試時失敗。
  • BEAM-7981 - ParDo 函式包裝器不支援可迭代的輸出類型。
  • BEAM-8146 - SchemaCoder/RowCoder 沒有 equals() 函式。
  • BEAM-8347 - 如果沒有新資料進入,UnboundedRabbitMqReader 可能無法推進水位線。
  • BEAM-8352 - 在背景讀取記錄可能會導致 OOM 錯誤
  • BEAM-8480 - 為有界讀取器包裝器 SDF 明確設定限制編碼器。
  • BEAM-8515 - 確保 ValueProvider 類型為了比較原因而實作 equals/hashCode。
  • BEAM-8579 - 在 TextSource 中剝除 UTF-8 BOM 位元組(如果存在)。
  • BEAM-8657 - 沒有對資料驅動觸發器進行 Combiner lifting。
  • BEAM-8663 - BundleBasedRunner 堆疊式 Bundle 不會遵循 PaneInfo。
  • BEAM-8667 - 資料通道應避免 Python SDK 中的無限緩衝。
  • BEAM-8802 - 時間戳記組合器在串流模式中不會跨 bundle 遵循。
  • BEAM-8803 - Python BQ 串流插入 sink 的預設行為應該是始終重試。
  • BEAM-8825 - 寫入大量「窄」行時 OOM。
  • BEAM-8835 - 使用 FlinkUberJarJobServer 時 artifact 擷取失敗
  • BEAM-8836 - ExternalTransform 未提供唯一的名稱
  • BEAM-8884 - 分割時發生 Python MongoDBIO TypeError。
  • BEAM-9041 - SchemaCoder equals 不應依賴 from/toRowFunction 的相等性。
  • BEAM-9042 - AvroUtils.schemaCoder(schema) 產生不可序列化的 SchemaCoder。
  • BEAM-9065 - Spark 執行器在執行之間(錯誤地)累積指標。
  • BEAM-6303 - 將 .parquet 副檔名新增至 ParquetIO 中的檔案。
  • 各種錯誤修復和效能改進。

已知問題

  • BEAM-8882 - Python:除非將 reshuffle=False 作為引數傳遞,否則 beam.Create 不再保留順序。

    使用 DirectRunner 時可能會遇到此問題。

  • BEAM-9065 - Spark 執行器在執行之間(錯誤地)累積指標

  • BEAM-9123 - HadoopResourceId 傳回錯誤的目錄名稱

  • 請參閱影響此版本的未解決問題的完整清單

  • BEAM-9144 - 如果您將 Avro 1.9.x 與 Beam 搭配使用,則不應升級到此版本。時間戳記轉換存在問題。下一個版本將提供修復程式。

貢獻者清單

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

Ahmet Altay, Aizhamal Nurmamat kyzy, Alan Myrvold, Alexey Romanenko, Alex Van Boxel, Andre Araujo, Andrew Crites, Andrew Pilloud, Aryan Naraghi, Boyuan Zhang, Brian Hulette, bumblebee-coming, Cerny Ondrej, Chad Dombrova, Chamikara Jayalath, Changming Ma, Chun Yang, cmachgodaddy, Colm O hEigeartaigh, Craig Chambers, Daniel Oliveira, Daniel Robert, David Cavazos, David Moravek, David Song, dependabot[bot], Derek, Dmytro Sadovnychyi, Elliotte Rusty Harold, Etienne Chauchot, Hai Lu, Henry Suryawirawan, Ismaël Mejía, Jack Whelpton, Jan Lukavský, Jean-Baptiste Onofré, Jeff Klukas, Jincheng Sun, Jing, Jing Chen, Joe Tsai, Jonathan Alvarez-Gutierrez, Kamil Wasilewski, KangZhiDong, Kasia Kucharczyk, Kenneth Knowles, kirillkozlov, Kirill Kozlov, Kyle Weaver, liumomo315, lostluck, Łukasz Gajowy, Luke Cwik, Mark Liu, Maximilian Michels, Michal Walenia, Mikhail Gryzykhin, Niel Markwick, Ning Kang, nlofeudo, pabloem, Pablo Estrada, Pankaj Gudlani, Piotr Szczepanik, Primevenn, Reuven Lax, Robert Bradshaw, Robert Burke, Rui Wang, Ruoyun Huang, RusOr10n, Ryan Skraba, Saikat Maitra, sambvfx, Sam Rohde, Samuel Husso, Stefano, Steve Koonce, Steve Niemitz, sunjincheng121, Thomas Weise, Tianyang Hu, Tim Robertson, Tomo Suzuki, tvalentyn, Udi Meiri, Valentyn Tymofieiev, Viola Lyu, Wenjia Liu, Yichi Zhang, Yifan Zou, yoshiki.obata, Yueyang Qiu, ziel, 康智冬