SAP-C02-102 · セクション 11 / タスク 2.6
Cost要件からArchitectureを選択する
料金モデル / 適正サイジング / ストレージ階層化 / マネージドサービス / データ転送 / 運用コスト / アーキテクチャ選択
ここまで、
コストモデリング
料金モデル
適正サイジング
ストレージ階層化
マネージドサービス
データベースコスト
データ転送
Expenditure / 使用量認識を個別に扱ってきました。
しかし実際のアーキテクチャ選択では、
Savings Plansだけ最適
ストレージだけ最適
ネットワークだけ最適では不十分です。
必要なのは、
ビジネス / 技術要件
↓
複数のアーキテクチャ候補
↓
各候補を個別にコスト最適化
↓
同じ条件で総コストを比較
↓
コスト要件を満たすアーキテクチャを選択という統合判断です。
ゴール
最終的に、
AWS料金が一番安いだけで選ぶのではなく、
料金モデル
適正サイジング
ストレージ階層化
マネージドサービス
データ転送
運用コスト
変更コスト
将来使用量を1つのモデルへまとめ、
要件を満たす候補の中から
最も費用対効果の高いアーキテクチャを選択できることがゴールです。
1. 最初にコスト以外の必須要件で候補を絞る
コスト最適化は、
最安のアーキテクチャを探すことではありません。
まず、
パフォーマンス
可用性
セキュリティ
コンプライアンス
RTO / RPO
データ所在地要件
運用要件などの必須条件を満たす候補だけを残します。
つまり、
要件
↓
アーキテクチャ 候補
↓
コスト比較です。
例えば、
Single-AZが最も安くても、Multi-AZが必須なら比較候補には入りません。
2. 「要件を満たす最低コスト」を探す
アーキテクチャ選択では、
最低コストではなく、
必須要件を満たす範囲での最低コストを考えます。
例えば、
| 候補 | 可用性要件 | 性能要件 | 月額 |
|---|---|---|---|
| A | 不適合 | 適合 | 4,000 USD |
| B | 適合 | 適合 | 5,500 USD |
| C | 適合 | 適合 | 6,300 USD |
この場合、
Aが最安でも、コスト面のアーキテクチャ選択の比較対象は、
B
vs
Cです。
3. 比較条件を揃える
アーキテクチャ候補を比較するときは、
同じビジネス需要
同じ性能目標
同じ可用性要件
同じデータ量
同じトラフィック
同じ比較期間を使用します。
例えば、
候補A
現在の過剰プロビジョニング
vs
候補B
完全に適正サイジング済みでは公平な比較になりません。
各候補を、
合理的に最適化された将来状態へ揃えて比較します。
4. 各候補を個別に最適化してから比較する
候補Aと候補Bについて、
適正サイジング
料金モデル
ストレージ階層化
データ転送 経路
運用モデルをそれぞれ最適化します。
重要なのは、
候補Aには最適化を適用
候補Bには未最適化状態としないことです。
アーキテクチャ比較は、
最適化済み 候補 A
vs
最適化済み 候補 Bで行います。
5. 料金モデルはアーキテクチャの安定部分へ適用する
料金モデル自体の選び方は既習です。
ここでは、既習の料金モデルを、
各アーキテクチャで
将来も残ると見込める使用量へ適用した状態で比較します。
つまり、
候補 A
↓
最適化済み 料金
候補 B
↓
最適化済み 料金としてから総コストへ組み込みます。
6. 適正サイジングはすべての候補へ行う
アーキテクチャ Aが、
EC2中心で、アーキテクチャ Bが、
マネージド / サーバーレス中心だとしても、どちらも必要容量に合わせます。
つまり、
コンピューティング
ストレージ
データベース キャパシティ
スループット
プロビジョンドキャパシティについて、
必要な需要
vs
設定済み キャパシティを揃えます。
適正サイジングされていない候補を比較に残すと、アーキテクチャそのものではなく、
単なる過剰プロビジョニングを比較してしまいます。
7. ストレージ階層化を保存期間とアクセスパターンへ反映する
保存データについては、既習の、
アクセス頻度
取り出し要件
保持期間
オブジェクトサイズを使って、候補ごとに適切なストレージ階層化を適用します。
ここでも、
候補 A
すべて高頻度アクセス用ストレージ
候補 B
ライフサイクル最適化済みという比較はしません。
同じデータ要件なら、
両候補で
合理的なストレージ戦略を使います。
8. データ転送はアーキテクチャによって変わる
同じ処理を実現するアーキテクチャでも、
AZ配置
NAT Gateway経路
VPC Endpoint
CloudFront
リージョン配置によってネットワークコストは変わります。
そのため、
データ量が同じ
=
データ転送コストも同じではありません。
各候補について、
送信元
↓
経路
↓
送信先を作り、既習のデータ転送モデルを反映します。
9. 既習のマネージドサービス コストモデルを候補へ適用する
マネージドサービスとセルフマネージドを、
AWS直接費用
+
残存運用コストで比較する考え方は既習です。
ここでは、この判断を再説明するのではなく、
候補 A
↓
既習の運用コストモデルを適用
候補 B
↓
既習の運用コストモデルを適用した結果を、アーキテクチャ全体の総コストへ組み込みます。
重要なのは、
片方はAWS請求額
もう片方は運用費込みのようにコスト境界を変えないことです。
10. コスト境界をすべての候補で揃える
候補によって、
AWS請求へ直接出るコスト
中央プラットフォームチームが負担するコスト
アプリケーションチームが負担するコスト
マネージドサービス料金の見え方が異なる場合があります。
しかしアーキテクチャ比較では、
どの部署の請求に見えるかではなく、
組織として
そのアーキテクチャを運用するために
何が必要かを同じ境界で比較します。
例えば、
候補 A
AWS請求は低い
中央運用チームの工数が多い
候補 B
AWS請求は高い
中央運用チームの工数が少ないなら、中央チームの工数をAだけコスト境界の外へ出してはいけません。
比較では、
同じ対象範囲
+
同じ期間
+
同じコスト境界へ揃えます。
11. 一時的な変更コストも比較期間へ入れる
アーキテクチャ変更には、
移行
開発
テスト
データ転送
切り替え
トレーニングなどの一時費用が発生する場合があります。
例えば、
候補 B
移行コスト
12,000 USDで、12か月比較なら、概念上、
12,000 / 12
=
1,000 USD / 月相当として比較できます。
36か月比較なら、
12,000 / 36
≈
333 USD / 月相当です。
つまり、
比較期間によってアーキテクチャの優劣が変わる可能性があります。
12. 総コストモデルを作る
アーキテクチャ候補ごとに、概念的には、
総コスト
=
コンピューティング
+
データベース
+
ストレージ
+
データ転送
+
マネージドサービス料金
+
運用工数
+
変更 / 移行コストを比較します。
必要に応じて、
ライセンス
サポート
バックアップ
オブザーバビリティ
セキュリティ サービスなども追加します。
重要なのは、
候補ごとに
同じコスト境界を使うことです。
13. コスト要因を特定する
総コストを作った後は、
どの項目が
アーキテクチャの差を作っているかを確認します。
例えば、
候補 A
コンピューティング 20%
ストレージ 8%
データ転送 12%
データベース 25%
運用 35%なら、主要コスト要因は、
運用
データベースです。
一方、
候補 B
コンピューティング 35%
ストレージ 10%
データ転送 5%
データベース 40%
運用 10%なら、別のコスト要因になります。
これにより、
何を最適化すれば
選択結果へ最も影響するかが分かります。
14. 平均値だけでアーキテクチャを決めない
例えば、
平均トラフィック
月5 TBだけでは、将来、
2 TB
5 TB
20 TBのどこへ動くか分からない場合があります。
そこで、
低
想定
高など複数シナリオで比較します。
例えば、
| シナリオ | 候補 A | 候補 B |
|---|---|---|
| 低 | 6,000 | 7,000 |
| 想定 | 8,000 | 7,500 |
| 高 | 14,000 | 9,000 |
なら、
低ではA
想定 / 高ではBです。
アーキテクチャ選択では、
現在値だけではなく、
将来使用量の範囲も判断材料になります。
15. 損益分岐点を確認する
2つの候補の優劣が変わる境界を確認します。
例えば、
候補 A
固定費が低い
従量費が高い
候補 B
固定費が高い
従量費が低いなら、トラフィックが増えるとBが有利になる可能性があります。
概念的には、
A 総コスト
=
B 総コストとなる、
トラフィック
ストレージ
使用量 時間
運用時間を求めます。
これが、
損益分岐点です。
16. コミットメントリスクをアーキテクチャ選択へ含める
料金モデル自体の選び方は既習です。
ここで追加するのは、
アーキテクチャの寿命と、
コミットメント期間の関係です。
例えば、
12か月以内に
プラットフォーム変更の可能性が高い
↓
現在アーキテクチャへ
3年コミットメントなら、アーキテクチャ変更後に、
未使用コミットメントが残るリスクがあります。
そのため、
各候補の最適化済み コスト
+
アーキテクチャ変更リスク
+
未使用コミットメントリスクを最終比較へ入れます。
17. サービス選択はアーキテクチャ全体のコスト構造として評価する
候補によって、
セルフマネージド
マネージドサービス
サーバーレスなどの構成要素が異なる場合があります。
ここでは個々のサービスの料金特性を再講義せず、既習のコストモデルを適用した結果を、
直接コスト
運用コスト
データ転送
ストレージ
変更コスト
将来使用量と同じ総コスト境界へ入れます。
したがって、
特定のサービスカテゴリだから除外ではなく、
要件適合済みのアーキテクチャ 候補として
他のコスト要因と一緒に評価します。
18. コスト要件には「上限」以外もある
コスト要件は、
月10,000 USD以下だけではありません。
例えば、
初期投資を抑える
変動費中心にする
長期安定利用を割引する
人員を増やさず運用する
トラフィック増加へ追従する
予測可能な支出にするなどもコスト要件です。
そのため、
最安だけでなく、
コスト構造もアーキテクチャ選択へ入れます。
19. 簡略化したアーキテクチャ比較例
次の2つのアーキテクチャが、どちらもパフォーマンス・可用性・セキュリティ要件を満たすとします。
候補 A
直接コンピュート費用
2,200 USD
ストレージ
900 USD
データ転送
500 USD
データベース / インフラストラクチャ
1,600 USD
運用工数
2,400 USD
移行コスト
12か月換算
500 USD合計:
8,100 USD / 月相当候補 B
直接コンピュート費用
2,700 USD
ストレージ
750 USD
データ転送
350 USD
マネージドデータベース / サービス
2,300 USD
運用工数
700 USD
移行コスト
12か月換算
800 USD合計:
7,600 USD / 月相当候補 Aは、
直接AWS料金だけなら低く見えます。
しかし、
運用コスト
+
移行コストまで同じ期間へ揃えると、候補 Bの総コストが低くなります。
これは料金表ではなく、判断方法を示す簡略例です。
20. 感度分析で選択結果を確認する
候補 Bを選ぶ前に、
トラフィック +100%
ストレージ +50%
運用 -30%
コンピューティング 需要 -40%など、主要コスト要因を変化させます。
もし、
少し条件が変わるだけで
候補 AとBが逆転するなら、選択は不確実性に敏感です。
一方、
複数シナリオで
候補 Bが一貫して低コストなら、選択の確度は上がります。
21. 見かけ上の削減を除外する
コスト最適化案では、
見かけ上の削減を除外します。
例えば、
可用性を下げたから安くなった
必要キャパシティを削ったから安くなった
運用作業をコスト 0として扱った
移行コストを除外した
比較期間を変えた場合は、アーキテクチャ自体のコスト効率を比較できていません。
正しい削減は、
同じ必要な成果を維持したうえで生じる削減です。
22. アーキテクチャ決定を記録する
最終決定では、
選んだアーキテクチャだけを記録するのではなく、
要件
使用量 前提
比較期間
料金前提
コスト要因
運用前提
損益分岐点
選択理由も残します。
なぜなら、
トラフィック
AWS料金
ビジネス要件
使用パターンが変われば、最適解も変わる可能性があるためです。
23. 選択後は制御ループへ接続する
アーキテクチャ選択は、
決定
↓
終了ではありません。
選択時に置いた、
トラフィック
使用量
コスト
運用時間
増加という仮定を、実運用の、
コスト
使用量
予算
予測と比較します。
つまり、
アーキテクチャ選択
↓
運用
↓
測定
↓
再評価までをコスト最適化として扱います。
24. 代表的なアンチパターン
| アンチパターン | 問題 |
|---|---|
| 最も月額AWS料金が安い案を選ぶ | 運用コストを無視 |
| 現在構成と最適化済み新構成を比較する | 比較条件が不公平 |
| 片方だけ適正サイジングする | アーキテクチャ差と過剰容量を混同 |
| ストレージ階層化を片方だけ適用する | 保存戦略の差をアーキテクチャ差と誤認 |
| データ量だけ見てネットワークコストを同一扱いする | トラフィック経路を無視 |
| マネージドサービスを直接料金だけで除外する | 総コスト境界が不一致 |
| 移行コストを除外する | 短期比較を誤る |
| 現在平均だけで選択する | 増加 / ピーク / 不確実性を無視 |
| アーキテクチャ寿命を無視してコミットする | 未使用コミットメントリスクを無視 |
| 一度決めたアーキテクチャを再評価しない | 実使用量との乖離を放置 |
25. SAP-C02での判断フロー
ビジネス / 技術要件
↓
必須要件を満たす
アーキテクチャ候補を残す
↓
同じ需要
同じSLA
同じ比較期間へ揃える
↓
各候補を個別に最適化
↓
適正サイジング
料金モデル
ストレージ階層化
データ転送
運用モデル
↓
同じコスト境界へ揃える
↓
AWS直接費用を計算
↓
運用コストを追加
↓
移行 / 変更コストを追加
↓
総コストを比較
↓
主要コスト要因を特定
↓
低 / 想定 / 高
シナリオで再計算
↓
損益分岐点
コミットメントリスク
将来の増加を確認
↓
要件を満たす候補の中から
コスト効率の高いアーキテクチャを選択
↓
前提 / 担当者を記録
↓
実際のコスト / 使用量から
継続的に再評価まとめ
コスト要件からアーキテクチャを選択するときは、
個別サービスの単価だけでは判断しません。
まず、
要件を満たす候補だけを残します。
次に各候補へ、
料金モデル
適正サイジング
ストレージ階層化
データ転送最適化
運用コストモデルを公平に適用します。
さらに、
AWS直接費用
+
運用コスト
+
変更コストを同じ期間・同じコスト境界で比較します。
その後、
将来使用量
感度
損益分岐点
コミットメントリスクを確認します。
最終的には、
必要な成果を満たしながら
組織 総コストを
最も効率化できるアーキテクチャを選択します。
そして選択時の仮定を、
実コスト
実使用量で継続的に検証します。
主要AWS公式資料
- AWS Certified Solutions Architect - Professional SAP-C02 Exam Guide — Task 2.6
- AWS Well-Architected Framework — COST 5: Evaluate cost when selecting services
- COST05-BP02 — Analyze all components of the workload
- COST05-BP03 — Perform a thorough analysis of each component
- COST05-BP05 — Select components to optimize cost in line with organization priorities
- COST05-BP06 — Perform cost analysis for different usage over time
- COST 6 — Select the correct resource type, size, and number
- COST06-BP01 — Perform cost modeling
- COST06-BP02 — Select resource type, size, and number based on data
- AWS Well-Architected Cost Optimization Pillar — Cost effective resources