Pegasus, a Workflow Management System for Science Automation

Future Generation Computer Systems 46(2015) · 論文 · deelman2015pegasus

📅 この論文を見た日

初回 2026-09-23 / 最終 2026-09-23 / 計 1 回更新

AI解説

実装: Pegasus WMS。https://pegasus.isi.edu/ 情報源: Future Generation Computer Systems 2015 論文本文(自己アーカイブ版 PDF、全21頁)を精読して記述。本文に書かれていない事項は書いていない。

一言で

12年以上にわたり天文学・地震学・バイオインフォマティクス・物理学など幅広い分野の科学者に使われてきたワークフロー管理システム Pegasus の設計・開発・進化を包括的にまとめた論文。資源に依存しない抽象ワークフロー記述を分散計算基盤へマッピングし、データ再利用によるワークフロー簡約複数レベルの障害対応タスククラスタリングによって、キャンパスクラスタから国家サイバーインフラ、商用クラウドまで多様な計算資源にまたがる信頼性の高いワークフロー実行を実現する。

背景・問題

現代の科学はしばしば、仮説として立てられた現象を探索したり、複雑なシステムの振る舞いや相互作用のシミュレーションを通じて基本原理を検証したりするために、膨大な量のデータの処理と解析を必要とする。データは複数のリポジトリに分散し、利用可能な計算資源はキャンパスクラスタから国家サイバーインフラ、クラウドまで異種混在で、結果は遠隔の共同研究者と交換する必要がある。こうした科学分野のニーズと、拡大し続けるサイバーインフラの能力とを橋渡しするワークフロー技術が必要とされてきた。

提案手法

抽象ワークフロー記述(DAX)とコンパイル時の変換

Pegasus のワークフローは、資源に依存しない抽象ワークフロー記述(DAX、Directed Acyclic graph in XML)として与えられる。DAX は計算を行う全タスク、タスク間の実行順序(DAG の辺として表現)、各タスクが必要とする入力・期待される出力・呼び出し引数を記述する。全ての入出力データセットと実行ファイルは論理識別子で参照される。

Mapper(コンパイラに相当するコンポーネント)は、この抽象ワークフローを一連の精錬(refinement)ステップを通じて実行可能ワークフローへ変換する。精錬パイプラインはプラガブルなアーキテクチャを持ち、各ステップに複数のバックエンドや戦略を差し替えられる。

抽象ワークフロー(A→B→D、A→C→E、D・EからF)が、データ移動ジョブ(SI/SO)・ディレクトリ作成・クリーンアップ・クラスタリングを含む実行可能ワークフローへ変換される様子

Figure 8: Translation from Abstract to Executable Workflow。

データ再利用/ワークフロー簡約

Pegasus は virtual data という概念に起源を持つ。そのため、ワークフロー記述を受け取ると、求められているデータが既に計算され利用可能かどうかを確認する。Mapper は Replica Catalog に問い合わせてこれらのファイルの所在を調べ、ファイルが既に存在すれば、そのデータを生成するはずだったジョブをワークフローから取り除く。さらに、あるノードの削除が他の親ノードの連鎖的な削除につながるかどうかも推論できる。これは、ソースコードから実行ファイルをコンパイルするツール “make” に似た仕組みである。ワークフローの出力そのものが既にどこかに存在する場合、Mapper は全ての計算ノードを取り除き、データのステージアウトと登録ノードだけを追加する。データ再利用は任意であり、場合によっては再アクセスするより再計算する方が効率的なこともある。

障害対応 — 複数レベルの信頼性機構

Just-in-time なプランニングを行っていても、分散基盤上での実行では障害が起こりうる。Pegasus は DAGMan と HTCondor の信頼性機能を土台に、複数のレベルで動的に障害へ対処する。

サイト選択とタスククラスタリング

簡約されたワークフローは、Site Selector によってユーザが指定した候補実行サイトへマッピングされる(Random、Round Robin、HEFT などの戦略、外部サイトセレクタのプラグインも可能)。分散計算基盤では通信オーバーヘッドとキューイング時間が問題になりやすいため、Pegasus は数分から数秒で終わる短時間タスクを粗粒度のタスクへまとめるタスククラスタリング技術を持つ。クラスタリングされたタスクが入力データを共有していればデータ転送のコストを減らせ、資源が限られている場合はキューイング時間を節約できる。この技術はワークフロー完了時間を最大97%改善できるとされる。

関連研究との関係(メモ)

Q&A

(自分がAIに実際に質問したことだけをQ/A形式で残す。まだなし。)

自分のコメント

(ここは自分で都度書く欄。)