メインコンテンツへジャンプ

Databricksワークフローで反復的なタスクを合理化

タスクループ化で複雑で反復的なワークフローを簡素化
アンソニー・ポドゴルサク
エザナ・タデセ
ガボール・ラトキー
Share this post

Databricksワークフローのタスクループ化にFor Eachを使用したループが一般に利用可能になったことをお知らせします!この新しいタスクタイプは、ランタイムで定義された動的なパラメーターセットをループすることにより、反復的なタスクを自動化することがこれまで以上に簡単になります。これは、Databricksワークフロー強化された制御フロー機能への我々の継続的な投資の一部です。For Eachを使用すると、ワークフローの効率とスケーラビリティを向上させ、複雑なロジックではなく洞察に集中する時間を確保できます。

Databricks Workflows

ループ処理は繰り返しタスクの処理を劇的に改善します

複雑なワークフローの管理は、しばしば複数のデータセットの処理や複数の操作の実行を必要とする反復的なタスクを扱うことを含みます。ループのサポートがないデータオーケストレーションツールは、いくつかの課題を提示します。

複雑なロジックの簡略化

以前は、ユーザーは反復的なタスクを管理するために手動で、保守が難しいロジックに頼ることが多かったです(上記参照)。この回避策は、各操作に対して単一のタスクを作成することをしばしば含み、ワークフローが膨れ上がり、エラーが発生しやすくなります。

For Eachを使用すると、以前に必要だった複雑なロジックが大幅に簡略化されます。ユーザーは、複雑なスクリプトに頼ることなく、ワークフロー内でループを簡単に定義して、作成時間を節約できます。これにより、ワークフローの設定プロセスが合理化されるだけでなく、エラーの可能性も減少し、ワークフローがより保守性と効率性を持つようになります。次の例では、100の異なる国からの販売データが以下の手順で処理され、集計されます:

  1. 販売データの取り込み、
  2. For Eachを使用して全100カ国からのデータを処理
  3. データの集約、および販売モデルの訓練。

複雑なロジックの簡略化

動的パラメーターによる柔軟性の強化

For Eachがなければ、ユーザーはパラメータが頻繁に変更されないシナリオに限定されます。For Eachを使用することで、Databricksワークフローの柔軟性が大幅に向上し、タスク値でランタイムで定義された完全に動的なパラメーターをループする能力が付与され、ハードコーディングの必要性が減少します。下記では、ノートブックタスクのパラメータが動的に定義され、For Eachループに渡されることがわかります(サーバーレスコンピューティング(現在一般提供中)を利用していることにも気づくかもしれません!)。

動的パラメーター

並行処理による効率的な処理

For Eachは真に並行した計算をサポートしており、他の主要なオーケストレーションツールとは一線を画しています。For Eachを使用すると、ユーザーは並行して実行するタスクの数を指定でき、エンドツーエンドの実行時間を短縮して効率を向上させることができます。下に示すように、For Eachループの並行性は10に設定されており、最大100の並行ループをサポートしています。デフォルトでは、並行性は1に設定され、タスクは順次実行されます。

並行処理による効率的な処理

容易にデバッグ

ループサポートがないと、ワークフローのデバッグと監視が難しくなります。タスク数が多いワークフローはデバッグが難しく、稼働時間が減少します。

For Each内での修復のサポートにより、デバッグと監視が大幅にスムーズになります。一つまたは複数の反復が失敗した場合、失敗した反復だけが再実行され、ループ全体は再実行されません。これにより、計算コストと時間が節約され、効率的なワークフローの維持が容易になります。ワークフローの実行状況をより詳しく見ることで、トラブルシューティングが迅速に行え、ダウンタイムが減少し、結果的に生産性が向上し、タイムリーな洞察が得られます。以下に、上記の例の最終出力を示します。

容易にデバッグ

これらの強化は、Data Intelligence Platform上でのオーケストレーションのためにDatabricksワークフローが提供する広範な機能セットをさらに拡大し、ユーザーエクスペリエンスを大幅に改善し、顧客のワークフローをより効率的で柔軟で管理しやすくします。

無料トライアル

For Eachを使用してワークフローを効率化し、データ操作を強化する方法を見るのがとても楽しみです!

Databricks Workflows UIでの異なるタスクタイプとその設定方法について詳しく知るためには、製品のドキュメントをご覧ください。

Databricks 無料トライアル

関連記事

Databricksワークフローの最新アップデート

Databricksワークフロー はDatabricksデータインテリジェンスプラットフォームの土台であり、世界中の数千の組織の重要なデータとAIのワークロードを動かす オーケストレーションエンジン として機能します。これを認識して、Databricksは現代のデータエンジニアリングとAIプロジェクトの進化するニーズを満たすために、ワークフローの進化に投資を続けています。 この夏、私たちはこれまでで最大の Data + AI Summit を開催し、Databricksワークフローにいくつかの画期的な機能と強化を発表しました。Data + AI Summitで発表された最近のアップデートには、新たなデータ駆動型トリガー、AI支援のワークフロー作成、強化されたSQL統合などが含まれており、これらはすべて信頼性、スケーラビリティ、使いやすさの向上を目指しています。また、自動管理のためのIaC(インフラストラクチャ・アズ・コード)ツールであるPyDABsやTerraform、そしてワークフローのサーバーレスコンピューテ

ノートブック、ワークフロー、Delta Live Tables 用のサーバーレス コンピューティングの一般提供開始のお知らせ

Translation Reviewed by Hiroyuki Nakazato ノートブック、ジョブ、Delta Live Tables(DLT)のサーバーレスコンピューティングが AWS および Azure で一般提供開始となりましたので、お知らせいたします。お客様は Databricks SQL および Databricks モデル サービング 用の高速でシンプル、かつ信頼性の高いサーバーレス コンピューティングをすでに利用しています。 同じ機能が、Apache Spark や...

Databricks LakeFlowの登場: データエンジニアリングのための統一されたインテリジェントソリューション

Translation Review by saki.kitaoka 本日、私たちはDatabricks LakeFlowを発表します。これは、プロダクションデータパイプラインを構築および運用するために必要なすべてを含む新しいソリューションです。MySQL、Postgres、SQL Server、Oracleなどのデータベースや、Salesforce、Microsoft Dynamics、NetSuite、Workday、ServiceNow、Google Analyticsなどの企業アプリケーション向けの新しいネイティブで高スケーラビリティのコネクタが含まれています。ユーザーは標準SQLおよびPythonを使用して、バッチおよびストリーミングでデータを変換できます。 さらに、Apache Spark向けのリアルタイムモードを発表し、従来のマイクロバッチよりもはるかに高速なレイテンシでストリーム処理が可能になります。最後に、CI/CDを使用してワークフローをオーケストレーションおよびモニタリングし、本番環境にデプ
プラットフォームブログ一覧へ