Skip to main content
QUICK REVIEW

[論文レビュー] PerfXplain: Debugging MapReduce Job Performance

Nodira Khoussainova, Magdalena Bałazińska|arXiv (Cornell University)|Mar 29, 2012
Data Quality and Management参考文献 26被引用数 4
ひとこと要約

PerfXplainは、マップリダスジョブのパフォーマンス差の原因を人間が理解できる形で説明するシステムであり、非専門家ユーザーがマップリダスジョブのパフォーマンスをデバッグするのを支援する。このシステムは実行ログに基づくPXQLクエリ言語と機械学習を用い、高い関連性、正確性、一般化性を持つ説明を生成する。実際のAWS EC2ログを用いた実験では、単純なベースラインを上回る性能を発揮した。

ABSTRACT

While users today have access to many tools that assist in performing large scale data analysis tasks, understanding the performance characteristics of their parallel computations, such as MapReduce jobs, remains difficult. We present PerfXplain, a system that enables users to ask questions about the relative performances (i.e., runtimes) of pairs of MapReduce jobs. PerfXplain provides a new query language for articulating performance queries and an algorithm for generating explanations from a log of past MapReduce job executions. We formally define the notion of an explanation together with three metrics, relevance, precision, and generality, that measure explanation quality. We present the explanation-generation algorithm based on techniques related to decision-tree building. We evaluate the approach on a log of past executions on Amazon EC2, and show that our approach can generate quality explanations, outperforming two naive explanation-generation methods.

研究の動機と目的

  • 非専門家ユーザーがマップリダスジョブのパフォーマンス問題をデバッグする課題に対処すること。
  • ユーザーがジョブまたはタスクのペアについて比較的パフォーマンスに関する質問をできるようにすること。
  • パフォーマンスの異常を高品質で人間が理解できる形の説明を生成すること。
  • 関連性、正確性、一般化性の指標を用いて説明の質を形式的に定式化すること。
  • 最小限のユーザー入力で済む、スケーラブルでログベースの説明生成アルゴリズムを開発すること。

提案手法

  • 比較的パフォーマンスに関する質問を指定するために、独自のクエリ言語であるPerfXplain Query Language (PXQL) を使用する。
  • 各ジョブまたはタスクの実行を、設定とパフォーマンスメトリクスの特徴量ベクトルとして表現する。
  • 決定木の誘導に類似した機械学習手法を用いて、過去の実行ログから説明を抽出する。
  • 説明を2つの述語として生成する:『despite』節(期待される動作の文脈)と『because』節(観察された逸脱の説明)。
  • 関連性(文脈との適合性)、正確性(説明の正確さ)、一般化性(類似ケースへの適用可能性)の3つの指標を用いて、説明の質を最適化する。
  • 過去の実行ログを活用して、期待される動作(ポジティブ例)と予期しない動作(ネガティブ例)のペアを特定し、学習に用いる。

実験結果

リサーチクエスチョン

  • RQ1非専門家ユーザーが専門的なシステム知識なしに、マップリダスジョブの比較的パフォーマンスに関する質問を効果的に立て、回答できるか?
  • RQ2ジョブ実行間のパフォーマンス差に対して、高品質な説明とは何か?
  • RQ3関連性、正確性、一般化性を用いて、説明の質を形式的に測定・最適化できるか?
  • RQ4ログデータから得られる機械学習技術によって、単純なヒューリスティクスを上回る説明を生成できるか?
  • RQ5このアプローチはマップリダスを越えて、他の並列データ処理システムに対しても一般化可能か?

主な発見

  • PerfXplainは、実際のAWS EC2ログを用いた評価において、2つの単純なベースラインよりも関連性、正確性、一般化性に優れた説明を生成した。
  • システムの説明生成アルゴリズムは、パフォーマンスの逸脱に関する文脈的要因(despite節)と根本原因(because節)を効果的に特定した。
  • 特徴量ベクトルの使用により、このアプローチはマップリダスを越えて他の並列処理システムへ一般化可能である。
  • 関連性、正確性、一般化性の形式的指標は、説明の質を評価・改善するための体系的な手法を提供する。
  • 実験の結果、PerfXplainの説明は正確であるだけでなく、非専門家ユーザーにとって意味的で実行可能なものであることが示された。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。