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 および BEAM-4777 - ポータブル ランナーにメトリクス サポートを追加しました。
  • Interactive Beam のさまざまな改善点: BEAM-7760, BEAM-8379, BEAM-8016, BEAM-8016
  • BEAM-8658 - FlinkUberJarJobServer でアーティファクトのステージング ポートをオプションで設定します。
  • BEAM-8660 - 返されたアーティファクトのステージング エンドポイントをオーバーライド

SQL

  • BEAM-8343 - [SQL] SQL パイプラインの実行時に、IO API が述語および/またはプロジェクトのプッシュダウンをサポートする手段を追加します。および BEAM-8468, BEAM-8365, BEAM-8508
  • BEAM-8427 - [SQL] MongoDB ソースのサポートを追加します。
  • BEAM-8456 - Beam SQL で処理される BigQuery データの切り捨てを制御するためのパイプライン オプションを追加します。

破壊的な変更

  • BEAM-8814 - –no_auth フラグをブール型に変更しました。

非推奨

  • BEAM-8252 および 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 関数ラッパーが Iterable 出力型をサポートしていません。
  • 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 - データドリブン トリガーに対するコンバイナー リフティングを実行していません。
  • BEAM-8663 - BundleBasedRunner のスタックされたバンドルが PaneInfo を尊重しません。
  • BEAM-8667 - データチャネルは Python SDK での無制限バッファリングを回避する必要があります。
  • BEAM-8802 - ストリーミング モードでバンドル間でタイムスタンプ コンバイナーが尊重されません。
  • BEAM-8803 - Python BQ ストリーミング挿入シンクのデフォルトの動作は常に再試行である必要があります。
  • BEAM-8825 - 大量の「狭い」行を書き込む際の OOM。
  • BEAM-8835 - FlinkUberJarJobServer でのアーティファクトの取得が失敗します
  • 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 - ParquetIO のファイルに .parquet 拡張子を追加します。
  • さまざまなバグ修正とパフォーマンスの改善。

既知の問題

  • BEAM-8882 - Python: beam.Create は、reshuffle=False が引数として渡されない限り、順序を保持しなくなりました。

    DirectRunner を使用する場合、この問題が発生する可能性があります。

  • BEAM-9065 - Spark ランナーが実行間でメトリクスを (誤って) 累積します

  • BEAM-9123 - HadoopResourceId が間違ったディレクトリ名を返します

  • このバージョンに影響する未解決の問題をすべて見る

  • BEAM-9144 - Beam で Avro 1.9.x を使用している場合は、このバージョンにアップグレードしないでください。タイムスタンプ変換に問題があります。修正は次のリリースで利用可能になる予定です。

貢献者のリスト

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, 康智冬