AIおよびビデオ処理ワークロードのためのオンオフスケーリングパターン
AIを活用したビデオ処理プラットフォームは、オフピーク時のジョブはゼロから、ピーク時には数百の並行ビデオ処理およびAI推論タスクまで、非常に変動の大きいワークロードを処理する必要がありましたが、アイドル状態のGPUおよびコンピューティングリソースに対する費用を支払うことなくこれを実現しました。
プロジェクトを相談する
課題
AIおよびビデオ処理ワークロードは、本質的にバースト性があり、高価です。
- GPUインスタンスは、ジョブを処理しているかアイドル状態であるかにかかわらず高価です
- ビデオエンコーディング、文字起こし、AI推論はそれぞれ異なるリソースプロファイルを要求します
- ピーク・トゥ・トラフ比率は50:1でした — ピーク時には200以上のジョブ、夜間はほぼゼロ
- 時間制約のあるユーザーリクエストには、従来のオートスケーリングは遅すぎました(5~10分のコールドスタート)
- ピーク向けにプロビジョニングされた固定インフラは、オフピーク時には80%以上の無駄を意味しました
私たちのソリューション
当社はオンオフスケーリングパターンを実装しました — アクティブなワークロードに対してジャストインタイムでコンピューティングリソースをプロビジョニングし、アイドル時には完全に解放するハイブリッドアーキテクチャで、レイテンシの影響を受けやすいタスクにはウォームプールを、バッチジョブにはコールドプールを使用します。
アーキテクチャ
- Job Queue: 優先度分類機能を備えたデータベースバックのJob Queue
- Orchestrator: リソースのライフサイクルとジョブのルーティングを管理するサービス
- GPU Workers (AI): 推論(物体検出、文字起こし、話者検出)用のCloud GPU Pods
- CPU Workers (Video): ビデオエンコーディングおよびレンダリング用のCloud VM
- Warm Pool: レイテンシの影響を受けやすいジョブ(起動30秒未満)用の事前初期化済みインスタンス
- Cold Pool: バッチ/一括処理用のオンデマンドインスタンス(起動2~5分許容)
オンオフパターンの実装
リソースのライフサイクル状態
リソースは定義されたライフサイクルを辿ります。完全に解放された状態(コストゼロ)から、プロビジョニングとウォーミング(モデルロード、ヘルスチェック)を経て、準備完了および処理中状態へ移行し、その後、クールダウン期間を経て再び解放状態に戻ります。
Warm Pool戦略
レイテンシの影響を受けやすい処理(ユーザーが開始し、数分以内に結果を期待する):
- 営業時間中に最小限のWarm Poolインスタンスを維持する
- コンテナ起動時にAIモデルをプリロードする
- 受信ジョブをまずウォームインスタンスにルーティングする
- Queue深度がしきい値を超過した場合に、追加のウォームインスタンスをスケールアウトする
- 設定可能なクールダウンタイマーにより、散発的なジョブ間でインスタンスをアクティブに保つ
Cold Pool戦略
バッチ処理(夜間の一括ジョブ、緊急性の低い再エンコード)の場合:
- デフォルトではゼロインスタンスで実行
- バッチジョブが送信されるとJob Queueがプロビジョニングをトリガー
- レイテンシよりもスループットに最適化された一括処理用インスタンス
- バッチ完了後すぐに終了
- 大幅なコスト削減のためにspot/preemptibleインスタンスを使用
ジョブの分類とルーティング
ジョブは優先度と種類によって自動的に分類され、適切なプールにルーティングされます。
- 高優先度のユーザー開始AIタスクはWarm GPU Poolにルーティングされます
- クリティカルなリアルタイムタスクは常時稼働の専用インスタンスにルーティングされます
- 中優先度のエンコードタスクはWarmまたはCold CPU Poolにルーティングされます
- 低優先度のバッチタスクはCold spot/preemptibleインスタンスにルーティングされます
Orchestratorロジック
スケールアップトリガー
- Queue深度が設定可能な閾値を超過
- 平均待機時間が優先度レベルのSLAを超過
- 既知のピーク時間前のスケジュールされたランプアップ
- 予想されるトラフィックスパイクに対するAdmin API経由の手動トリガー
スケールダウントリガー
- クールダウン期間中に処理されたジョブがない
- ピーク時間後のスケジュールされた縮小
- すべてのキューイングされたジョブが完了し、新たな送信がない
- 請求期間のコスト閾値に到達
ヘルスとリカバリ
- すべてのアクティブインスタンスに対する定期的なヘルスプローブ
- 異常なインスタンスは自動的に交換
- 失敗したジョブはリトライ回数とともに再キューイングされ、別のインスタンスにルーティング
- 最大リトライ回数を超過したジョブのためのdead letter queue
コストへの影響
オンオフパターンは、オフピーク時のアイドル状態のコンピューティングを排除し、ジョブタイプごとにリソースを最適化し、バッチワークロードにspotインスタンスを活用することで、常時稼働の固定インフラと比較して約70%のコスト削減を実現しました。
主な機能
- アイドルコストゼロ — ジョブ処理中でないときはリソースを完全に解放
- Warm Pools — レイテンシの影響を受けやすいワークロード用の事前初期化済みインスタンス
- Cold Pools — 最低コストでバッチジョブ用のオンデマンドプロビジョニング
- ジョブ分類 — 優先度、タイプ、レイテンシ要件に基づく自動ルーティング
- クールダウン期間 — 設定可能なアイドルタイムアウトにより、バースト間の早すぎるスケールダウンを防止
- Spot/Preemptible対応 — 大幅な節約のために割引インスタンスにルーティングされるバッチジョブ
- ヘルスとリカバリ — 異常なインスタンスの自動交換とジョブの再キューイング
- スケジュールされたスケーリング — 時間ベースのプロビジョニングルールで既知のトラフィックパターンを予測
成果
技術スタック
caseStudyDetail.more ケーススタディ
その他の技術実装事例をご覧ください
スケーラブルで費用対効果の高いAI推論のためのRunPod活用
AIを活用したビデオ分析プラットフォームは、複数の同時ビデオストリームにわたるリアルタイムの物体検出と推論のために、高性能なGPUコンピューティングを必要としていました。しかし、24時間年中無休で稼働する専用GPUサーバーの法外なコストは避けたいと考えていました。
Kickly: AIを活用したスタートアップ向けプロジェクトプラットフォーム
Kicklyは、AIを活用したスタートアップ向けプロジェクト管理プラットフォームです。スマートなタスク自動化、チームコラボレーション、リアルタイムの進捗追跡を一つの製品に統合しています。
よくある質問
MicrocosmWorks は、GPU集約型処理の予測可能なバーストが発生し、その後に長いアイドル期間が続くワークロード向けに、on-off スケーリングパターンを開発しました。従来のオートスケーリングでは、アイドル期間中に最小限のキャパシティを維持するためにコストが無駄になるからです。ウォームインスタンスを稼働させ続ける代わりに、このパターンは、処理ジョブが到着した際にオンデマンドでGPUインフラストラクチャをプロビジョニングし、ワークロードを実行し、完了するとインフラストラクチャを完全に終了させ、アイドル期間中のコストをほぼゼロに抑えます。
MicrocosmWorksは、すべてのAIモデルの重みと依存関係を組み込んだ最適化されたコンテナイメージを事前に構築し、それらをコンピュートリージョンに地理的に近いレジストリに保存することで、コールドスタート時間を60秒未満に短縮しました。オーケストレーションレイヤーは、スケジューリングされたワークロードに対して予測プロビジョニングを使用し、予期される需要の2〜3分前にインフラストラクチャを起動します。また、予測不可能なワークロードの場合、システムはジョブをキューに入れ、処理開始通知を送信するため、ユーザーは自分のリクエストが処理されていることを知ることができます。
MicrocosmWorksは、AIビデオ処理ワークロードが1日あたり2〜6時間実行されるクライアントに対し、24/7でGPUインスタンスを維持する場合と比較して、70〜90%のコスト削減を文書化しました。この節約は、実際の処理時間と、起動および終了にかかる数分間のオーバーヘッドのみを支払うことによって実現されます。このパターンは、夜間バッチビデオ処理、オンデマンドトランスコーディング、または利用率が本質的に断続的であるイベントトリガー型AI分析のようなワークフローに特に効果的です。
はい、MicrocosmWorksは、大規模なbatch jobsが到着した際に複数のGPU workersを並行してプロビジョニングし、job queueを使用してworkers間でビデオファイルを分散させ、batchの完了後にはすべてのworkersを停止するfan-out architectureをon-off pattern内に実装しました。このシステムは、ビデオごとの進捗を追跡し、batchの残りの処理をブロックすることなく、個々のビデオの失敗をretry logicで処理し、結果を単一の出力場所に統合してダウンストリームでの利用に供します。
MicrocosmWorksは、開発レートが1時間あたり25ドルから45ドルでオンオフスケーリングアーキテクチャを実装します。ジョブオーケストレーション、インフラプロビジョニング、監視、障害処理を含む本番環境対応の実装は、通常3〜5週間で提供されます。この開発投資は、特に現在1日の50%以上アイドル状態になっている常時稼働のGPUインスタンスを実行している組織にとって、GPUコストの削減だけでも通常1〜2ヶ月以内に回収できます。