この記事では、アマゾン ウェブ サービス (AWS) 上のオペレーション データベース サービスとAzureを比較します。 ドキュメント、キー値、ワイド列、グラフ、メモリ内のワークロード用のリレーショナル データベースと非リレーショナル データ ストアについて説明します。
データ統合、データ レイク、データ ウェアハウス、ストリーム処理、ビジネス インテリジェンスについては、Azure と AWS の分析サービスを参照してください。
Amazon RDS と Azure リレーショナル データベース サービス
Azureでは、Amazon Relational Database Service (Amazon RDS) を通じて使用可能なエンジンに対応する複数のデータベース エンジンのマネージド サービスを提供します。 これらのサービスには、次のようなものがあります。
- Azure SQL データベース
- Azure Database for MySQL
- Azure Database for PostgreSQL
- Microsoft Fabric の SQL Database
| タイプ | AWS サービス | Azure サービス | Description |
|---|---|---|---|
| リレーショナル データベース | Amazon RDS |
Azure SQL データベース Azure Database for MySQL Azure Database for PostgreSQL |
回復性、スケール、メンテナンスが主にAzure プラットフォームによって処理されるマネージド リレーショナル データベース サービス。 |
| サーバーレス リレーショナル データベース | Amazon Aurora サーバーレス |
Azure SQL Database サーバーレス Microsoft Fabric の SQL Database |
ワークロードの需要に基づいてコンピューティングを自動的にスケーリングするデータベース サービス。 Azure SQL Database のサーバーレスは、実際に使用したコンピューティングに対して 1 秒単位で課金されます。 Fabricの SQL Database は、購入した容量 SKU に基づいて課金されます。 |
| 分離されたコンピューティングとストレージを備えたクラウドネイティブ PostgreSQL | Amazon Aurora PostgreSQL | Azure HorizonDB (プレビュー) | コンピューティングをストレージから分離し、レプリカを通じて読み取りをスケーリングし、ゾーン回復性の高いストレージを既定で提供する PostgreSQL と互換性のあるサービス。 プレビュー段階であるため、運用環境への移行を計画する前に、現在の状態を確認してください。 |
SQL Server、Oracle、MySQL などの他のデータベース エンジンは、Azure仮想マシン インスタンスにデプロイできます。
Amazon RDS のコストは、CPU、RAM、ストレージ、ネットワーク帯域幅など、インスタンスが使用するハードウェア リソースの量によって異なります。 Azure データベース サービスでは、コストは、データベースのサイズ、コンカレント接続数、およびスループット レベルによって決まります。 Microsoft Fabric では、コストは購入した容量 SKU に基づきます。この SKU により、一定数の容量ユニット (CU) が付与されます。 これらの CU は、Microsoft Fabric の SQL Database を含むすべての Fabric ワークロード全体で共有されます。
詳細については、以下を参照してください:
非リレーショナル データベース サービス
AWS とAzureは、個別のデータ モデルに対して非リレーショナル サービスを提供します。 互換性のある API では、機能や運用上のパリティは保証されません。 移行前に、パーティション分割、整合性、トランザクション、インデックス作成、クエリ動作、変更ストリーム、グローバル分散、スループット ユニット、クライアント ドライバーの互換性を比較します。
Azure Cosmos DBでは、複数の API とデータ モデルがサポートされます。 API ごとに個別のアカウントを作成し、そのアカウント内のデータへのすべてのアクセスに同じ API を使用します。 Azureでは、MongoDB と互換性のある仮想コアベースのドキュメント ワークロード用Azure DocumentDB と、マネージド オープンソース Cassandra クラスター用の Apache Cassandra 用のAzure Managed Instanceも提供されます。
メモリ内キャッシュと一時データの場合、Azure Managed Redis は Redis Enterprise に基づくマネージド サービスを提供します。 ワークロードの権限のある永続的データベースとして使用しないでください。
詳細については、以下を参照してください:
サービスの比較
| データ モデルまたは機能 | AWS サービス | Azure サービス | 選択ガイダンス |
|---|---|---|---|
| マネージド リレーショナル データベース | Amazon RDS | Azure SQL Database、Azure Database for MySQL、またはAzure Database for PostgreSQL | 最初にデータベース エンジンで選択します。 次に、高可用性、読み取りレプリカ、スケーリング、メンテナンス、拡張機能、移行のサポートを比較します。 |
| サーバーレス リレーショナル データベース | Amazon Aurora サーバーレス | Azure SQL Database serverless または Microsoft Fabric の SQL Database | これらのサービスでは、さまざまなスケーリングモデルと課金モデルが使用されます。 SQL Database サーバーレスでは、非アクティブな間にコンピューティングと一時停止を自動的にスケーリングできます。 Fabricの SQL Database は、共有Fabric容量を消費し、運用データをFabric分析と統合します。 |
| キー値とドキュメント データベース | Amazon DynamoDB | NoSQL 向け Azure Cosmos DB | どちらのサービスも、パーティション キーによってデータを分散し、変更ストリームを提供します。 一貫性、インデックス作成、クエリ、トランザクション、容量、および価格モデルは異なります。 API の互換性を想定するのではなく、アプリケーションとデータ モデルの変更を計画します。 |
| MongoDB 互換ドキュメント データベース | Amazon DocumentDB | Azure DocumentDB または Azure Cosmos DB for MongoDB | Azure DocumentDB では、仮想コア モデルと MongoDB ワイヤ プロトコルが使用されます。 MongoDB 用のAzure Cosmos DBは、分散された要求ユニット ベースのサービスを提供します。 サポートされている MongoDB のバージョン、コマンド、拡張機能、スケーリング、移行ツールを検証します。 |
| ワイド列データベース | Amazon Keyspaces for Apache Cassandra | Apache Cassandra のAzure Cosmos DBまたは Apache Cassandra のAzure Managed Instance | Cassandra プロトコルの互換性を備えたマネージド Azure Cosmos DB サービスが必要な場合は、Cosmos DB for Apache Cassandra を使用します。 マネージド オープンソースの Cassandra クラスターとエンジン レベルの互換性が向上する必要がある場合は、Managed Instanceを使用します。 |
| グラフ データベース | Amazon のネプチューン | Apache Gremlin のAzure Cosmos DB | ネプチューンでは、プロパティ グラフと RDF ワークロードがサポートされています。 Gremlin のAzure Cosmos DBでは、プロパティ グラフ モデルと Gremlin クエリ言語がサポートされています。 RDF ワークロードと SPARQL ワークロードには、別の設計が必要です。 |
| テーブルデータ | Amazon DynamoDB | Azure Table Storage または Azure Cosmos DB for Table | 基本的なキー属性ストレージには Table Storage を使用します。 グローバル分散スループット、複数の整合性オプション、および Azure Cosmos DB の機能が必要な場合は、Azure Cosmos DB for Table を使用します。 |
| メモリ内キャッシュと一時データ ストア | Amazon ElastiCache | Azure Managed Redis | キャッシュ、セッション、メッセージング、およびその他の待機時間の短い一時データ パターンには、Azure Managed Redis を使用します。 権限のあるデータを永続的なデータベースに保持します。 |
| Durable Redis 互換データベース | Amazon MemoryDB | 直接同等の機能はありません | Amazon MemoryDB は、永続的なプライマリ データベースとして設計されています。 Azure Managed Redis は、キャッシュと一時データ ストアです。 Azureで、Azure Cosmos DBまたは別の永続的なデータベースをレコードのシステムとして評価し、Azure Managed Redis をオプションのキャッシュとして使用します。 |
| データベース移行 | AWS Database Migration Service | Azure Database Migration Service | サポートは、ソース、ターゲット、オンラインまたはオフラインの移行モードによって異なります。 ツールを選択する前に、現在サポートされているAzure移行シナリオを確認します。 |
移行に関する考慮事項
データベースの移行には、データの移動以上のものが必要です。 インベントリ エンジンの機能、ストアド プロシージャ、拡張機能、インデックス、整合性の前提条件、パーティション キー、トランザクション境界、変更データ キャプチャの依存関係、および運用プロセス。 カットオーバーの前に、ターゲット サービスに対してアプリケーションの動作とパフォーマンスをテストします。
AWS ワークロードをAzureに移行する場合は、AWS から Azure へのデータベースの移行とその移行シナリオの例を参照してください。
貢献者達
Microsoft では、この記事を保持しています。 この記事を書いたのは、以下の寄稿者です。
主要著者:
- Yuri Baijnath | シニアクラウドソリューションアーキテクトマネージャー
その他の共同作成者:
- リチャード・フィッツジェラルド |シニア クラウド ソリューション アーキテクト
公開されていない LinkedIn プロフィールを見るには、LinkedIn にサインインしてください。