Apache Beam 2.26.0

Apache Beam の新しい 2.26.0 リリースを発表できることを嬉しく思います。このリリースには、改善点と新機能の両方が含まれています。このリリースのダウンロードページをご覧ください。

2.26.0 の変更点の詳細については、詳細なリリースノートをご確認ください。

ハイライト

  • Splittable DoFn が、2.25.0 リリースからの既存のランナー (Direct、Flink、Jet、Samza、Twister2) に加えて、Java ベースのランナー (バインドされたパイプラインを持つ Spark) で Read 変換を実行するためのデフォルトになりました。Read 変換の期待される出力は変更されていません。ユーザーは --experiments=use_deprecated_read を使用してオプトアウトできます。Apache Beam コミュニティは、この変更を永続的なものにする計画があるため、この変更に関するフィードバックを求めています。オプトアウトが必要な問題が発生した場合は、件名に BEAM-10670 を明記し、オプトアウトが必要な理由を具体的に記載して、user@beam.apache.org にメールを送信してください。(Java) (BEAM-10670)

I/O

  • Java BigQuery ストリーミング インサートで、タイムアウトがデフォルトで有効になりました。以前の動作に戻すには、--HTTPWriteTimeout=0 を渡します。(BEAM-6103)
  • コンテキストテキスト IO (Java) のサポートを追加しました。これは、レコードに関するメタデータを提供するテキスト IO のバージョンです (BEAM-10124)。この IO のサポートは現在試験段階です。具体的には、**現在の Apache Beam SDK の将来のバージョン間で、この IO を使用したストリーミング ジョブの更新互換性の保証はありません。**

新機能/改善点

  • Beam SQL Kafka テーブルに avro ペイロード形式のサポートを追加しました (BEAM-10885)
  • Beam SQL Kafka テーブルに json ペイロード形式のサポートを追加しました (BEAM-10893)
  • Beam SQL Kafka テーブルに protobuf ペイロード形式のサポートを追加しました (BEAM-10892)
  • Beam SQL Pubsub テーブルに avro ペイロード形式のサポートを追加しました (BEAM-5504)
  • Flink ランナー (Java) でオペレーター間の不要なコピーを無効にするオプションを追加しました (BEAM-11146)
  • Python SDK に CombineFn.setup と CombineFn.teardown を追加しました。これらのメソッドを使用すると、CombineFn の他のメソッドが実行される前に CombineFn の状態を初期化し、後でその状態をクリーンアップできます。Dataflow を使用している場合は、この機能を使用する前に --experiments=use_runner_v2 を渡して Dataflow Runner V2 を有効にする必要があります。(BEAM-3736)

破壊的な変更

  • BigQuery の DATETIME 型が、Beam 論理型 org.apache.beam.sdk.schemas.logicaltypes.SqlTypes.DATETIME にマップされるようになりました。
  • データフレーム操作には Pandas 1.x が必須になりました。

貢献者リスト

git shortlog によると、以下の人々が 2.26.0 リリースに貢献しました。すべての貢献者に感謝します!

Abhishek Yadav, AbhiY98, Ahmet Altay, Alan Myrvold, Alex Amato, Alexey Romanenko, Andrew Pilloud, Ankur Goenka, Boyuan Zhang, Brian Hulette, Chad Dombrova, Chamikara Jayalath, Curtis “Fjord” Hawthorne, Damon Douglas, dandy10, Daniel Oliveira, David Cavazos, dennis, Derrick Qin, dpcollins-google, Dylan Hercher, emily, Esun Kim, Gleb Kanterov, Heejong Lee, Ismaël Mejía, Jan Lukavský, Jean-Baptiste Onofré, Jing, Jozef Vilcek, Justin White, Kamil Wasilewski, Kenneth Knowles, kileys, Kyle Weaver, lostluck, Luke Cwik, Mark, Maximilian Michels, Milan Cermak, Mohammad Hossein Sekhavat, Nelson Osacky, Neville Li, Ning Kang, pabloem, Pablo Estrada, pawelpasterz, Pawel Pasterz, Piotr Szuberski, PoojaChandak, purbanow, rarokni, Ravi Magham, Reuben van Ammers, Reuven Lax, Reza Rokni, Robert Bradshaw, Robert Burke, Romain Manni-Bucau, Rui Wang, rworley-monster, Sam Rohde, Sam Whittle, shollyman, Simone Primarosa, Siyuan Chen, Steve Niemitz, Steven van Rossum, sychen, Teodor Spæren, Tim Clemons, Tim Robertson, Tobiasz Kędzierski, tszerszen, Tudor Marian, tvalentyn, Tyson Hamilton, Udi Meiri, Vasu Gupta, xasm83, Yichi Zhang, yichuan66, Yifan Mai, yoshiki.obata, Yueyang Qiu, yukihira1992