Skip to main content
QUICK REVIEW

[論文レビュー] A Scheduling Algorithm to Maximize Storm Throughput in Heterogeneous Cluster

Hamid Reza Nasiri, Saeed Nasehi|arXiv (Cornell University)|Jan 28, 2020
Cloud Computing and Resource Management参考文献 18被引用数 5
ひとこと要約

この論文では、Apache Storm向けに非均質性に配慮したスケジューリングアルゴリズムを提案している。このアルゴリズムは、ストリーム処理トポロジー内の各コンponentの最適なインスタンス数を動的に決定し、計算能力に基づいて適切なクラスターノードにマッピングする。CPU利用率予測モデルと反復的トポロジー拡張を用いることで、Stormのデフォルトスケジューラに比べて7–44%高いスループットを達成するとともに、92%の予測精度を維持し、最適性能の4%以内に収まる。

ABSTRACT

In the most popular distributed stream processing frameworks (DSPFs), programs are modeled as a directed acyclic graph. This model allows a DSPF to benefit from the parallelism power of distributed clusters. However, choosing the proper number of vertices for each operator and finding an appropriate mapping between these vertices and processing resources have a determinative effect on overall throughput and resource utilization; while the simplicity of current DSPFs' schedulers leads these frameworks to perform poorly on large-scale clusters. In this paper, we present the design and implementation of a heterogeneity-aware scheduling algorithm that finds the proper number of the vertices of an application graph and maps them to the most suitable cluster node. We start to scale up the application graph over a given cluster gradually, by increasing the topology input rate and taking new instances from bottlenecked vertices. Our experimental results on Storm Micro-Benchmark show that 1) the prediction model estimate CPU utilization with 92% accuracy. 2) Compared to default scheduler of Storm, our scheduler provides 7% to 44% throughput enhancement. 3) The proposed method can find the solution within 4% (worst case) of the optimal scheduler which obtains the best scheduling scenario using an exhaustive search on problem design space.

研究の動機と目的

  • ノードの非均質性を無視するため、Stormのデフォルトのラウンドロビンスケジューラが非均質クラスタで性能が著しく劣ることを是正すること。
  • 大規模かつ非均質なストリーム処理環境において、アプリケーションのスループットとリソース利用効率を最大化すること。
  • 各コンponentごとの最適なインスタンス数を決定し、クラスターノードに効率的にマッピングするスケジューリングアルゴリズムを開発すること。
  • マシンの能力に基づくCPU利用率予測モデルを用いて、どのノードの過剰利用も回避すること。
  • 最適スケジューリングを求めるための総当り探索の代替として、スケーラブルで効率的な手法を提供し、低オーバーヘッドでほぼ最適な結果を得ること。

提案手法

  • アルゴリズムはベースライントポロジーから出発し、入力レートを段階的に増加させ、ボトルネックとなった頂点に新しいインスタンスを追加することで段階的にスケーリングを実行する。
  • プロファイリングデータに基づき、異なるマシン上で各タスクのCPU利用率を推定する非均質性に配慮した予測モデルを用いる。
  • 処理能力を考慮して、クラスターノードにインスタンスを動的に割り当てることで、負荷をバランスさせ、過剰割り当てを回避する。
  • ボトルネックを特定・解消する反復的でレートベースのスケーリング戦略を採用する。
  • ソースコードを拡張して非均質性に配慮したタスク割り当てをサポートするように変更した、修正版Stormスケジューラとして実装する。
  • 性能ギャップを評価するために、最適スケジューラ(総当り探索ベース)との比較を実施する。

実験結果

リサーチクエスチョン

  • RQ1ストリーム処理スケジューラは、非均質クラスタリソースを効果的に活用することで、Stormでスループットを最大限に高められるか?
  • RQ2Stormのデフォルトスケジューラがノードの非均質性を無視することで、スループットとリソース利用効率にどのような影響を与えるか?
  • RQ3異なるマシンタイプにおいて、ストリーミングワークロードのCPU利用率を予測モデルが正確に推定できるか?
  • RQ4ヒューリスティックスケジューリングアルゴリズムは、スループットとリソースバランスの観点から、最適解にどの程度近づけるか?
  • RQ5非均質なストリーム処理環境において、スケジューリングの複雑さと性能向上のトレードオフは何か?

主な発見

  • 提案されたスケジューラは、さまざまなトポロジーにおいて、Stormのデフォルトのラウンドロビンスケジューラに比べて7%から44%高いスループットを達成した。
  • CPU利用率予測モデルは、実際の利用率を92%の精度で推定でき、信頼性の高い負荷推定を可能にした。
  • 設計空間全体を総当り探索した最適スケジューラとの比較により、アルゴリズムの性能は最適解から4%以内に収まった。
  • マシン固有のプロファイリングデータを活用することで、クラスタ内のいかなるノードの過剰利用も効果的に防止した。
  • クラスタの非均質性と入力レートの増加に伴っても、スケーラブルに動作し、高いスループットとバランスの取れたリソース使用を維持した。
  • 非均質性を明示的にモデル化し、均一リソースを仮定する既存のソリューション(例:R-Storm や D-Storm)よりも優れた性能を発揮した。

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

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

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

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