Azure クラウド データベース 技術

Azure SQL Databaseとは?

Azure SQL Databaseに触れる機会がありましたので、概要をまとめようと思います。


概要

  • 常に最新の安定したバージョンのSQL Serverデータベースエンジン及びパッチが適用されたOS上で実行される。
  • 99.9%の可用性が担保されている。
  • バックアップも組み込まれた完全なマネージドサービスである。

モデルの購入

次の購入モデルが用意されています。

  1. 仮想コアベース
  2. DTUベース

仮想コアベース

仮想コアの数、メモリの量、ストレージの容量と速度を選択でき、また3つのサービスレベルが提供されています。

  1. General Purpose
  2. Business Critical
  3. Hyperscale

また2つのコンピューティングレベルが用意されています。

  • プロビジョニング済みコンピューティングレベル
  • サーバーレスコンピューティングレベル

プロビジョニング済みコンピューティングレベルの場合、時間あたりの固定価格でプロビジョニング済みコンピューティングの量に対して請求が発生します。

サーバーレスコンピューティングレベルの場合、1秒あたりのコンピューティング使用量に対して請求が発生します。

ポイント

サーバーレスコンピューティングレベルは、General PurposeとHyperscaleで利用可能

DTUベース

データベースの軽量ワークロードから重量ワークロードまでをサポートするため、コンピューティングリソース、メモリリソース、I/Oリソースの組み合わせが、3 つのサービスレベルで提供されています。各レベルにおけるコンピューティングサイズでは、これらのリソースのさまざまな組み合わせが提供され、ストレージリソースを追加することができます。以下3つのサービスレベルが提供されています。

  1. Basic
  2. Standard
  3. Premium

ポイント

DTUベースの購入モデルの場合、プロビジョニング済みコンピューティングレベルのみ利用可能

※Azureコンソール上に選択画面含め、表示はされません

デプロイモデル

データベースのデプロイに関して次の選択肢があります。

  • 単一データベース
  • エラスティックプール

単一データベース

1つのデータベースが専用のリソースを持つモデルです。手動の動的スケーリングはサポートされますが、自動スケーリングはサポートされません。

自動スケーリングがサポートされる代替手段

  • 自動スケーリングを提供するサーバーレスレベルを使用 ※オートスケーリングなど
  • スクリプトを使用
  • エラスティックプールを使用

エラスティックプール

複数のデータベースでリソースを共有するモデルです。エラスティックプールを使用すると、プール内のすべてのデータベースによって共有されるリソースを割り当てることができます。リソースプールにデータベースを新規作成または既存の単一データベースを移動することで、リソースの使用を最大化しコストを削減することができます。

広範囲に及ぶ監視とアラートの機能

Azure SQL Databaseを監視及びトラブルシューティングする場合、以下の機能が用意されています。

  • 組み込みの監視機能
  • PaaS監視機能
  • Database Watcher

Azure SQL Databaseの組み込み監視機能は、リアルタイムのパフォーマンスに関する分析情報を得ることができます。またDatabase Watcherは、現在及び過去の詳細で低遅延の監視が可能となり、Azure SQL資産を単一ウインドウビューで確認できます。

可用性に関する機能

バックアップストレージの冗長性として、以下を選択できます。

  • ローカル冗長バックアップストレージ
  • ゾーン冗長バックアップストレージ
  • geo冗長バックアップストレージ
  • geoゾーン冗長バックアップストレージ

また組み込みのビジネス継続性とグローバルなスケーラビリティの機能もMicrosoft側で自動で用意されます。

  • 自動バックアップ
  • ポイントインタイムリストア
  • アクティブジオレプリケーション
  • フェールオーバーグループ
  • ゾーン冗長データベース

組み込みのインテリジェンス

膨大な量の利用統計情報を収集して処理します。

自動パフォーマンス監視とチューニング

推奨事項を自動的に適用し、テストを行い、パフォーマンスが確実に向上し続けるように各チューニングアクションを検証します。また自動チューニングは、データベースのパフォーマンスを注意深く監視し、全てのチューニングアクションの実行前と実行後のパフォーマンスを比較し、パフォーマンスが向上しない場合、チューニングアクションは元に戻されます。

ポイント

Azure SQL Databaseには、パフォーマンスを最大化するためのカスタマイズされた推奨事項を提供するデータベースアドバイザーが多数用意されています。

高度な脅威保護

Microsoft Defender for SQLは、高度なSQLセキュリティ機能のための統合パッケージです。主に脆弱性評価や脅威検出が行われます。

コンプライアンスとセキュリティの監査

データベースイベントを追跡し、Azure Storageアカウントの監査ログにイベントを書き込みます。監査により、規定遵守の維持、データベース活動の理解、およびビジネス上の懸念やセキュリティ違犯の疑いを示す差異や異常に対する洞察が容易になります。

データの暗号化

SQL Databaseは、暗号化を用いてデータを保護します。移動中のデータには、トランスポート層が使用されます。

データの検出と分類

データの検出と分類では、Azure SQL Databaseに組み込まれる、データベースの機密データの検出、分類、ラベル付け、および保護を行う機能が用意されます。これによりデータベースの分類状態の可視性が提供され、データベース内やその境界を越えて機密データへのアクセスが追跡されます。

Microsoft Entraの統合と多要素認証

SQL Databaseでは、Microsoft Entraとの統合によって、データベースユーザーのIDとその他のMicrosoftサービスを一元的に管理できます。この機能は、アクセス許可の管理を簡略化し、セキュリティを強化します。

その他

  • 修正プログラム適用によるダウンタイムは、メンテナンスウィンドウ機能を使用することで、Azure SQL Databaseの適格なデータベースの予測可能なメンテナンスウィンドウスケジュールを構成でき、調整することができます。
  • Azure SQL Databaseのバックアップは自動的に管理され、バックアップデータに直接アクセスできるユーザーはいません。またバックアップは、構成された保有期間の有効期限が切れると自動的に削除されます。

参考

https://learn.microsoft.com/ja-jp/azure/azure-sql/database/sql-database-paas-overview?view=azuresql#deployment-models


-Azure, クラウド, データベース, 技術