AWS / SAP-C02

SAP-C02-127 · セクション 14 / タスク 3.3

Managed Service / 新Technologyへの置換を評価する

既存技術 / マネージドサービス / スケーラビリティ / 運用負荷 / パフォーマンス / 採用判断

既存ソリューションで性能目標を満たせなくなったとき、現在のリソースを大きくすることだけが改善方法ではありません。

現在利用している技術そのものが、需要変化へ十分な速さで追従できない、キャパシティ追加に人の操作が必要、手動の分割や再配置が性能維持の前提になっている、ワークロード特性と技術のスケーリング方式が合っていないのであれば、既存技術を調整し続けるより、マネージドサービスや新しいテクノロジーへ置き換えることで性能制約そのものを変えられる場合があります。

ただし、マネージドサービス = 高速ではありません。重要なのは、現在の性能制約を、新しい技術の特性によって解消できるかです。

ゴール

現在の性能制約
↓
既存技術の特性との関係を確認
↓
別の技術 / マネージドサービスなら
制約を変えられるか
↓
スケーラビリティ
運用負荷
パフォーマンス
を比較
↓
性能改善候補として採用評価へ進める

ここでは具体的な移行手順や負荷試験ではなく、既存技術を維持するか、技術そのものを置き換える価値があるかを判断します。

前提

以下は既習として扱います。

  • パフォーマンス目標を測定可能なメトリクスへ変換する
  • ボトルネックを特定する
  • CPU、メモリ、ストレージ、ネットワークを適切にサイジングする
  • コンピューティング、データベース、ストレージなどから要件に合うサービスを選択する
  • マネージドサービスでも顧客側に責任が残る
  • 既存プラットフォームとの互換性や移行経路を評価する

ここではこれらを再講義しません。新しく判断するのは、既存技術を改善し続けるのか、それとも別の技術へ置き換えることで性能改善するのかです。

1. 最初に既存技術が性能へ与えている制約を見る

性能問題があるからといって、すぐに新しいサービスへ置き換えるわけではありません。最初に、

現在の性能問題
↓
現在の技術固有の制約か

を確認します。

例えば、現在のプラットフォームが十分な処理能力を持っていても、

需要増加
↓
運用担当者が手動で容量追加
↓
追加完了まで30分
↓
その間KPI未達

となっているなら、問題は単純な最大性能だけではありません。必要なタイミングでキャパシティを増やせないスケーリング方式が性能制約になっています。

一方、

現在技術
十分なキャパシティあり

アプリケーション内部
1つの処理を直列実行

↓
CPUや基盤を増やしても
同じ直列処理で待つ

のであれば、基盤技術を置き換えても性能問題が残る可能性があります。まず、性能制約がどこから発生しているかを既存技術との関係で確認します。

2. 「現在の最大性能」だけを比較しない

既存技術と新しい技術を比較するとき、

最大100,000 req/s
と
最大500,000 req/s

のような最大値だけでは判断できません。

実際のワークロードでは、レイテンシー、スループット、同時実行数、負荷変動、キャパシティ追加速度、必要な処理方式などが関係します。

例えば、最大スループットが高い候補でも、要求されるレイテンシーを満たせないなら性能要件には適合しません。逆に、最大値が極端に大きくなくても、要求負荷へ十分な速さで追従できる方が実際のKPIを維持しやすい場合があります。

つまり、性能能力と必要なときにその能力を利用できるかを分けて考えます。

3. スケーラビリティでは「どこまで」と「どのように」を見る

スケーラビリティを評価するときは、

スケールできる / できない

だけでは不十分です。

必要な負荷範囲を処理できるか

+

需要変化へ必要な時間で追従できるか

+

ワークロードの処理方式と
スケーリング方式が合っているか

を確認します。

例えば、

通常負荷
10,000 req/s

バースト
60,000 req/s

バースト到達時間
5分

現在技術
容量追加に40分

なら、最終的に60,000 req/sを処理できても、キャパシティが利用可能になるまでの40分間は性能目標を外れる可能性があります。この場合は、最大キャパシティ不足ではなく、キャパシティ追従速度が改善対象です。

4. マネージドサービスは管理境界を変えられる

マネージドサービスでは、基盤の管理や一部のスケーリング処理などをAWSへ委譲できる場合があります。

需要を検知
↓
担当者が判断
↓
変更作業
↓
容量追加

という人を介した経路を、サービスが提供するスケーリング機能などによって短縮できる場合があります。

ただし、すべてのマネージドサービスが自動的に無制限にスケールするわけではありません。評価対象は、候補サービスが、そのワークロードで必要なスケーリング方式を提供しているかです。

5. 運用負荷が性能問題につながっているかを確認する

運用負荷が大きいこと自体は、必ずしも性能問題ではありません。

例えば、

月20時間
パッチ適用作業

が必要でも、性能目標を満たしている、需要変化へ十分追従している、運用作業による性能劣化がないのであれば、運用負荷が大きいという情報だけから、性能改善のためにマネージドサービスへ置き換えるとは判断できません。

一方、

負荷増加
↓
担当者による手動シャード追加
↓
完了まで長時間
↓
キュー滞留
↓
レイテンシー悪化

となっている場合は、運用上の介入が性能維持に必要になっています。この場合、運用負荷は単なる作業量ではなく、性能改善を遅らせている要因です。

6. 運用負荷削減と性能改善を混同しない

マネージドサービスへ置き換えることで、パッチ適用、基盤管理、キャパシティ管理、一部の障害対応などを減らせる場合があります。

運用負荷が減る
=
パフォーマンスが必ず向上する

ではありません。

性能改善として評価するには、

削減される運用作業
↓
現在の性能制約と関係しているか

を確認します。関係していなければ、その置換は運用上の優秀性やコストなどでは価値があっても、現在の性能問題に対する主要な改善策とは限りません。

7. 新しいテクノロジーでは「処理モデルが変わる」ことを見る

新しいテクノロジーの価値は、単に新しいバージョンであることではありません。

例えば既存技術が、

固定キャパシティ
+
手動分割

を前提としており、ワークロードが、

短時間で大きく変動

するなら、技術の処理モデルそのものが需要特性と合っていない可能性があります。

この場合、

より大きな同じ技術

ではなく、

需要に合わせて
異なる方法でキャパシティを提供する技術

を評価する価値があります。

重要なのは、新しいから採用するのではなく、現在の技術では扱いにくい性能特性を、別の技術なら自然に扱えるかです。

8. 既存技術を維持する方がよい場合もある

マネージドサービスや新しい技術が存在していても、必ず置き換える必要はありません。

現在技術
↓
要求負荷を処理可能
↓
需要変化にも十分追従
↓
性能目標も満たす

のであれば、現在の性能観点だけから置換を正当化する根拠はありません。

また、

性能問題あり
↓
原因はアプリケーション内部の
直列処理

である場合も、データストアや実行基盤だけをマネージド化しても根本原因が残る可能性があります。つまり、新しい候補が存在することと現在の性能問題を解決できることは別です。

9. スケーラビリティとレイテンシーの両方を見る

ある候補が大規模にスケールできても、それだけで採用判断はできません。

候補A
非常に大きなスループットへ拡張可能
固定レイテンシー 45 ms

要求
p99 30 ms以下

であれば、スケーラビリティが高くても要求を満たしません。

逆に、

候補B
必要な最大負荷まで拡張可能
要求レイテンシーを満たせる

なら、必要以上に大きな最大性能を持たなくても候補になります。

判断するのは、最大性能ではなく、必要な性能範囲を必要な条件で満たせるかです。

10. マネージドサービス採用候補になるケース

現在のKPI未達
↓
原因を確認
↓
既存技術の
スケーリング方式 /
キャパシティ管理 /
処理モデル
が制約
↓
候補技術なら
その制約を変更できる
↓
要求する性能範囲も満たせる
↓
置換候補として評価

ここで重要なのは、既存技術より新しいことではなく、現在の性能制約を構造的に変えられることです。

11. ケース:手動キャパシティ追加がKPI未達を生む

あるシステムでは通常、10,000 req/sを処理しています。イベント時には数分以内に60,000 req/sまで増加します。

既存技術は60,000 req/sを処理できる構成まで拡張できますが、

担当者による操作
↓
追加ノード準備
↓
データ再配置
↓
40分後に利用可能

となり、その間はキュー滞留とp95レイテンシー悪化が発生します。

最大性能だけを見れば既存技術でも対応可能です。しかし実際の制約は、需要変化とキャパシティ追加時間です。

同じ処理要件を満たし、需要へより速く追従できるマネージドサービスや新しい技術があるなら、性能改善候補として評価する理由があります。

12. ケース:基盤を変えてもボトルネックが残る

別のシステムでは、イベント処理が遅れています。調査すると、

入力基盤
キャパシティに余裕あり

↓

アプリケーション
すべてのイベントを
1つの処理で直列化

↓

未処理件数増加

となっていました。

この場合、入力基盤をより高性能なマネージドサービスへ置き換えても、1つの直列処理という制約は残ります。したがって、マネージドサービスへ変更できるという理由だけでは、現在の性能改善策にはなりません。

13. ケース:運用負荷削減だけでは性能改善とは限らない

既存サービスでは毎月、パッチ、バックアップ確認、定常保守に多くの作業時間を使っています。

p95レイテンシー
目標内

最大要求負荷
処理可能

需要増加への追従
問題なし

だったとします。

マネージドサービスへ変更すれば運用負荷を削減できる可能性があります。ただし、この情報だけでは、現在のパフォーマンスを改善する必要性は示されていません。

この場合、マネージドサービス採用には別の価値がある可能性がありますが、性能改善という観点では決定打が不足しています。

14. 採用判断で確認する6つの情報

観点確認すること
既存技術現在の技術特性がどの性能制約へ関係しているか
マネージドサービス / 新技術現在とは異なる性能・管理モデルを提供できるか
スケーラビリティ必要な負荷範囲と変化速度へ追従できるか
運用負荷人の操作や保守が性能維持の制約になっているか
パフォーマンスレイテンシー・スループットなど必要な性能を満たせるか
採用判断現在の制約を候補技術で実際に変えられるか

すべてを、マネージドだからではなく、

現在の制約
↓
候補技術で変わる特性
↓
期待する性能改善

としてつなげます。

15. 判断フロー

性能改善が必要
↓
既存技術と
ボトルネックの関係を確認
↓
技術固有の制約か
├─ いいえ
│   ↓
│ 技術置換を
│ 主要改善策にしない
│
└─ はい
    ↓
候補のマネージドサービス /
新しいテクノロジーを確認
    ↓
必要な負荷範囲へ
スケールできるか
    ↓
需要変化へ必要な速度で
追従できるか
    ↓
運用上の介入を減らすことが
性能改善へつながるか
    ↓
必要なレイテンシー /
スループット等を満たせるか
    ↓
性能改善候補として評価

16. このページで扱わないこと

ここでは、CPUやメモリをどこまで増減するか、個別AWSサービスの基本的な選び方、バージョンアップ経路、移行手順、移行リスクの詳細、総コスト比較、ベンチマーク、負荷テスト、変更前 / 変更後の実測比較、回帰確認、最終的な性能検証は扱いません。

ここで決めるのは、既存技術を維持するより、マネージドサービスまたは新しいテクノロジーへ置き換えることが性能改善候補になるかまでです。

候補化した後は、実際のワークロード条件で性能を測定し、改善効果を検証する必要があります。

まとめ

マネージドサービスや新しいテクノロジーは、新しい、マネージド、サーバーレスというだけで採用するものではありません。

現在の性能問題
↓
既存技術のどの特性が
制約になっているか

を確認し、そのうえで、

候補技術によって
その制約自体を変えられるか

を評価します。

特に確認するのは、スケーラビリティ、運用負荷、パフォーマンスです。

運用負荷が減ることだけでは性能改善とは限りません。最大性能が高いことだけでも十分ではありません。

重要なのは、要求された性能範囲を満たしながら、現在の性能制約を候補技術によって構造的に解消できるかです。

主要AWS公式資料

  • AWS Certified Solutions Architect - Professional(SAP-C02)試験ガイド — Task 3.3
  • AWS Well-Architected フレームワーク — パフォーマンス効率の柱
  • パフォーマンス効率の柱 — 設計原則
  • PERF01-BP01 利用可能なクラウドサービスと機能について学び、理解する
  • パフォーマンス効率の柱 — アーキテクチャの選択
  • PERF05-BP06 ワークロードとサービスを最新の状態に保つ

理解確認

このページの内容を3問で確認します。

理解確認3問へ →