DVAトラブルシューティングと最適化

あるCPUバウンドなLambda関数のコストとパフォーマンスを最適化したいと考えています。メモリ設定が低すぎると実行時間が延び、高すぎると単価が上がります。複数のメモリ設定で関数を実際に実行し、コストと実行時間のトレードオフを可視化して最適なメモリ値を決定する最も適切な方法はどれですか。

A
AWS Lambda Power Tuningツール(Step Functionsステートマシン)を使い、複数メモリ構成で実行して結果を比較する
✓ 正解
AWS Lambda Power Tuningは関数を複数のメモリ設定で実際に実行し、実行時間とコストの関係をグラフ化して最適なメモリ値を提示するStep Functionsベースのツール。トレードオフを可視化して決定するという要件にそのまま合致する。
B
メモリを最大の10240MBに設定し、常に最速の構成で実行する
メモリを最大にすると実行時間は短縮されることがあるが単価が上がり、CPUバウンドでも最速がコスト最適とは限らない。トレードオフを検証せずに最適値を決めることはできない。
C
プロビジョニングされた同時実行を有効にして実行時間のばらつきを抑える
プロビジョニング済み同時実行はコールドスタート対策であり、メモリ設定ごとのコストと実行時間のトレードオフを評価する機能ではない。最適なメモリ値の決定には役立たない。
D
CloudWatch Logs Insightsで過去のREPORT行を集計し、現在のメモリ設定のみの統計を見る
Logs Insightsで現在のメモリ設定のREPORT行を集計しても、他のメモリ構成での実行結果は得られない。複数構成を比較して最適値を決定するという要件を満たさない。

解説

AWS Lambda Power Tuningは、関数を複数のメモリ設定で実際に実行し、実行時間とコストの関係をグラフ化して最適なメモリ値を提示するStep Functionsベースのオープンソースツールである。 メモリに比例してCPUも割り当てられるLambdaにおいて、トレードオフを実測データで可視化できるため要件に合致する。 選択肢Bは最速がコスト最適とは限らない。 選択肢Cはメモリ最適化ではない。 選択肢Dは複数構成を比較できない。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDVAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
DVA の問題一覧に戻る