コンテンツに移動
データ分析

Dataflow の新しいパイプライン検証機能でデベロッパーの生産性を向上

2024年6月12日
Ning Kang

Software Engineer, Google

Efesa Origbo

Product Manager, Google

Gemini 1.5 モデル をお試しください。

Vertex AI からアクセスできる、Google のもっとも先進的なマルチモーダル モデルです。

試す

※この投稿は米国時間 2024 年 6 月 6 日に、Google Cloud blog に投稿されたものの抄訳です。

データ エンジニアの間では、患者のモニタリング、不正の防止、リアルタイムの在庫管理など、さまざまな分析および ML のユースケースに対応するバッチジョブやストリーミング ジョブの開発に Dataflow が広く使用されています。データ エンジニアは、Dataflow の使いやすさ、オブザーバビリティ機能、大規模なスケールを高く評価しています。また、データ エンジニアはデータ パイプライン内で生じる問題のトラブルシューティングと修正に費やす時間を減らしていく必要もあります。このようなニーズは、データ量が急増し、生成 AI が台頭している状況では、いっそう重要になります。

Dataflow を使用してバッチジョブやストリーミング ジョブを構築するデータ エンジニアは、いくつかの課題に直面することがあります。こうした課題の例として次のようなものがあります。

  1. Apache Beam コードのユーザーエラーは、ジョブがすでに実行されていても失敗するまで検出されないことがあり、エンジニアリング時間とクラウド リソースが無駄になる。

  2. ジョブが失敗して最初にハイライト表示された一連のエラーを修正しても、今後うまくいくことが保証されない。以降、同じジョブを送信すると失敗して新しいエラーがハイライト表示され、ジョブを正常に実行するために修正しなくてはならない可能性がある。

こうした課題を解決するために、Dataflow のパイプライン検証機能の一般提供を開始しました。

バッチジョブやストリーミング ジョブを送信すると、Dataflow のパイプライン検証によって多数のチェックが行われ、ジョブがエラーなしで正常に実行されることを確認できます。検証が完了すると、特定されたエラーのリストと推奨される修正が一括表示されるので、Apache Beam コードのエラーを繰り返し修正するためにこれまで費やしていた時間が削減されます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/image1_wnP76fJ.max-1500x1500.png

初期の成果

この機能をリリースして以来、パイプライン検証によってさまざまなジョブの問題を特定し、トラブルシューティングに費やす時間を削減できるようになっています。これらの問題の大部分は、Dataflow ジョブの実行に必要な Identity and Access ManagementIAM)権限が不足していることが原因です。2 番目に多い問題は、Pub/Sub トピックとサブスクリプションが不足していることです。これには、タイプミスや、誤って削除されたトピックとサブスクリプションが含まれます。

https://storage.googleapis.com/gweb-cloudblog-publish/images/image2_fbeB1PF.max-1200x1200.png

使ってみる

パイプライン検証は、デフォルトですべての Dataflow バッチジョブとストリーミング ジョブで有効になっています。この機能を無効にするには、enable_preflight_validation サービス オプション false に設定します。また、既存のストリーミング パイプラインを更新する際は、graph_validate_only サービス オプションを使用して、新しいジョブグラフの検証チェックをトリガーできます。パイプライン検証の詳細については、ドキュメントをご覧ください。

- Google、ソフトウェア エンジニア Ning Kang
-
Google、プロダクト マネージャー Efesa Origbo
投稿先