変更要約: DP-900 第2章を AZ-900 基準まで深掘り(テーブル/型/キー/インデックス/ビュー/正規化+SQL4分類表・コード例、Azureリレーショナルサービス+IaaS/PaaS責任範囲表・選定シナリオ・FAQ)。図2枚ja化
2.2Azure のリレーショナルデータサービス
Azure SQL Database、SQL Managed Instance、SQL Server on VM、Azure Database for PostgreSQL/MySQL など、Azure のリレーショナルサービスと、IaaS と PaaS の責任範囲の違い、選定の考え方を理解します。
Azure には用途に応じた複数のリレーショナルサービスがあります。選ぶ軸は2つ。どれだけ自分で管理したいか(IaaS か PaaS か) と、どのエンジンを使うか(SQL Server 系か、PostgreSQL/MySQL などのオープンソースか) です。クラウドでは「自分で運用する手間」と「自由に制御できる範囲」がトレードオフになります。
2.2.1主なサービス
- Azure SQL Database:フルマネージドな PaaS。パッチ・バックアップ・可用性は Azure 任せ。新規のクラウドアプリ向け。
- SQL Managed Instance:SQL Server と高い互換性を持つ PaaS。既存の SQL Server からの移行(リフト&シフト)に向く。
- SQL Server on VM:IaaS。OS まで自分で管理し、完全に制御できる。特殊な構成や OS レベルの要件がある場合に。
- Azure Database for PostgreSQL / MySQL:オープンソースエンジンのマネージドサービス。既存 OSS アプリ向け(※Azure Database for MariaDB は 2025 年 9 月に廃止済み)。
| サービス | モデル | 制御 / 運用負荷 | 向く場面 |
|---|---|---|---|
| Azure SQL Database | PaaS | 低い制御 / 低い負荷 | 新規クラウドアプリ |
| SQL Managed Instance | PaaS | 中 / 中 | SQL Server からの移行 |
| SQL Server on VM | IaaS | 高い制御 / 高い負荷 | OS まで制御したい |
| DB for PostgreSQL/MySQL | PaaS | 低い制御 / 低い負荷 | OSS エンジン利用 |
2.2.2IaaS と PaaS の責任範囲
IaaS(SQL Server on VM)では、Azure はハードウェアと仮想化までを担い、その上の OS・SQL Server のパッチ・バックアップ・可用性構成は利用者の責任です。自由度は最大ですが運用の手間も最大です。PaaS(Azure SQL Database など)では、これらの運用を Azure が肩代わりするため、利用者はデータとスキーマ、アクセス制御に集中できます。手間は減りますが、OS への直接アクセスなど一部の自由度は失われます。これは「責任共有モデル」がデータベースにも当てはまる、という考え方です。
シナリオ:3つの選定。
①ゼロから作るクラウド業務アプリ→運用を任せたいので Azure SQL Database(PaaS)。
②オンプレの SQL Server を機能を変えずに移したい→SQL Managed Instance(高互換)。
③OS レベルの特殊なエージェントや古い構成が必須→SQL Server on VM(IaaS)。既存アプリが PostgreSQL なら Azure Database for PostgreSQL。
混同に注意:
①PaaS(Azure SQL Database)はパッチ・バックアップを Azure が実施——利用者がやると思い込まない。
②Managed Instance は「移行・互換性重視」、Azure SQL Database は「新規・最小運用」と覚える。
③SQL Server on VM だけが IaaSで、残りは PaaS。
④これらはリレーショナルサービス。Cosmos DB(次章)は非リレーショナルで別物。
Q. Azure SQL Database と SQL Managed Instance はどちらも PaaS。違いは? SQL Database は単一データベース中心で最小運用、Managed Instance は SQL Server のインスタンス機能(SQL Agent、クロスDBクエリ等)まで高互換で移行向きです。Q. PaaS だとバックアップは自分で取る? いいえ、Azure が自動でバックアップします(保持期間内の復元も可能)。Q. オープンソースの DB は使える? はい、PostgreSQL・MySQL のマネージドサービスがあります(MariaDB は 2025 年 9 月に廃止)。
「フルマネージドな PaaS = Azure SQL Database」「OS まで制御したい= SQL Server on VM(IaaS)」「SQL Server からの移行重視= Managed Instance」「OSS エンジン= Azure Database for PostgreSQL/MySQL」 の対応が頻出です。PaaS ではパッチ・バックアップを Azure が担います。
2.2.3この節のまとめ
- Azure SQL Database=フルマネージドPaaS(新規・最小運用)、SQL Server on VM=IaaS(完全制御)
- Managed Instance=SQL Server高互換(移行向き)、PostgreSQL/MySQL=OSSエンジンのマネージド
- PaaS は運用を Azure が肩代わり(パッチ・バックアップ・可用性)、IaaS は自由だが手間も大
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. パッチ・バックアップ・可用性を Azure に任せられる、フルマネージドなリレーショナル PaaS はどれですか?
Q2. OS レベルまで自分で管理し完全に制御したい場合に適した選択肢はどれですか?
Q3. オンプレミスの SQL Server から高い互換性を保って移行したい場合に適した PaaS はどれですか?
Q4. PostgreSQL や MySQL などオープンソースエンジンをマネージドで使いたい場合に適したサービスはどれですか?
Q5. PaaS(Azure SQL Database)における運用の責任について正しいものはどれですか?

