次の方法で共有


Azure で使用する分析データ ストアの選択

ビッグ データ アーキテクチャでは、多くの場合、分析ツールを使用してクエリを実行できる構造化形式で処理されたデータを提供する分析データ ストアが必要です。 ホット パス データとコールド パス データの両方のクエリをサポートする分析データ ストアは、まとめて サービス レイヤーまたは データ サービス ストレージと呼ばれます。

サービス レイヤーは、ホット パスとコールド パスの両方から処理されたデータを処理します。 ラムダ アーキテクチャでは、サービス レイヤーは 2 つのレイヤーに分割されます。 速度サービス レイヤーには、増分処理されたデータが含まれています。 バッチ 処理レイヤーには、バッチ処理された出力が含まれています。 サービス レイヤーでは、待機時間が短いランダム読み取りを強力にサポートする必要があります。 速度レイヤーのデータ ストレージでは、このストアにデータをバッチ読み込むと望ましくない遅延が発生するため、ランダム書き込みもサポートする必要があります。 または、バッチ レイヤーのデータ ストレージでは、ランダムな書き込みではなく、バッチ書き込みをサポートする必要があります。

すべてのデータ ストレージ タスクに最適なデータ管理の選択肢は 1 つもありません。 各データ管理ソリューションは、異なるタスクに合わせて最適化されています。 ほとんどの実際のクラウド アプリとビッグ データ プロセスには、さまざまなデータ ストレージ要件があり、多くの場合、データ ストレージ ソリューションの組み合わせを使用します。

Microsoft Fabricなどの最新の分析ソリューションは、さまざまな分析ニーズを満たすためにさまざまなデータ サービスとツールを統合する包括的なプラットフォームを提供します。 Fabric には、組織全体の単一の統合された論理データ レイクである OneLake が含まれています。 OneLake は、すべての組織データを 1 つの場所に格納、管理、セキュリティで保護するように設計されています。 この柔軟性により、組織はさまざまなデータ ストレージと処理の要件に対応できます。

分析データ ストアの選択

Azure にはデータ サービス ストレージのオプションがいくつかあり、必要に応じて選択できます。

次のデータベース モデルは、さまざまな種類のタスクに最適化されています。

  • キー値データベースには、キー値 ごとに 1 つのシリアル化されたオブジェクトが格納されます。 これらは、取得が特定のキーに基づいている場合に大量のデータを管理するのに適しています。他の項目プロパティを照会する必要はありません。

  • ドキュメント データベース は、値が ドキュメントであるキー値データベースです。 このコンテキストでは、ドキュメントは名前付きフィールドと値のコレクションです。 データベースは通常、XML、YAML、JSON、バイナリ JSON などの形式でデータを格納しますが、プレーン テキストを使用する場合があります。 ドキュメント データベースでは、キー以外のフィールドに対してクエリを実行し、セカンダリ インデックスを定義してクエリの効率を向上させることができます。 この機能により、ドキュメント データベースは、ドキュメント キーの値よりも複雑な条件に基づいてデータを取得する必要があるアプリケーションに適しています。 たとえば、製品 ID、顧客 ID、顧客名などのフィールドに対してクエリを実行することができます。

  • 列ストア データベース は、各列をディスクに個別に格納するキー値データ ストアです。 ワイド列ストア データベースは、単一の列だけでなく、列ファミリを格納する列ストア データベースの一種です。 たとえば、国勢調査データベースには、次の項目ごとに個別の列ファミリがある場合があります。

    • 人の名前、ミドルネーム、姓

    • そのユーザーの住所

    • そのユーザーのプロフィール情報 (生年月日や性別など)

    このデータベースは、各列ファミリを個別のパーティションに格納し、さらに 1 人のすべてのデータと同じキーへの関連付けを維持することができます。 アプリケーションは、エンティティのすべてのデータをスキャンすることなく、1 つの列ファミリを読み取ることができます。

  • グラフ データベースは 、オブジェクトとリレーションシップのコレクションとして情報を格納します。 グラフ データベースは、オブジェクトのネットワークとオブジェクト間のリレーションシップにまたがるクエリを効率的に実行することができます。 たとえば、人事データベースではオブジェクトは従業員の可能性があります。また、"佐藤さんのために直接的または間接的に働いているすべての従業員を検索する" などのクエリを簡単にすることもできます。

  • テレメトリ データベースと時系列データベースは、オブジェクトの追加専用のコレクションです。 テレメトリ データベースは、さまざまな列ストアとメモリ内構造のデータに効率的にインデックスを付けます。 この機能により、膨大な量のテレメトリと時系列データを格納および分析するための最適な選択肢になります。

Fabric では、キー値、ドキュメント、列ストア、グラフ、テレメトリ データベースなど、さまざまなデータベース モデルがサポートされています。 この柔軟性により、さまざまな分析タスクのスケーラビリティが確保されます。

主要な選択条件

選択プロセスを絞り込むには、次の条件を考慮してください。

  • データのホットパスとして使えるサービングストレージが必要ですか。 "はい" の場合、スピード サービス レイヤーに合わせて最適化されたオプションに絞り込みます。

  • クエリが複数のプロセスまたはノードに自動的に分散される、超並列処理のサポートが必要ですか? "はい" の場合、クエリのスケールアウトをサポートするオプションを選択します。

  • リレーショナル データ ストアを使用したいですか。 その場合は、リレーショナル データベース モデルを持つオプションに絞り込みます。 ただし、一部の非リレーショナル ストアではクエリ用の SQL 構文がサポートされており、PolyBase などのツールを使用して非リレーショナル データ ストアのクエリを実行できます。

  • 時系列データを収集しますか? 追加専用データを使用しますか。

Fabric OneLake では、Analysis Services、T-SQL、Apache Spark など、複数の分析エンジンがサポートされています。 このサポートにより、さまざまなデータ処理とクエリのニーズに適しています。

能力マトリックス

次の表は、機能の主な相違点をまとめたものです。

一般的な機能

能力 SQLデータベース Azure Synapse Analytics SQL プール Azure Synapse Analytics Spark プール アジュール データ エクスプローラー (Azure Data Explorer) HDInsight 上の Apache HBase または Apache Phoenix HDInsight 上の Hive LLAP 分析サービス Azure Cosmos DB (アジュール コスモス データベース) ファブリック
マネージド サービスですか? はい はい はい はい はい 1 はい 1 はい はい はい
プライマリ データベース モデル リレーショナル(列ストア インデックスを使用する場合における列ストア形式) 列ストレージのリレーショナル テーブル ワイド カラム ストア リレーショナル(列型ストレージ)、テレメトリ、時系列ストレージ ワイド カラム ストア Hive またはインメモリ 表形式のセマンティック モデル ドキュメントストア、グラフデータベース、キー・バリューストア、ワイドカラムストア 統合データ レイク、リレーショナル、テレメトリ、時系列、ドキュメント ストア、グラフ、キー値ストア
SQL 言語のサポート はい はい はい はい はい ( Apache Phoenix Java Database Connectivity ドライバーを使用) はい いいえ はい はい
スピード サービス レイヤーに合わせて最適化 はい 2 はい 3 はい はい はい はい いいえ はい はい

[1] 手動構成とスケーリングを使用。

[2] メモリ最適化テーブルとハッシュ インデックスまたは非クラスター化インデックスを使用。

[3] Azure Stream Analytics 出力としてサポート。

スケーラビリティ機能

能力 SQLデータベース Azure Synapse Analytics SQL プール Azure Synapse Analytics Spark プール アジュール データ エクスプローラー (Azure Data Explorer) HDInsight 上の Apache HBase または Apache Phoenix HDInsight 上の Hive LLAP 分析サービス Azure Cosmos DB (アジュール コスモス データベース) ファブリック
高可用性のための冗長リージョン サーバー はい いいえ いいえ はい はい いいえ はい はい はい
クエリのスケールアウトをサポート いいえ はい はい はい はい はい はい はい はい
動的スケーラビリティ (スケールアップ) はい はい はい はい いいえ いいえ はい はい はい
データのメモリ内キャッシュをサポート はい はい はい はい いいえ はい はい いいえ はい

セキュリティ機能

能力 SQLデータベース Azure Synapse Analytics アジュール データ エクスプローラー (Azure Data Explorer) HDInsight 上の Apache HBase または Apache Phoenix HDInsight 上の Hive LLAP 分析サービス Azure Cosmos DB (アジュール コスモス データベース) ファブリック
認証 SQL または Microsoft Entra ID SQL または Microsoft Entra ID マイクロソフト エントラ ID ローカル ID または Microsoft Entra ID 1 ローカル ID または Microsoft Entra ID 1 マイクロソフト エントラ ID アクセス制御(IDとアクセス管理)を介したデータベースユーザーまたはMicrosoft Entra ID マイクロソフト エントラ ID
保存データの暗号化 はい 2 はい 2 はい はい 1 はい 1 はい はい はい
行レベルのセキュリティ はい はい 3 はい はい 1 はい 1 はい いいえ はい
ファイアウォールをサポート はい はい はい はい 4 はい 4 はい はい はい
動的データマスキング はい はい はい はい 1 はい いいえ いいえ はい

[1] ドメインに参加している HDInsight クラスターを使用する必要があります。

[2] 透過的なデータ暗号化を使用して、保存データの暗号化と暗号化解除を行う必要があります。

[3] フィルター述語のみ。 詳細については、「行レベルのセキュリティ」を参照してください。

[4] Azure Virtual Network 内で使用する場合。 詳細については、「 Azure 仮想ネットワークを使用した HDInsight の拡張」を参照してください。

次のステップ