SQL Database のオプションとパフォーマンス: 各サービス レベルで使用できる内容について理解する

Azure SQL Database には、BasicStandardPremiumPremium RS の 4 つのサービス レベルが用意されています。 各サービス レベルには、さまざまなワークロードに対応するために、いくつかのパフォーマンス レベルが用意されています。 パフォーマンス レベルが高くなるほど提供されるリソースが追加され、スループットが段階的に高くなるように設計されています。 ダウンタイムを発生させることなく、サービス レベルとパフォーマンス レベルは動的に変更できます。 Basic、Standard、Premium のサービス レベルは、いずれも稼働時間の SLA が 99.99% で、柔軟なビジネス継続性のオプション、セキュリティ機能、時間単位の課金体系が用意されています。 Premium RS レベルでは、SLA が少ないにも関わらず、Premium レベルと同じレベルのパフォーマンス、セキュリティ機能およびビジネス継続性機能が用意されています。

重要

Premium RS のデータベースは、Premium または Standard の各データベースよりも少ない冗長コピーで実行されます。 そのため、サービスで障害が発生した場合は、最大 5 分間の遅延があるバックアップからデータベースを復旧する必要があります。

あるサービス レベルの特定のパフォーマンス レベルで、専用リソースを含む単一データベースを作成できます。 また、リソースが複数のデータベース間で共有されるエラスティック プール内にデータベースを作成することもできます。 単一データベースで利用できるリソースは、データベース トランザクション ユニット (DTU) を単位として表現されます。これに対して、エラスティック プールで利用できるリソースは、エラスティック データベース トランザクション ユニット (eDTU) を単位として表現されます。 DTU と eDTU の詳細については、DTU の概要に関する記事を参照してください。

サービス階層の選択

次の表では、各種のアプリケーション ワークロードに最適なサービス階層の例を示します。

サービス階層 対象のワークロード
Basic 小規模なデータベースに最適です。通常は、一度に 1 つのアクティブな操作をサポートします。 たとえば、開発やテスト、使用頻度の低い小規模なアプリケーションなどに使用するデータベースがこれに該当します。
Standard IO パフォーマンス要件が低~中程度のクラウド アプリケーションに適しています。複数の同時クエリをサポートします。 たとえば、ワークグループや Web アプリケーションなどです。
Premium IO パフォーマンス要件が高く、トランザクション量が膨大な場合に合わせて設計されています。多数の同時ユーザーをサポートしています。 たとえば、ミッション クリティカルなアプリケーションをサポートするデータベースなどです。
Premium RS 最高レベルの可用性の保証を必要としない I/O 集中型のワークロード向けに設計されています。 例としては、高パフォーマンス ワークロードまたはデータベースがレコードのシステムではない分析ワークロードのテストが含まれます。

まず、定義済みの容量を備えた専用リソースを持つ単一データベースを実行するか、データベースのグループ間でリソースのプールを共有するかを決定します。 エラスティック プールの考慮事項を確認してください。 サービス レベルを決定するには、まず、最低限必要なデータベース機能を確認します。

サービス レベルの機能 Basic Standard Premium Premium RS
単一データベースの最大サイズ 2 GB 250 GB 4 TB* 500 GB
エラスティック プールの最大サイズ 156 GB 2.9 TB 4 TB* 750 GB
エラスティック プール内のデータベースの最大サイズ 2 GB 250 GB 500 GB 500 GB
プールあたりのデータベースの最大数 500 500 100 100
単一データベースの最大 DTU 5 100 4000 1,000
エラスティック プール内のデータベースあたりの最大 DTU 5 3000 4000 1,000
データベース バックアップのリテンション期間 7 日 35 日 35 日 35 日
重要

これらの追加ストレージ オプションは、現在、米国東部 2、米国西部、米国政府バージニア州、西ヨーロッパ、ドイツ中部、東南アジア、東日本、オーストラリア東部、カナダ中部、カナダ東部の各リージョンで利用できます。 詳細については、4 TB のデータベースの現時点での制限事項に関するセクションを参照してください。

最小限のサービス レベルを決定したら、データベースのパフォーマンス レベル (DTU 数) を決定できるようになります。 多くの場合、出発点として Standard S2 および S3 というパフォーマンス レベルが適しています。 CPU または IO の要件が高いデータベースの場合は、Premium のパフォーマンス レベルが出発点として適しています。 Premium では、より多くの CPU が提供されるため、最も高い Standard パフォーマンス レベルと比較して 10 倍超える IO から始まります。

単一データベース サービス階層とパフォーマンス レベル

単一データベースでは、各サービス レベル内に複数のパフォーマンス レベルがあります。 Azure Portal、PowerShellTransact-SQL、C#、および REST API を使用して、ワークロードの需要に最も合ったレベルを選択できる柔軟性があります。

ホストされるデータベースの数にかかわらず、データベースは所定のリソースを取得します。データベースの期待されるパフォーマンス特性には影響しません。

Basic サービス レベル

パフォーマンス レベル Basic
最大 DTU 数 5
最大データベース サイズ* 2 GB
最大インメモリ OLTP ストレージ 該当なし
最大同時実行ワーカー (要求) 数 30
最大同時ログイン数 30
最大同時セッション数 300

Standard サービス レベル

パフォーマンス レベル S0 S1 S2 S3
最大 DTU 数 10 20 50 100
最大データベース サイズ* 250 GB 250 GB 250 GB 250 GB
最大インメモリ OLTP ストレージ 該当なし 該当なし 該当なし 該当なし
最大同時実行ワーカー (要求) 数 60 90 120 200
最大同時ログイン数 60 90 120 200
最大同時セッション数 600 900 1200 2400

Premium サービス レベル

パフォーマンス レベル P1 P2 P4 P6 P11 P15
最大 DTU 数 125 250 500 1,000 1750 4000
最大データベース サイズ* 500 GB 500 GB 500 GB 500 GB 4 TB 4 TB
最大インメモリ OLTP ストレージ 1 GB 2 GB 4 GB 8 GB 14 GB 32 GB
最大同時実行ワーカー (要求) 数 200 400 800 1600 2400 6400
最大同時ログイン数 200 400 800 1600 2400 6400
最大同時セッション数 30000 30000 30000 30000 30000 30000

Premium RS サービス レベル

パフォーマンス レベル PRS1 PRS2 PRS4 PRS6
最大 DTU 数 125 250 500 1,000
最大データベース サイズ* 500 GB 500 GB 500 GB 500 GB
最大インメモリ OLTP ストレージ 1 GB 2 GB 4 GB 8 GB
最大同時実行ワーカー (要求) 数 200 400 800 1600
最大同時ログイン数 200 400 800 1600
最大同時セッション数 30000 30000 30000 30000

* 最大データベース サイズは、データベース内のデータの最大サイズを意味します。

注意

このサービス層テーブルのその他すべての行の詳細については、「 サービス層の機能と制限」を参照してください。

単一データベースのスケールアップとスケールダウン

最初にサービス レベルとパフォーマンス レベルを選んだ後、実際の使用感に基づいて、単一データベースを動的にスケールアップまたはスケールダウンすることができます。 スケールアップまたはスケールダウンする必要がある場合は、Azure Portal、PowerShellTransact-SQL、C#、および REST API を使用してデータベースのレベルを簡単に変更することができます。

データベースのサービス レベルやパフォーマンス レベルを変更すると、新しいパフォーマンス レベルで元のデータベースのレプリカが作成され、接続先がそのレプリカに切り替えられます。 このプロセスでデータが失われることはありませんが、レプリカに切り替えるほんの少しの間、データベースに接続できなくなるため、実行中の一部トランザクションがロールバックされる場合があります。 この時間はさまざまですが、平均 4 秒以内であり、99% 以上が 30 秒未満です。 接続が無効になった時点で多数のトランザクションが実行中の場合、この時間が長引くことがあります。

スケールアップ プロセス全体の継続時間は、変更前後のデータベースのサイズとサービス レベルによって異なります。 たとえば、250 GB のデータベースを Standard サービス レベルとの間または Standard サービス レベル内で変更する場合は、6 時間以内に完了します。 Premium サービス レベル内で同じサイズのデータベースのパフォーマンス レベルを変更する場合は、3 時間以内で完了します。

  • データベースをダウングレードするには、データベースがダウングレード後のサービス階層で許可されている最大サイズより小さい必要があります。
  • geo レプリケーションを有効にしてデータベースをアップグレードする場合、まず、そのセカンダリ データベースを目的のパフォーマンス レベルにアップグレードしてから、プライマリ データベースをアップグレードする必要があります。
  • Premium サービス階層からダウングレードするときは、最初に geo レプリケーション リレーションシップをすべて終了する必要があります。 「 Azue SQL Database を障害から回復する 」に記載されている手順に従って、プライマリ データベースとアクティブなセカンダリ データベース間のレプリケーション プロセスを停止できます。
  • サービス階層によって、提供されている復元サービスは異なります。 ダウングレードすると、特定の時点に復元する機能を使えなくなったり、バックアップの保存期間が短くなったりする可能性があります。 詳細については、「 Azure SQL Database のバックアップと復元」を参照してください。
  • データベースに対する新しいプロパティは、変更が完了するまで適用されません。

エラスティック プール サービス階層と eDTU のパフォーマンス

プールでは、データベースが eDTU リソースを共有して使用することができ、プール内の各データベースに特定のパフォーマンス レベルを割り当てる必要はありません。 たとえば、Standard プール内の単一データベースで使用できるのは、0 eDTU から、プールの構成時に設定した最大データベース eDTU までとなります。 プールでは、多様なワークロードを持つ複数のデータベースが、プール全体で利用可能な eDTU リソースを効率的に使用できます。 詳細については、 エラスティック プールの価格およびパフォーマンスに関する考慮事項 に関する記事を参照してください。

次の表は、エラスティック プールのリソース制限を示します。 エラスティック プール内の個々のリソース制限は、一般的に DTU やサービス層に基づくプール外の単一のデータベースのリソース制限と同じです。 たとえば、S2 データベースの最大同時実行ワーカー数は 120 ワーカーです。 そのため、プール内の各データベースの最大 DTU が 50 DTU (S2 と同じ) の場合、Standard プール内のデータベースの最大同時実行ワーカー数も 120 ワーカーです。

Basic エラスティック プールの制限

プール サイズ (DTU) 50 100 200 300 400 800 1200 1600
プールあたりの最大データ ストレージ容量* 5 GB 10 GB 20 GB 29 GB 39 GB 78 GB 117 GB 156 GB
プールあたりの最大インメモリ OLTP ストレージ容量 該当なし 該当なし 該当なし 該当なし 該当なし 該当なし 該当なし 該当なし
プールあたりの最大 DB 数 100 200 500 500 500 500 500 500
プールあたりの最大同時実行ワーカー (要求) 数 100 200 400 600 800 1600 2400 3200
プールあたりの最大同時ログイン数 100 200 400 600 800 1600 2400 3200
プールあたりの最大同時セッション数 30000 30000 30000 30000 30000 30000 30000 30000
データベースあたりの最小 eDTU 数 0、5 0、5 0、5 0、5 0、5 0、5 0、5 0、5
データベースあたりの最大 eDTU 数 5 5 5 5 5 5 5 5
データベースあたりの最大データ ストレージ容量 2 GB 2 GB 2 GB 2 GB 2 GB 2 GB 2 GB 2 GB

Standard エラスティック プールの制限

プール サイズ (DTU) 50 100 200** 300** 400** 800**
プールあたりの最大データ ストレージ容量* 50 GB 100 GB 200 GB 300 GB 400 GB 800 GB
プールあたりの最大インメモリ OLTP ストレージ容量 該当なし 該当なし 該当なし 該当なし 該当なし 該当なし
プールあたりの最大 DB 数 100 200 500 500 500 500
プールあたりの最大同時実行ワーカー (要求) 数 100 200 400 600 800 1600
プールあたりの最大同時ログイン数 100 200 400 600 800 1600
プールあたりの最大同時セッション数 30000 30000 30000 30000 30000 30000
データベースあたりの最小 eDTU 数** 0、10、20、50 0、10、20、50、100 0、10、20、50、100、200 0、10、20、50、100、200、300 0、10、20、50、100、200、300、400 0、10、20、50、100、200、300、400、800
データベースあたりの最大 eDTU 数** 10、20、50 10、20、50、100 10、20、50、100、200 10、20、50、100、200、300 10、20、50、100、200、300、400 10、20、50、100、200、300、400、800
データベースあたりの最大データ ストレージ容量 250 GB 250 GB 250 GB 250 GB 250 GB 250 GB

Standard エラスティック プールの制限 (続き)

プール サイズ (DTU) 1200** 1600** 2000** 2500** 3000**
プールあたりの最大データ ストレージ容量* 1.2 TB 1.6 TB 2 TB 2.4 TB 2.9 TB
プールあたりの最大インメモリ OLTP ストレージ容量 該当なし 該当なし 該当なし 該当なし 該当なし
プールあたりの最大 DB 数 500 500 500 500 500
プールあたりの最大同時実行ワーカー (要求) 数 2400 3200 4000 5000 6000
プールあたりの最大同時ログイン数 2400 3200 4000 5000 6000
プールあたりの最大同時セッション数 30000 30000 30000 30000 30000
データベースあたりの最小 eDTU 数** 0、10、20、50、100、200、300、400、800、1200 0、10、20、50、100、200、300、400、800、1200、1600 0、10、20、50、100、200、300、400、800、1200、1600、2000 0、10、20、50、100、200、300、400、800、1200、1600、2000、2500 0、10、20、50、100、200、300、400、800、1200、1600、2000、2500、3000
データベースあたりの最大 eDTU 数** 10、20、50、100、200、300、400、800、1200 10、20、50、100、200、300、400、800、1200、1600 10、20、50、100、200、300、400、800、1200、1600、2000 10、20、50、100、200、300、400、800、1200、1600、2000、2500 10、20、50、100、200、300、400、800、1200、1600、2000、2500、3000
データベースあたりの最大データ ストレージ容量 250 GB 250 GB 250 GB 250 GB 250 GB

Premium エラスティック プールの制限

プール サイズ (DTU) 125 250 500 1000 1500***
プールあたりの最大データ ストレージ容量* 250 GB 500 GB 750 GB 750 GB 1.5 TB
プールあたりの最大インメモリ OLTP ストレージ容量 1 GB 2 GB 4 GB 10 GB 12 GB
プールあたりの最大 DB 数 50 100 100 100 100
プールあたりの最大同時実行ワーカー (要求) 数 200 400 800 1600 2400
プールあたりの最大同時ログイン数 200 400 800 1600 2400
プールあたりの最大同時セッション数 30000 30000 30000 30000 30000
データベースあたりの最小 eDTU 数 0、25、50、75、125 0、25、50、75、125、250 0、25、50、75、125、250、500 0、25、50、75、125、250、500、1000 0、25、50、75、125、250、500、1000、1500
データベースあたりの最大 eDTU 数 25、50、75、125 25、50、75、125、250 25、50、75、125、250、500 25、50、75、125、250、500、1000 25、50、75、125、250、500、1000、1500
データベースあたりの最大データ ストレージ容量 500 GB 500 GB 500 GB 500 GB 500 GB

Premium エラスティック プールの制限 (続き)

プール サイズ (DTU) 2000*** 2500*** 3000*** 3500*** 4000***
プールあたりの最大データ ストレージ容量* 2 TB 2.5 TB 3 TB 3.5 TB 4 TB
プールあたりの最大インメモリ OLTP ストレージ容量 16 GB 20 GB 24 GB 28 GB 32 GB
プールあたりの最大 DB 数 100 100 100 100 100
プールあたりの最大同時実行ワーカー (要求) 数 3200 4000 4800 5600 6400
プールあたりの最大同時ログイン数 3200 4000 4800 5600 6400
プールあたりの最大同時セッション数 30000 30000 30000 30000 30000
データベースあたりの最小 eDTU 数 0、25、50、75、125、250、500、1000、1750 0、25、50、75、125、250、500、1000、1750 0、25、50、75、125、250、500、1000、1750 0、25、50、75、125、250、500、1000、1750 0、25、50、75、125、250、500、1000、1750、4000
データベースあたりの最大 eDTU 数 25、50、75、125、250、500、1000、1750 25、50、75、125、250、500、1000、1750 25、50、75、125、250、500、1000、1750 25、50、75、125、250、500、1000、1750 25、50、75、125、250、500、1000、1750、4000
データベースあたりの最大データ ストレージ容量 500 GB 500 GB 500 GB 500 GB 500 GB

Premium RS エラスティック プールの制限

プール サイズ (DTU) 125 250 500 1000
プールあたりの最大データ ストレージ容量* 250 GB 500 GB 750 GB 750 GB
プールあたりの最大インメモリ OLTP ストレージ容量 1 GB 2 GB 4 GB 10 GB
プールあたりの最大 DB 数 50 100 100 100
プールあたりの最大同時実行ワーカー (要求) 数 200 400 800 1600
プールあたりの最大同時ログイン数 200 400 800 1600
プールあたりの最大同時セッション数 30000 30000 30000 30000
データベースあたりの最小 eDTU 数 0、25、50、75、125 0、25、50、75、125、250 0、25、50、75、125、250、500 0、25、50、75、125、250、500、1000
データベースあたりの最大 eDTU 数 25、50、75、125 25、50、75、125、250 25、50、75、125、250、500 25、50、75、125、250、500、1000
データベースあたりの最大データ ストレージ容量 500 GB 500 GB 500 GB 500 GB
重要

* プールされたデータベースではプール ストレージが共有されるため、エラスティック プール内のデータ ストレージ容量は、残りのプール ストレージ容量とデータベースあたりの最大ストレージ容量のどちらか小さい方に制限されます。

** パブリック プレビューでは、データベースあたりの最小/最大 eDTU 数が 200 eDTU 以上となります。

*** 1,500 eDTU 以上の Premium プールの場合、プールあたりの既定の最大データ ストレージは 750 GB です。 プールあたりの最大データ ストレージ サイズをこれよりも大きくするには、Azure Portal または PowerShell を使ってそのサイズを明示的に選択する必要があります。 ストレージが 750 GB を超える Premium プールは現在、米国東部 2、米国西部、米国政府バージニア、西ヨーロッパ、ドイツ中部、東南アジア、東日本、オーストラリア東部、カナダ中部、およびカナダ東部の各リージョンにおいてパブリック プレビュー段階です。 その他すべてのリージョンでは、プールあたりの最大ストレージが現在 750 GB に制限されています。

エラスティック プールのスケールアップとスケールダウン

最初にサービス レベルとパフォーマンス レベルを選んだ後、実際の使用感に基づいて、エラスティック プールを動的にスケールアップまたはスケールダウンすることができます。

  • 通常、データベースあたりの最小 eDTU またはデータベースあたりの最大 eDTU の変更は、5 分以内で完了します。
  • プール サイズ (eDTU) の変更時間は、プール内のすべてのデータベースを結合したサイズに依存します。 変更の平均時間は、100 GB あたり 90 分以下です。 たとえば、プール内のすべてのデータベースの合計領域が 200 GB の場合、プールあたりの eDTU の変更にかかる想定待機時間は、3 時間以下になります。

詳細な手順については、Azure Portal でのエラスティック プールの管理PowerShell を使用したエラスティック プールの管理Transact-SQL を使用したエラスティック プールの管理、または C# を使用したエラスティック プールの管理に関する記事をそれぞれ参照してください。

4 TB の作成またはアップグレード

以下のセクションでは、4 TB オプションの実装について詳しく説明します。

Azure Portal での作成

P11/P15 を作成するとき、既定で 1 TB のストレージ オプションがあらかじめ選択されています。 サポート対象のリージョンにあるデータベースでは、ストレージの最大値を 4 TB に増やすことができます。 それ以外のすべてのリージョンでは、ストレージのスライダーを変更できません。 4 TB の付属のストレージを選択しても、価格は変わりません。

PowerShell または Transact-SQL を使用した作成

P11/P15 データベースを作成するときに、1 TB (既定値) または 4 TB を最大サイズの値として設定できます。 "1024 GB" と "4096 GB" の値も入力できます。 4 TB の最大サイズのオプションを選択した場合、サポートされていないリージョンでデータベースをプロビジョニングすると、エラーのため、create コマンドが失敗します。

4 TB へのアップグレード

サポート対象のリージョンにある既存の P11 と P15 のデータベースでは、ストレージの最大サイズを 4 TB に増やすことができます。 この操作は、Azure ポータル、PowerShell、または Transact-SQL で実行できます。 次のコードは、ALTER DATABASE コマンドを使用した最大サイズの変更の例を示しています。

ALTER DATABASE <myDatabaseName> 
  MODIFY (MAXSIZE = 4096 GB);

既存の P11 または P15 のデータベースのアップグレードは、サーバーレベル プリンシパルのログインまたは dbmanager データベース ロールのメンバーのみが実行できます。 サポートされているリージョンで実行されると、すぐに構成が更新されます。 これを確認するには、SELECT DATABASEPROPERTYEX を使用するか、Azure Portal でデータベース サイズを調べます。 データベースは、アップグレード処理中もオンラインのままになります。 ただし、実際のデータベース ファイルが新しい最大サイズにアップグレードされるまで、4 TB のストレージを十分に利用することはできません。 必要な時間は、アップグレードされるデータベースのサイズに応じて異なります。

エラー メッセージ

サポートされていないリージョンで P11/P15 データベースを作成またはアップグレードすると、アップグレード操作が失敗し、"P11 and P15 database with up to 4TB of storage are available in US East2, West US, US Gov Virginia, West Europe, Germany Central, South East Asia, Japan East, Australia East, Canada Central, and Canada East. (最大 4 TB のストレージを使用する P11 および P15 データベースは、米国東部 2、米国西部、米国政府バージニア、西ヨーロッパ、ドイツ中部、東南アジア、東日本、オーストラリア東部、カナダ中部、カナダ東部で利用可能です)" というエラー メッセージが表示されます。

最大サイズ 4 TB の P11 および P15 データベースの現時点での制限事項

  • P11 または P15 データベースを作成または更新する際に、最大サイズとして 1 TB と 4 TB のいずれかのみを選択できます。 現在、中間のストレージ サイズはサポートされていません。
  • 実際に使用されるストレージが 1 TB 未満の場合でも、データベースの最大サイズ 4 TB を 1 TB に変更することはできません。 したがって、他のパフォーマンス レベルに追加のストレージ オプションが提供されない限り、P11-4TB/P15-4TB を P11-1TB/P15-1TB またはさらに下位のパフォーマンス レベル (たとえば、P1-P6) にダウングレードすることはできません。 この制限は、ポイントインタイム リストア、geo リストア、長期的なバックアップ保有期間、データベース コピーなど、復元とコピーのシナリオにも適用されます。 データベースを 4 TB のオプションを使用して構成すると、このデータベースのすべての復元操作により、最大サイズ 4 TB の P11/P15 になります。
  • アクティブ geo レプリケーションのシナリオの場合:
    • geo レプリケーションのリレーションシップの設定: プライマリ データベースが P11 または P15 の場合は、セカンダリも P11 または P15 である必要があります。つまり、下位のパフォーマンス レベルは、4 TB をサポートできないため、セカンダリとして拒否されます。
    • geo レプリケーションのリレーションシップでのプライマリ データベースのアップグレード: プライマリ データベースで最大サイズを 4 TB に変更すると、セカンダリ データベースでも同じ変更がトリガーされます。 プライマリに対する変更を有効にするには、両方のアップグレードが正常に完了する必要があります。 4 TB のオプションに関するリージョンの制限が適用されます (上記参照)。 4 TB をサポートしていないリージョンにセカンダリが存在する場合、プライマリはアップグレードされません。
  • P11-4TB/P15-4TB データベースの読み込みに Import/Export サービスを使用することはサポートされていません。 SqlPackage.exe を使用して、データをインポートおよびエクスポートしてください。

次のステップ