Skip to main content
QUICK REVIEW

[論文レビュー] Auto-tuning Distributed Stream Processing Systems using Reinforcement Learning

Luis M. Vaquero, Félix Cuadrado|arXiv (Cornell University)|Sep 14, 2018
Data Stream Mining Techniques参考文献 40被引用数 14
ひとこと要約

本論文は、強化学習(RL)を用いた自動チューニングシステムを提案し、分散ストリーム処理ワークロードの最適な設定の選定(例:メモリ、バッチサイズなど)を、教師あり学習とRL技術を用いて自動的に行う。本システムは、履歴ワークロードから学習し、動的変化に適応することで、最小限の人的介入で数分のうちに人間によるチューニングより60–70%低い遅延を達成する。

ABSTRACT

Fine tuning distributed systems is considered to be a craftsmanship, relying on intuition and experience. This becomes even more challenging when the systems need to react in near real time, as streaming engines have to do to maintain pre-agreed service quality metrics. In this article, we present an automated approach that builds on a combination of supervised and reinforcement learning methods to recommend the most appropriate lever configurations based on previous load. With this, streaming engines can be automatically tuned without requiring a human to determine the right way and proper time to deploy them. This opens the door to new configurations that are not being applied today since the complexity of managing these systems has surpassed the abilities of human experts. We show how reinforcement learning systems can find substantially better configurations in less time than their human counterparts and adapt to changing workloads.

研究の動機と目的

  • 膨大な設定空間と動的変化するワークロードのため、手動による分散ストリーム処理システムのチューニングが時間と手間を要し、誤りの原因となるという課題に対処すること。
  • Spark Streamingのようなストリーミングエンジンの最適な設定の選定(例:メモリ、バッチサイズなど)を自動化し、厳格なサービスレベル目標(SLO)を満たすこと。
  • ワークロードのパターンやパフォーマンス指標から学習するデータ駆動型で適応可能なシステムに置き換えることで、熟練知識への依存を減らすこと。
  • クラスタ再起動や人的再設定を必要とせず、ワークロードの変化にリアルタイムで適応し、低遅延を維持できること。
  • RLが高次元の設定空間を効果的に探索し、人間の専門家よりも速やかに優れた設定を発見できることを示すこと。

提案手法

  • ポisson分布に従うイベント到着や台形パターンの負荷を含む、多様な合成的および実世界のワークロード下で、数万ものSpark Streamingクラスタから訓練データを収集する。
  • 教師あり学習を用いて、設定の選定に最も関連するパフォーマンス指標(例:処理遅延)とその設定の選択との相関関係を特定する。
  • 特徴選択と指標-設定の関連付け技術を適用し、次元削減を図り、影響力の高い設定パrameterに焦点を当てる。
  • 連続的な設定パrameter(例:メモリサイズ、バッチインターバル)を、RLの入力として利用可能な有限の値の集合に離散化する。
  • 観測されたパフォーマンスに基づき、探索と活用のバランス(ハイパーパrameter fを介して)を取る強化学習エージェントを採用し、設定変更の推奨を行う。
  • 期待されるパフォーマンスを推定し、RLポリシーをガイドするために、ガウス過程モデル(GPMs)をサーヴィレートモデルとして用い、長期的リターンを推定する価値ネットワークを活用する。

実験結果

リサーチクエスチョン

  • RQ1強化学習は、分散ストリーム処理システムの高次元設定空間を効果的に探索し、人間の設定を上回る設定を発見できるか?
  • RQ2人間の専門家による手動チューニングと比較して、RLベースのシステムはどの程度速く優れた設定に収束できるか?
  • RQ3変化するワークロードに適応しながら、低処理遅延を維持できるか、その程度はどの程度か?
  • RQ4ストリーミングワークロードにおける遅延SLO準拠を予測する上で、どのパフォーマンス指標と設定の選択が最も予測的か?
  • RQ5設定変更時にクラスタ再起動の必要を減らすことは可能か?その代替策は何か?

主な発見

  • RLベースの自動チューニングシステムは、人間エンジニアが選択した設定よりも処理遅延を60–70%も低減し、SLO準拠が著しく向上した。
  • システムは最適な設定に数分で収束し、手動手法と比較してチューニングに要する時間を大幅に短縮した。
  • システムは、ドライバメモリやバッチサイズといった高影響力の設定の選択を的確に特定・調整し、初期のトレーニングエピソードからも顕著なパフォーマンス向上を達成した。
  • 関連する指標と設定の選択に焦点を当てることで、設定空間の次元削減を効果的に行い、高次元環境下でもRLの実行可能性を高めた。
  • 変化するワークロードに強く適応でき、人的再設定を一切行わずとも低遅延を維持した。
  • ガウス過程モデルと価値ネットワークの活用により、設定空間の複雑さを考慮しても、安定的かつスケーラブルな学習が可能になった。

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

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

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

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