変更要約: DP-300 第1章を深掘り(図ja化・比較表/シナリオ/FAQ/ひっかけ/深掘り段落を全節に追加)
1.1Azure における SQL のデプロイ選択肢
Azure で SQL を動かす 3 つの選択肢——Azure SQL Database(PaaS)・Azure SQL Managed Instance(PaaS・高互換)・SQL Server on Azure VM(IaaS)——の違いと使い分けを理解します。DP-300 の出発点です。
Azure で SQL を使うには管理範囲と互換性のトレードオフで 3 つの選択肢があります。どこまで Azure に任せ、どこまで自分で制御するかで選びます。
1.1.13 つのデプロイ選択肢
- Azure SQL Database:PaaS の単一データベース。単一 DB・エラスティックプール・サーバーレスがあり、最も管理が楽。
- Azure SQL Managed Instance:PaaS でほぼ完全な SQL Server 互換(インスタンス単位)。オンプレからの移行に向く。
- SQL Server on Azure VM:IaaS で OS と SQL を自分で管理。最大の制御(OS レベルの機能が必要なとき)。
- 購入モデル:vCore(柔軟・推奨)と DTU(簡易)。Hyperscale など大規模向けサービスレベルもある。
「管理が最も楽な PaaS 単一 DB=Azure SQL Database」「ほぼ完全な SQL Server 互換で移行向き=Managed Instance」「OS レベルの制御が必要=SQL on VM」「柔軟な購入モデル=vCore」 は DP-300 で頻出です。互換性/制御が必要なら MI/VM、運用を任せたいなら SQL Database と判断します。
SQL Agent(ジョブ)や クロスDBクエリなど一部のインスタンス機能は SQL Database では制限され、Managed Instance で利用できます。要件で選択が変わります。
デプロイ選択は「責任共有の範囲」で決まります。SQL Database は OS・パッチ・バックアップ・高可用性を Azure が管理し、利用者は DB とデータに集中(論理サーバー の配下に DB を作り、単一 DB/複数 DB でリソースを共有する エラスティックプール/使用時だけ課金する サーバーレス を選ぶ)。Managed Instance は SQL Agent・クロス DB クエリ・CLR・リンクサーバーなどインスタンス機能を保ったまま PaaS 化でき、専用サブネット(VNet)に配置されるため移行に最適。SQL on VM は OS とエンジンを完全制御でき、特定ビルドや OS レベル機能、サードパーティ連携が要るときに選びます。購入モデルは vCore(コンピュートとストレージを独立に指定・Azure Hybrid Benefit でライセンス流用・予約割引が効く)と DTU(コンピュート/メモリ/IO を束ねた簡易指標)。SQL Database/MI は 確定的(Provisioned) と サーバーレス の計算モデル、メンテナンスは Azure が実施(メンテナンス期間を選択可)という点も押さえます。
| 観点 | SQL Database | Managed Instance | SQL on VM |
|---|---|---|---|
| 種別 | PaaS(単一DB) | PaaS(インスタンス) | IaaS |
| 互換性 | DB レベル(一部制限) | ほぼ完全な SQL Server | 完全(任意ビルド) |
| 管理負担 | 最小 | 中 | 最大(OS含む) |
| 代表用途 | 新規・クラウド最適 | オンプレ移行 | OS/特定機能が必要 |
シナリオ: オンプレの SQL Server を、SQL Agent ジョブやクロス DB クエリを使ったまま、できるだけ運用を任せて Azure へ移したい。→ Managed Instance を選びます(インスタンス機能を保ちつつ PaaS の運用委譲)。OS レベルの特殊要件があるなら SQL on VM、逆に新規でクラウド最適化を狙うなら SQL Database を選びます。
FAQ: Q. vCore と DTU はどちらを選ぶ? → A. 柔軟性・Azure Hybrid Benefit・予約割引が使える vCore が推奨。DTU は小規模・簡易見積り向けです。Q. エラスティックプールとは? → A. 複数 DB で vCore/DTU を共有し、利用ピークがずれる多数 DB のコストを最適化する仕組みです。
ひっかけ: 「SQL Database(単一DB)でも SQL Agent ジョブやクロス DB クエリがそのまま使える」は誤りです。それらは Managed Instance(や SQL on VM)の機能。また「SQL on VM は Azure がパッチや OS を管理する」も誤り(IaaS なので OS/パッチは利用者の責任)。
1.1.2この節のまとめ
- SQL Database(PaaS単一DB)/Managed Instance(PaaS高互換)/SQL on VM(IaaS)
- 購入モデル=vCore(推奨)/DTU
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. 管理の手間を最小化したい単一データベース向けの PaaS はどれですか?
Q2. オンプレの SQL Server をほぼ完全な互換性で Azure の PaaS に移行したい。どれを選びますか?
Q3. OS レベルの構成や SQL Server の完全な制御が必要な場合に適すのはどれですか?

