データ オプションを確認する
クラウド導入のためのランディング ゾーン環境を準備するとき、ワークロードをホストするためのデータ要件を決定する必要があります。 Azure のデータベース製品とサービスは、さまざまなデータ ストレージのシナリオと機能をサポートしています。 データ要件に対応するためのランディング ゾーン環境の構成方法は、ワークロードのガバナンス、技術的要件、ビジネス要件によって異なります。
データ サービスの要件を特定する
ランディング ゾーンの評価と準備の一環として、ランディング ゾーンでサポートする必要があるデータ ストアを特定する必要があります。 このプロセスには、データ ストレージ要件とアクセス要件を決定するためにワークロードを構成する各アプリケーションとサービスを評価する作業が含まれます。 これらの要件を特定して文書化すると、ランディング ゾーンのポリシーを作成して、ワークロードのニーズに基づいて許可されるリソースの種類を制御できます。
ランディング ゾーン環境にデプロイする各アプリケーションまたはサービスに対しては、次の情報を出発点として使用すると、適切なデータ ストア サービスを決定して使用するのに役立ちます。
主な質問
ワークロードに関する次の質問に答えると、Azure データベース サービスのデシジョン ツリーに基づいて意思決定を行うのに役立ちます。
- OS とデータベース エンジンに必要な制御のレベルはどの程度ですか? 一部のシナリオでは、データベース ワークロードのソフトウェア構成とホスト サーバーに関する高度な制御または所有権が必要です。 これらのシナリオでは、データ サービスのデプロイと構成を完全に制御できるカスタムのサービスとしてのインフラストラクチャ (IaaS) 仮想マシンをデプロイできます。 このレベルの制御は必要ないかもしれませんが、完全なサービスとしてのプラットフォーム (PaaS) ソリューションに移行する準備ができていない可能性があります。 その場合、マネージド インスタンスを使用すると、フル マネージド プラットフォームの利点を提供しながら、オンプレミスのデータベース エンジンとの互換性を高めることができます。
- ワークロードでリレーショナル データベース テクノロジを使用しますか? そうである場合は、どのようなテクノロジを使用する予定ですか? Azure では、 Azure SQL Database、MySQL、PostgreSQL、MariaDB に対する PaaS のマネージド データベース機能を提供します。
- Azure Cosmos DB では、自動高可用性や瞬時のスケーラビリティなど、Azure Cosmos DB が提供する多くの利点を活用するために、MongoDB と PostgreSQL API がサポートされています。
- ワークロードで SQL Server を使用しますか? Azure では、Azure Virtual Machines 上の SQL Server (IaaS ベース) または Azure SQL Database ホステッド サービス (PaaS ベース) でワークロードを実行できます。 どちらのオプションを使用するかは、主に、データベースの管理、修正プログラムの適用、バックアップの実行を自分で行うか、あるいはこれらの操作を Azure に委任するかどうかの問題です。 シナリオによっては、互換性の問題により、IaaS でホストされる SQL Server の使用が必要になることがあります。 ワークロードに適したオプションを選択する方法の詳細については、「Azure で適切な SQL Server オプションを選択する」を参照してください。
- ワークロードでキー/値データベース ストレージを使用しますか?Azure Cache for Redis は、高速でスケーラブルなアプリケーションを実現できる、高性能のキャッシュ キー/値データ ストレージ ソリューションを提供します。 Azure Cosmos DB も、汎用的なキー/値ストレージ機能を提供します。
- ワークロードでドキュメントまたはグラフ データを使用しますか?Azure Cosmos DB は、さまざまなデータ型と API をサポートするマルチモデル データベース サービスです。 Azure Cosmos DB には、ドキュメントおよびグラフ データベースの機能もあります。
- MongoDB と Apache Gremlin は、Azure Cosmos DB でサポートされているドキュメントおよびグラフ API です。
- ワークロードでは列ファミリ データが使用されますか?Azure Managed Instance for Apache Cassandra には、既存のデータセンターを Azure に拡張することや、クラウド専用のクラスターとデータセンターとして機能することができるフル マネージドの Apache Cassandra クラスターが用意されています。
- Apache Cassandra API は Azure Cosmos DB でもサポートされています。 製品比較のドキュメントを参照して、ワークロードに最適な判断を導きます。
- ワークロードに大容量のデータ分析機能が必要ですか? Azure Synapse Analytics を使用すると、構造化されたペタバイト規模のデータを効率的に格納し、クエリを実行できます。 非構造化ビッグ データ ワークロードの場合、Azure Data Lake を使用すると、ペタバイト規模のファイルと数兆個のオブジェクトを保存して分析できます。
- ワークロードに検索エンジンの機能が必要ですか? Azure Cognitive Search を使用すると、アプリケーションに統合できる、AI で強化されたクラウドベースの検索インデックスを作成できます。
- ワークロードには時系列データを使用しますか?Azure Time Series Insights は、IoT デバイスによって生成されたデータなどの大量の時系列データの格納、視覚化、クエリ実行のために構築されています。
Note
各アプリケーションまたはサービスのデータベース オプションを評価する方法の詳細については、「Azure アプリケーション アーキテクチャ ガイド」で確認してください。
一般的なデータベース シナリオ
次の表は、一般的な使用シナリオの要件と、その処理に推奨されるデータベース サービスをリストしています。
目的 | このデータベース サービスを使用する |
---|---|
クラウドで管理されたインテリジェントな SQL データベースを使用して、スケーリングするアプリを構築します。 | Azure SQL Database |
クラウドで常に最新のマネージド SQL インスタンスを使用して、SQL Server アプリケーションを最新化します。 | Azure SQL Managed Instance |
完全な SQL Server 互換性とオペレーティング システム レベルのアクセスを維持しながら、SQL ワークロードを Azure に移行します。 | Azure Virtual Machines における SQL Server |
オープンソースの PostgreSQL で、スケーラブルで安全なフル マネージドのエンタープライズ対応アプリを構築し、単一ノード PostgreSQL をハイ パフォーマンスでスケールアウトしたり、PostgreSQL と Oracle ワークロードをクラウドに移行したりします。 | Azure Database for PostgreSQL |
マネージド コミュニティの MySQL データベース サービスを使用してオープンソースのモバイルおよび Web アプリに高可用性とエラスティック スケーリングを提供したり、MySQL ワークロードをクラウドに移行したりします。 | Azure Database for MySQL |
マネージド コミュニティの MariaDB データベース サービスを使用して、オープンソースのモバイルおよび Web アプリに高可用性と柔軟なスケーリングを提供します。 | Azure Database for MariaDB |
任意の場所、任意の規模で低待機時間と高可用性が保証されたアプリケーションを構築したり、Cassandra、MongoDB、Gremlin、およびその他の NoSQL ワークロードをクラウドに移行したりします。 | Azure Cosmos DB |
既存の Cassandra データ クラスターとアプリを最新化し、マネージド インスタンス サービスによる柔軟性と自由を享受します。 | Azure Managed Instance for Apache Cassandra |
広範なセキュリティが追加料金なしであらゆるレベルに組み込まれた、フル マネージドのエラスティック データ ウェアハウスを構築します。 | Azure Synapse Analytics |
オープンソースとの互換性があるインメモリ データ ストアにより、アプリケーションを高速でスケーラブルにします。 | Azure Cache for Redis |
データベース機能の比較
次の表は、Azure データベース サービスで使用できる機能をリストしています。
機能 | Azure SQL データベース | Azure SQL Managed Instance | Azure Database for PostgreSQL | Azure Database for MySQL | Azure Database for MariaDB | Azure Managed Instance for Apache Cassandra | Azure Cosmos DB | Azure Cache for Redis | Azure Cosmos DB for MongoDB | Azure Cosmos DB for Gremlin |
---|---|---|---|---|---|---|---|---|---|---|
データベースの種類 | 関係 | 関係 | 関係 | 関係 | 関係 | NoSQL | NoSQL | メモリ内 | NoSQL | グラフ |
データ モデル | 関係 | 関係 | 関係 | 関係 | 関係 | マルチモデル: ドキュメント、ワイドカラム、キー値、グラフ | ワイドカラム | キー値 | ドキュメント | グラフ |
分散マルチマスター書き込み | いいえ | 番号 | 番号 | 番号 | 番号 | イエス | はい | はい (Enterprise と Flash レベルのみ) | はい | はい |
仮想ネットワーク接続のサポート | 仮想ネットワーク サービス エンドポイント | ネイティブ仮想ネットワーク実装 | 仮想ネットワーク インジェクション (フレキシブル サーバーのみ) | 仮想ネットワーク インジェクション (フレキシブル サーバーのみ) | 仮想ネットワーク サービス エンドポイント | ネイティブ仮想ネットワーク実装 | 仮想ネットワーク サービス エンドポイント | 仮想ネットワーク インジェクション (Premium、Enterprise、Flash レベルのみ) | 仮想ネットワーク サービス エンドポイント | 仮想ネットワーク サービス エンドポイント |
Note
プライベート リンク サービスは、Azure サービスがプライベート ネットワーク経由で通信できるようにネットワーク設計を簡素化します。 これは、すべての Azure データベース サービスでサポートされています。 Managed Instance データベース サービスの場合、これらのインスタンスは仮想ネットワークにデプロイされるため、プライベート エンドポイントをデプロイする必要がなくなります。
リージョン別の提供状況
Azure を利用すれば、顧客やパートナーがいる場所を問わず、彼らを獲得するために必要なスケールでサービスを提供できます。 クラウドのデプロイを計画する際の重要な要素として、ワークロード リソースをホストする Azure リージョンの決定があります。
ほとんどのデータベース サービスは、ほとんどの Azure リージョンで一般提供されています。 いくつかのリージョンでは、これらの製品のサブセットのみがサポートされていますが、主に政府機関のお客様が対象です。 データベース リソースをデプロイするリージョンを決定する前に、「リージョン別の利用可能な製品」を参照して、最新のリージョン別の提供状況を確認してください。
Azure のグローバル インフラストラクチャの詳細については、「Azure の地域」を参照してください。 また、各 Azure リージョンで利用可能なサービス全体の具体的な詳細については、「リージョン別の利用可能な製品」を参照してください。
データの保存場所とコンプライアンスの要件
多くの場合は、データ ストレージに関連した法律上および契約上の要件がワークロードに適用されます。 これらの要件は、組織の場所、データ ストアをホストしている物理的な資産の管轄区域、および該当する事業部門によって異なることがあります。 考慮すべきデータ義務の構成要素には、以下のものがあります。
- データ分類
- データの場所。
- 共有責任モデルに基づくデータ保護の責任。
これらの要件の理解に役立つ情報として、Azure による準拠データ所在地とセキュリティの実現に関する記事を参照してください。
コンプライアンスの取り組みの一環として、データベース リソースが物理的に配置されている場所の制御が必要になる場合があります。 Azure リージョンは地域と呼ばれるグループに編成されています。 Azure の地域では、データの保存場所、主権、コンプライアンス、回復性に関する要件が地域的および政治的な境界内で確実に遵守されます。 ワークロードがデータ主権やその他のコンプライアンス要件の影響を受ける場合は、要件に準拠している Azure 地域のリージョンにストレージ リソースをデプロイする必要があります。
データベース サービスの制御を設定する
ランディング ゾーン環境を準備するときに、ユーザーがデプロイできるデータ ストアを制限するコントロールを設定できます。 コントロールは、コストを管理し、セキュリティ リスクを限定的なものにするのに役立ちます。 開発者と IT チームは、ワークロードをサポートするために必要なリソースをデプロイおよび構成できます。
ランディング ゾーンの要件を特定して文書化したら、Azure Policy を使用して、ユーザーに作成を許可するデータベース リソースを制御できます。 これらの制御は、データベース リソースの種類の作成を許可または拒否するという形をとることができます。
たとえば、ユーザーが Azure SQL Database リソースのみを作成するように制限することができます。 また、ポリシーを使用して、リソースの作成時に許容されるオプションを制御することもできます。 たとえば、特定のバージョンの SQL Server のみを IaaS VM にインストールできるようにすることで、プロビジョニングできる SQL Database SKU を制限できます。 詳細については、「Azure Policy の組み込みのポリシー定義」を参照してください。
ポリシーは、リソース、リソース グループ、サブスクリプション、および管理グループにスコープを設定できます。 これらのポリシーを Azure Blueprints の定義に含め、クラウド資産全体で繰り返し適用できます。
次のステップ
- データベース セキュリティに関するベスト プラクティスを確認します。
- Azure SQL のデプロイ オプションの比較を確認します。