Apache Beam 2.38.0

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

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

I/O

  • Java SDKにプロジェクションプッシュダウンオプティマイザーを導入しました(BEAM-12976)。このオプティマイザーは現在、BigQuery Storage APIでのみ機能しますが、将来のリリースでさらに多くのI/Oが追加される予定です。オプティマイザーでバグが発生した場合は、JIRAを提出し、パイプラインオプション--experiments=disable_projection_pushdownを使用してオプティマイザーを無効にしてください。
  • Neo4jグラフデータベース用の新しいIOが追加されました。(BEAM-1857)UNWINDステートメントを使用してノードとリレーションシップを更新したり、パラメーター付きのcypherステートメントを使用してデータを読み取ったりする機能があります。
  • amazon-web-services2が機能パリティに達し、以前のamazon-web-servicesおよびkinesisモジュール(Java)よりも推奨されるようになりました。これらは、次のリリースのいずれかで非推奨になる予定です(BEAM-13174)。

新機能/改善点

  • --requirements_fileを介して提供されるパイプラインの依存関係は、linux_x86_64プラットフォームのPyPIパッケージのバイナリディストリビューション(wheels)を使用してランナーにステージングされるようになりました(BEAM-4032)。ソースディストリビューションを使用する動作を復元するには、パイプラインオプション--requirements_cache_only_sourcesを設定します。パッケージの送信時のステージングをスキップするには、パイプラインオプション--requirements_cache=skipを設定します(Python)。
  • FlinkランナーがFlink 1.14.xをサポートするようになりました(BEAM-13106)。
  • Interactive Beamが、DataprocでFlinkパイプラインをリモートで実行できるようになりました(Python)(BEAM-14071)。

破壊的な変更

  • (Python)以前は、DoFn.infer_output_typesは、element_typeがPCollectionの要素型であるIterable[element_type]を返すことが期待されていました。現在は、element_typeを返すことが期待されています。DoFninfer_output_typeをオーバーライドしている場合は注意してください(これは一般的ではありません)。BEAM-13860を参照してください。
  • amazon-web-services2AwsOptionsawsRegion / endpointの型がStringからRegion / URIに変更されました(BEAM-13563)。

非推奨

  • Beam 2.38.0は、Flink 1.11をサポートする最後のマイナーリリースになります。
  • amazon-web-services2)クライアントプロバイダー(withXYZClientProvider())とIO固有のRetryConfigurationは非推奨となり、代わりにwithClientConfiguration()またはAwsOptionsを使用してAWS IO /クライアントを構成してください。クライアントプロバイダーのカスタム実装は、それぞれのClientBuilderFactoryに置き換え、AwsOptionsを介して構成する必要があります(BEAM-13563)。

バグ修正

  • 大きなオブジェクトのS3コピーを修正しました(Java)(BEAM-14011
  • パイプラインの正規化の二次的な動作を修正しました(Go)(BEAM-14128
    • これにより、大規模で複雑なパイプラインのジョブ送信前の前処理時間が不必要に長くなっていました。
  • pyarrowのバージョン解析を修正しました(Python)(BEAM-14235

既知の問題

貢献者リスト

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

abhijeet-lele Ahmet Altay akustov Alexander Alexander Zhuravlev Alexey Romanenko AlikRodriguez Anand Inguva andoni-guzman andreukus Andy Ye Ankur Goenka ansh0l Artur Khanin Aydar Farrakhov Aydar Zainutdinov Benjamin Gonzalez Brian Hulette brucearctor bulat safiullin bullet03 Carl Mastrangelo Chamikara Jayalath Chun Yang Daniela Martín Daniel Oliveira Danny McCormick daria.malkova David Cavazos David Huntsperger dmitryor Dmytro Sadovnychyi dpcollins-google egalpin Elias Segundo Antonio emily Etienne Chauchot Hengfeng Li Ismaël Mejía Israel Herraiz Jack McCluskey Jakub Kukul Janek Bevendorff Jeff Klukas Johan Sternby Kamil Breguła Kenneth Knowles Ke Wu Kiley Kyle Weaver laraschmidt Lara Schmidt LE QUELLEC Olivier Luka Kalinovcic Luke Cwik Marcin Kuthan masahitojp Masato Nakamura Matt Casters Melissa Pashniak Michael Li Miguel Hernandez Moritz Mack mosche nancyxu123 Nathan J Mehl Niel Markwick Ning Kang Pablo Estrada paul-tlh Pavel Avilov Rahul Iyer Reuven Lax Ritesh Ghorse Robert Bradshaw Robert Burke Ryan Skraba Ryan Thompson Sam Whittle Seth Vargo sp029619 Steven Niemitz Thiago Nunes Udi Meiri Valentyn Tymofieiev Victor vitaly.terentyev Yichi Zhang Yi Hu yirutang Zachary Houfek Zoe