スケーラビリティ


スケーラビリティ(Scalability)とは(AZ-900対策)

スケーラビリティとは、システムの処理量が増えたときに、必要に応じて性能を拡張できる能力のことです。
アクセス数やデータ量が増加しても、サービスを安定して提供するための重要な性質です。

クラウド(Azure)ではスケーラビリティが標準で備わっており、負荷の変動に強い仕組みを簡単に構築できます。


スケーラビリティが必要とされる理由

システム運用において次のような課題が発生します。

  • アクセスが増えるとレスポンスが遅くなる
  • 特定の時間帯だけ負荷が増える
  • 機能追加やユーザー増により処理量が増加する

これらに対応するために、リソースを柔軟に拡張できるスケーラビリティが重要です。


スケーラビリティの種類

スケーラビリティには、主に次の 2 種類があります。

垂直スケール(スケールアップ / Scale Up)

サーバーの性能を「縦方向」に強化する方法です。

  • CPU コア数を増やす
  • メモリ容量を増やす
  • ディスク性能を向上させる

特徴

  • 1台で高性能化できる
  • 実装が比較的簡単
  • ただし限界がある

水平スケール(スケールアウト / Scale Out)

サーバーの台数を「横方向に」増やす方法です。

  • Web サーバーを複数台に増やす
  • データベースの読み取り専用ノードを増設する

特徴

  • 台数を追加するため拡張性が高い
  • 高可用性とも相性が良い
  • ロードバランサーと組み合わせて利用されることが多い

スケーラビリティと弾力性(Elasticity)の違い

スケーラビリティと弾力性は似ていますが、目的が異なります。

概念意味
スケーラビリティ拡張できる能力そのもの
弾力性(Elasticity)必要に応じて自動でスケールする仕組み

スケーラビリティは「拡張できる性質」、
弾力性は「自動で拡張・縮小する仕組み」
という関係になります。


スケーラビリティを実現する仕組みの例

Azure やクラウドでは、次のような仕組みによりスケールが容易になります。

● 仮想マシンのサイズ変更

CPU / メモリを簡単に増やす → 垂直スケール

● 仮想マシンスケールセット(VMSS)

トラフィックに応じて VM 台数を自動で増減 → 水平スケール

● App Service のスケールアウト

複数インスタンスを動かして負荷分散 → 水平スケール

● データベースのスケール

  • Azure SQL Database の DTU / vCore 増加(垂直)
  • 読み取りレプリカ(水平)

スケーラビリティのメリット

  • アクセス増加に応じて柔軟に対応できる
  • 利用者が増えてもサービス品質を維持できる
  • 費用を必要な範囲に抑えられる
  • 高可用性(HA)と組み合わせることでシステムが強固になる

AZ-900で理解すべきポイント

  • スケーラビリティ=システム拡張能力
  • 垂直スケール(Scale Up)と水平スケール(Scale Out)の違い
  • クラウドではスケールが簡単かつ柔軟に行える
  • 自動スケールは「弾力性」と関連する概念
  • 高可用性とも密接に関係する(特に水平スケール)