適用対象:Azure SQL データベース
サーバーレスは、Azure SQL Database内の単一データベースのcompute レベルであり、ワークロードの需要に基づいてコンピューティングを自動的にスケーリングし、1 秒あたりのコンピューティング使用量に対する課金を行います。 サーバーレス コンピュート レベルでは、非アクティブ期間にデータベースを自動的に一時停止し、この間はストレージのみに課金されます。そして、アクティブな状態に戻ると、自動的にデータベースが再開されます。 サーバーレス コンピュート層は、汎用サービス層とハイパースケールサービス層で利用できます。
概要
コンピューティングの自動スケール範囲と自動一時停止の遅延は、サーバーレス コンピューティング レベルの重要なパラメーターです。 これらのパラメーターの構成によって、データベース パフォーマンス エクスペリエンスとコンピューティング コストが決まります。
サーバーレスの請求が非アクティブによりコンピューティング料金の発生を停止することを示す図。
パフォーマンスの構成
- 最小仮想コアと最大仮想コアは、データベースに使用可能なコンピューティング容量の範囲を定義する構成可能なパラメーターです。 メモリと IO の上限は、指定された仮想コアの範囲に比例します。
- 自動一時停止遅延は、データベースが自動的に一時停止されるまでの期間を定義する設定可能なパラメータです。 次のログインまたはその他のアクティビティが発生すると、データベースは自動的に再開されます。 あるいは、自動一時停止を無効にすることもできます。 詳細については、Azure SQL Databaseのサーバーレス計算層における自動一時停止および自動再開をご覧ください。
既定の設定
これらのパラメーターに対して使用可能な値を次の表に示します。
| パラメーター | 値の選択肢 | 規定値 |
|---|---|---|
| 最小仮想コア数 | 最大仮想コアの構成に依存します。詳細は、リソースの制限を参照してください。 | 0.5 仮想コア |
| General Purpose の自動一時停止の遅延 | 最小値: 15 分 最大: 10,080 分 (7 日間) 増分: 1 分 自動一時停止の無効化: -1 |
約 60 分 |
| ハイパースケールの自動一時停止までの遅延 | 最低60分 最大: 10,080 分 (7 日間) 増分: 1 分 自動一時停止の無効化: -1 |
約 60 分 |
コスト
サーバーレスデータベースのコストは、計算コストとストレージコストの合計です。 ストレージ コストは、プロビジョニングされたコンピューティング レベルと同じ方法で決定されます。
- 計算使用量が設定した最小限と最大限界の間にある場合、計算コストはvCoreと使用メモリに基づいて決まります。
- 計算使用量が設定した最小限度を下回る場合、計算コストは設定された最小vCoreと最小メモリに基づいて計算されます。
- データベースが一時停止すると、コンピューティング コストはゼロになり、ストレージ コストのみが発生します。
コストの詳細については、 サーバーレス計算層の課金およびコストシナリオをご覧ください。
シナリオ
サーバーレスは、アイドル使用期間後のコンピューティング ウォームアップにおいてある程度の遅延を許容できる一時的な予測できない使用パターンの単一データベースに対して価格とパフォーマンスが最適化されています。 これに対し、 プロビジョナッドされた計算層 は、単一のデータベースや平均使用率の高い エラスティックプール の複数データベースに対してコストパフォーマンス最適化されており、計算ウォームアップの遅延が許されません。
サーバーレス コンピューティングに適したシナリオ
- サーバーレス計算は、断続的で予測不可能な使用パターンがあり、非活動期間や平均計算利用率の低下が交互に起こる単一のデータベースに対して活用してください。
- 頻繁に再スケーリングされるプロビジョニングされた計算層の単一のデータベースや、計算再スケーリングをサービスに委譲したい場合にはサーバーレス計算を使いましょう。
- Azure SQL Databaseでのデプロイ前に計算サイズの見積もりが難しい、あるいは不可能な場合は、使用履歴のない新しい単一データベースにはサーバーレス計算を使いましょう。
プロビジョニング済みコンピューティングに最適なシナリオ
- より規則的で予測可能な使用パターンと、時間とともに平均計算利用率が高い単一のデータベースにはプロビジョニング済み計算を活用してください。
- 頻繁なメモリトリミングや一時停止からの再開遅延によるパフォーマンストレードオフに耐えられないデータベースには、プロビジョニング済み計算を使いましょう。
- 複数のデータベースに対して、断続的かつ予測不可能な使用パターンを持つプロビジョド計算を使い、それらをエラスティックプールに統合してより良い価格パフォーマンス最適化を実現します。
コンピュート階層の比較
次の表は、サーバーレス コンピューティング レベルとプロビジョニング済みコンピューティング レベル間の違いをまとめたものです。
| サーバーレス コンピューティング | プロビジョン済みのコンピュート | |
|---|---|---|
| データベースの使用パターン | 長期にわたって平均コンピューティング使用率が低い、間欠的で予測できない使用状況。 | 長期間にわたって平均コンピューティング使用率が高い、より定期的な使用パターン、またはエラスティック プールを使用する複数のデータベース。 |
| パフォーマンス管理作業 | 削減 | より高い |
| コンピューティングのスケーリング | 自動 | マニュアル |
| 初期計算応答性 | 非アクティブな期間後、値が低くなる | 即時 |
| 請求の最小単位 | 1 秒あたり | 1 時間あたり |
- サーバーレス計算における最適なデータベース利用パターンは断続的で予測不可能であり、時間とともに平均計算利用率が低いです。 プロビジョニングされた計算の最適な使用パターンは、より規則的で平均計算利用率が時間とともに高まるか、複数のデータベースをエラスティックプールに含むことです。
- サーバーレスコンピュートはパフォーマンス管理の手間が少なくて済みます。 プロビジョニングされたコンピューティングリソースでは、パフォーマンス管理により多くの労力が必要です。
- サーバーレスの計算は自動的にスケールします。 プロビジョニングされたコンピューティングは手動でスケールアウトします。
- サーバーレスコンピュートは非アクティブな期間後の初期応答が低くなります。 プロビジョニング済みのコンピュートは即座に応答します。
- サーバーレスコンピュートは秒単位で請求されます。 プロビジョニングされたコンピュートは時間単位で請求されます。
購入モデルとサービス レベル
次の表は、購入モデル、サービス レベル、ハードウェアに基づいたサーバーレス サポートについてまとめたものです。
| カテゴリ | サポートされています | サポートされていません |
|---|---|---|
| 購入モデル | vCore | DTU |
| サービス レベル |
汎用 ハイパースケール |
Business Critical |
| ハードウェア | Standard シリーズ (Gen5) | その他すべてのハードウェア |
自動スケーリングサーバーレスデータベース
自動スケーリングおよびサーバーレス計算層のレスポンシブ性についての詳細は、Azure SQL DatabaseのServerless compute tier auto-scalingをご覧ください。
自動一時停止と自動再開
- サーバーレスの自動一時停止および自動再開は、汎用サービス層で利用可能です。
- サーバーレスの自動一時停止および自動再開は、Azure SQL Database Hyperscale のプレビュー機能です。
自動一時停止および自動再開の動作、トリガー、トラブルシューティング、接続性の詳細については、 サーバーレス計算層の自動一時停止および自動再開を参照してください。
新しいサーバーレス データベースを作成する
Azureポータル、PowerShell、Azure CLI、T-SQLを使ったサーバーレスデータベースの作成、移動、設定に関するステップバイステップの手順については、「サーバーレスデータベースの作成と設定」をご覧ください。
サーバーレス計算層のベストプラクティス
サーバーレスデータベースを使用する際の以下のベストプラクティスを考慮してください。
アプリケーション再試行ロジックの実装
すべてのクラウド接続アプリケーションは 接続再試行ロジックの推奨を適用すべきです。 一時的な接続エラーは、すべてのクラウドアプリケーションでリトライロジックで処理しなければなりません。 サーバーレスデータベースのリトライロジックは、自動再開による一時的な接続エラーが予測可能であるため特に重要です。
詳細は 「自動再開接続のトラブルシューティング」をご覧ください。
自動一時停止を防ぐ相互運用性をレビューする
一部の機能や設定によって、 サーバーレスデータベースの自動停止を防ぐことができます。 これらの機能が使われている場合は、データベースの自動一時停止を無効にできます。
詳細は「 自動一時停止のトラブルシューティング」をご覧ください。
モニター
サーバーレスデータベースの一時停止および再開イベントの監視についての詳細は、「Azure SQL Databaseのサーバーレス計算層の監視」をご覧ください。
リソース制限
リソース制限については、 汎用サーバーレス計算 および ハイパースケールサーバーレス計算を参照してください。
課金
計算コスト計算、最小計算請求、一般目的およびハイパースケール両ティアのシナリオ例を含む詳細な請求情報については、 サーバーレス計算層請求を参照してください。
対応リージョン
リージョン別の可用性については、 Azure SQL Database のリージョン別のサーバーレス可用性に関するページを参照してください。