MLAMLソリューションの監視、メンテナンス、セキュリティ
ある小売企業が、SageMakerリアルタイムエンドポイントで商品レコメンデーションモデルを稼働させています。平常時のリクエスト数は安定していますが、セール期間中には1分あたりのリクエスト数が通常の8〜10倍に急増します。セール期間以外はインスタンス数を最小限に抑えてコストを削減しながら、ピーク時のレイテンシ増大を防ぎたいと考えています。最も適切なスケーリング設定はどれですか?
AAmazon CloudWatch Alarmsで、エンドポイントのCPU使用率が70%を超えた場合にStep Scalingでインスタンスを追加し、30%を下回った場合に削除するスケーリングポリシーをエンドポイントに設定する
ML推論では GPU やメモリがボトルネックになることが多く、CPU使用率はエンドポイントの負荷を正確に反映しません。SageMakerVariantInvocationsPerInstance のほうがスケーリング指標として適切です。
BAmazon Application Auto Scalingで、SageMakerVariantInvocationsPerInstanceをターゲットにしたTarget Tracking Scalingポリシーを設定し、最小・最大インスタンス数の範囲でスケールを制限する
✓ 正解
Application Auto Scaling と SageMakerVariantInvocationsPerInstance を組み合わせた Target Tracking ポリシーは、SageMaker エンドポイントの推奨スケーリング方法です。リクエスト量に応じて自動でインスタンスを増減させ、コストと性能を最適化できます。
CAWS Lambdaとcronイベントを組み合わせ、セール期間の開始・終了時刻に合わせてUpdateEndpoint APIでインスタンス数を変更するスクリプトを定期実行する(スケジュールはEventBridgeルールで管理)
Lambda と cronイベントによる定時スケーリングは、セール期間が固定されている場合のみ有効です。予期しないトラフィック急増には反応できず、完全な自動化とは言えません。
DAmazon EC2 Auto ScalingのPredictive Scaling機能を使い、過去のトラフィックパターンを機械学習で分析することでセール期間前に事前にインスタンスを増加させるよう設定する
Predictive Scaling は Amazon EC2 Auto Scaling の機能であり、SageMaker エンドポイントには直接適用できません。SageMaker のスケーリングは Application Auto Scaling を通じて設定する必要があります。
解説
SageMaker エンドポイントの自動スケーリングは Amazon Application Auto Scaling を通じて実現します。Target Tracking Scaling ポリシーに SageMakerVariantInvocationsPerInstance メトリクスを設定することで、1インスタンスあたりの呼び出し数が目標値を超えると自動でスケールアウトし、下回るとスケールインします。最小・最大インスタンス数を指定することでコスト上限も管理でき、ピーク時の性能と平常時のコスト効率を自動で両立できます。
選択肢AのStep Scaling(CPU使用率ベース)は、ML推論では GPU やメモリがボトルネックになることが多く、CPU使用率が上がらないままレイテンシが悪化するケースがあるため、SageMaker エンドポイントのスケーリング指標として最適ではありません。
選択肢CのLambdaによる定時スケーリングは、セール期間が厳密に決まっている場合のみ有効で、予期しないトラフィック急増やスケジュール外のキャンペーンには動的に対応できません。
選択肢DのPredictive Scalingは Amazon EC2 Auto Scaling の機能であり、SageMaker エンドポイントには適用できません。
ドメイン別正答率・予想スコアでリアルタイムに実力把握
無限ノックでMLAを徹底対策。全問AI生成のオリジナル問題。
無料で演習を始める →