Azure Data Lake で Dataverse への Azure Synapse リンクを作成する
Azure Synapse のリンクを使用して、自分の Microsoft Dataverse データを Azure Data Lake Storage Gen2 に接続し、さまざまな分析シナリオを有効にできます。 この記事では、次のタスクを実行する方法を示します:
- Azure Synapse リンク サービスを使用してご利用の Dataverse データを Azure Data Lake Storage Gen2 アカウントに接続します。
- Azure Synapse リンクに含まれる Dataverse テーブルを管理します。
- ご利用の Azure Synapse リンクを監視します。
- Azure Synapse のリンクを解除します。
- Azure Synapse のリンクを再リンクします。
- Azure Data Lake でデータを表示し、ファイル構造を理解する。
ヒント
Dataverse 用の Azure Synapse リンクは、以前はデータ レイクへのエクスポートと呼ばれていました。 このサービスは、2021 年 5 月より名称が変更され、Azure Synapse Analytics だけでなく、Azure Data Lake へのデータのエクスポートも継続されます。
前提条件
- Azure Data Lake Storage Gen2: Azure Data Lake Storage Gen2 アカウントと所有者およびストレージ BLOB データ共同作成者ロールのアクセス権を持っている必要があります。 ストレージ アカウントでは、初期セットアップと差分同期の両方で 階層型名前空間 を有効にする必要があります。初期設定のみ、ストレージ アカウント キーへのアクセスを許可するが必要です。
ヒント
- ストレージのアカウントは、 Power Apps のテナントと同じ Microsoft Entra テナントに作成する必要があります。
- 選択した IP アドレスからのアクセスを許可するために、リンクされたストレージアカウントに 選択した仮想ネットワークおよび IP アドレスから有効化を設定するには、マネージドアイデンティティで Azure Synapse リンクを作成する必要があります。Azure Data Lake storage には、Azure 用マネージド ID を使用します (マネージド ID を設定しない場合、初期設定とデルタ同期の両方で Azure リソースへのパブリック ネットワーク アクセスを有効にする必要があります)。
- この目的のために選択したストレージ アカウントのソフト削除機能を有効にすることを強く推奨します。 ソフト削除を有効にすると、誤ってデータを削除した場合の回復を早めることができます。
- ストレージ アカウントを持つリソース グループへの閲覧者ロール アクセスが必要です。
- 環境を Azure Data Lake Storage Gen2 にリンクするには、Dataverse システム管理者のセキュリティ ロールが付与されている必要があります。
- 有効な変更の追跡をするテーブルにのみエクスポートできます。
- 1つの Dataverse 環境での Azure Synapse リンク プロファイルの作成は、最大 10 個に制限されています。
Dataverse を Azure Data Lake Storage Gen2 に接続する
Power Apps にサインインし、好みの環境を選択します。
左側のナビゲーション ウィンドウで、Azure Synapse リンク を選択します。 Azure Synapse リンク がサイド パネル ウィンドウに表示されない場合は、...その他 を選択して すべて検出を選択します。 Azure Synapse リンク は データ管理 セクションにあります。
コマンド バーで、+ データ レイクへの新規リンクを選択します。
サブスクリプション、リソース グループ、ストレージ アカウントを選択します。 ストレージ アカウントが前提条件セクションで指定された要件を満たしていることを確認してください。 次へを選択します。
ヒント
環境のデータ レイクへのリンクの一環として、自分のストレージ アカウントに Azure Synapse リンク サービスのアクセスを付与します。 Azure Data Lake Storage アカウントの作成および構成の前提条件 およびストレージ アカウントの所有者ロールを自分に付与する方法、に従うことを確認してください。 さらに、 Power Platform データフローのサービスへのアクセス権を自分のストレージ アカウントに付与します。 詳細: データフローでセルフサービス データを準備する。
エクスポートするテーブルを追加してから、保存を選択します。 変更の追跡が有効なテーブルにのみエクスポートできます。 詳細情報: 変更追跡を有効化する。
この記事の手順に従って、1 つの環境から Azure サブスクリプション内の複数の Azure Data Lake へのリンクを作成します。 同様に、すべて同じテナント内で複数の環境から同じ Azure Data Lake へのリンクを作成できます。
ヒント
Dataverse サービスへの Azure Synapse リンクは、すぐに使用できる機能として Power Platform にシームレスに統合されています。 Power Platform データ ストレージとガバナンスに関して設定されたセキュリティとガバナンスの標準を満たしています。 詳細情報: データ ストレージとガバナンス
Azure Synapse リンク サービスによってエクスポートされたデータは、トランスポート層セキュリティ (TLS) 1.2 以降を使用して転送時に暗号化され、 Azure Data Lake Storage Gen2 で保存時に暗号化されます。 さらに、BLOB ストレージ内の一時データも暗号化されて保存されます。 Azure Data Lake Storage Gen2 の暗号化は、データの保護、エンタープライズ セキュリティ ポリシー、規制コンプライアンス要件の順守に役立ちます。 詳細: Azure データ保存時の暗号化
テーブル データの Data Lake への移動を管理する
Azure Synapse リンクを設定した後、次の 2 つの方法のいずれかでエクスポートされたテーブルを管理できます:
Power Apps maker portal の Azure Synapse リンク エリアで、コマンド バーのテーブルの管理を選択して 1 つ以上のリンク テーブルを追加または削除します。
Power Apps Maker Portal テーブル 領域で、 … を選択し、テーブルの横にあるエクスポートするテーブルデータのリンク先データレイクを選択します。
ご利用の Azure Synapse リンクを監視する
Azure Synapse リンクを設定した後、テーブル タブで Azure Synapse リンクを監視することができます。
- 選択した Azure Synapse リンクの一部であるテーブルのリストが表示されます。
- 同期のステータスには、さまざまな段階があります。 NotStartedは、テーブルが同期の待機中であることを示します。 テーブルの初期同期が 完了 になると、増分更新が行われない後処理の段階が発生します。 データのサイズによっては数時間かかる場合があります。 増分更新が開始すると、最後の同期の日付が定期的に更新されます。
- カウント列には、書き込まれた行数が表示されます。 追加のみ がいいえに設定されている場合は、レコードの総数を表わします。 追加のみ がはいに設定されている場合は、変更の総数を表わします。
- 追加のみとパーティション戦略の列には、さまざまな詳細設定の使用状況が表示されます。
Azure Synapse のリンクを解除する
希望する Azure Synapse リンクを選択してリンクを解除します。
コマンド バーからData Lake のリンクを解除するを選択します。
両方の Data Lake ファイルシステムを削除するには、Data Lake ファイル システムの削除を選択します。
はい を選択し、すべてのリンクが解除されて削除されるまで数分待ちます。
Azure Synapse のリンクを再リンクする
リンク解除時にファイル システムを削除した場合は、上記の手順で同じ Data Lake を再リンクします。 リンク解除時にファイル システムを削除しなかった場合は、データをクリアしないと再リンクできません:
Azure Data Lake にアクセスします。
Dataverse コンテナを削除します。
Power Apps にアクセスし、Data Lake を再リンクします。
Azure Data Lake Storage Gen2 でデータを表示する
希望する Azure Synapse リンクを選択し、続いてトップパネルから Azure Data Lake にアクセスを選択します。
ファイルシステム を展開し、次に dataverse-environmentName-organizationUniqueName を選択します。
model.json ファイルには、その名前とバージョンとともに、Data Lake にエクスポートされたテーブルの一覧が含まれます。 model.json ファイルには、初期同期状態と同期完了時間も含まれています。
Data Lake にエクスポートされたテーブルごとに、コンマ区切り (CSV 形式) されたスナップショットのファイルを含むフォルダーが表示されます。
Synapse ワークスペースを既存の Azure Synapse リンクのプロファイルにデータ レイクのみを使用してリンクする
Web ブラウザー アドレス バーで、
?athena.updateLake=true
を exporttodatalake で終わる Web アドレスに追加します。Azure Synapse リンクの領域から既存のプロファイルを選択し、拡張オプションを選択します。
Azure Synapse Analytics ワークスペースへのリンク を選択し、すべてがリンクされるまで数分待ちます。
スナップショットの継続的な更新
Microsoft Dataverse データは、トランザクションの作成、更新、削除を通じて継続的に変更できます。 スナップショットは、定期的に (この場合は 1 時間ごとに) 更新されるデータの読み取り専用コピーを提供します。 これにより、任意の時点で、データ分析の利用者がレイクのデータを確実に消費できるようになります。
初期エクスポートの一部としてテーブルが追加されると、テーブル データは Data Lake 内の対応するフォルダーの下にある table.csv ファイルに書き込まれます。 これは T1 サイクル間隔で、スナップショットの読み取り専用の、例えば table-T1.csv という名前のファイル、または、Account-T1.csv または Contacts-T1.csv が作成されます。 さらに、これらのスナップショット ファイルをポイントするように model.json ファイルが更新されます。 model.json を開くと、スナップショットの詳細を表示できます。
次に、Data Lake の Account.csv パーティション ファイルとスナップショット フォルダーの例を示します。
Dataverse の変更は、トリクル フィード エンジンを使用して、対応する CSV ファイルに継続的にプッシュされます。 これは T2 サイクル間隔で、別のスナップショットが取得されます。 table-T2.csv の場合、Accounts-T2.csv または Contacts-T2.csv (テーブルに変更があると想定) および model.json が新しいスナップショット ファイルに更新されます。 T2 以降のスナップショット データを表示する新しいユーザーは、新しいスナップショット ファイルに送信されます。 これにより、元のスナップショット ビューアは古いスナップショット T1 ファイルで引き続き動作し、新しいビューアは最新の更新を読み取ることができます。 これは、下流プロセスの実行時間が長い場合に役立ちます。
ヒント
新しいスナップショット ファイルは、データ更新がある場合にのみ作成されます。 最新の 5 つのスナップショット ファイルのみが保持されます。 停滞しているデータは、Azure Data Lake Storage Gen 2 アカウントから自動的に削除されます。
model.json ファイルの例を次に示します。このファイルは、常に最新のタイムスタンプ付きアカウント スナップショッ トファイルを示します。
次の手順
Dataverse サービスへの Azure Synapse リンクを正常に使用した後、ハブの検出を使用してデータを分析して使用する方法について説明します。 ハブの検出にアクセスするには、Power Apps>Azure Synapse リンク に移動します。 リンクされたサービスを選択してから、ハブの検出 タブを選択します。ここでは、データから最大の価値を引き出すのに役立つ推奨ツールとキュレーションされたドキュメントを見つけることができます。
参照
Power BI を使用して Data Lake にある Dataverse データを分析する
Azure Data Factory を使用して Data Lake にある Dataverse データを取り込む