Azure Synapse Link for Dataverse の状態は、リアルタイム更新を使用して Microsoft Dataverse テーブルに格納されます。 Power Apps (make.powerapps.com) の Azure Synapse Link for Dataverse プロファイル ページを手動で確認する代わりに、Power Automate フローまたは Power BI を使用して通知をカスタマイズして、Azure Synapse Link for Dataverse アクティビティの状態を維持できます。
Azure Synapse Link for Dataverse プロファイルとその同期状態は、Dataverse 内の 6 つのシステム生成読み取り専用テーブルに格納されます。 これらのテーブルは、リアルタイムで更新および更新するように設計されており、その中に含まれる情報は常に正確で最新の状態を維持します。
Azure Synapse Link for Dataverse での通知のしくみ
通知をカスタマイズするには、Azure Synapse Link の同期状態に関連する Dataverse テーブルのデータ変更を監視します。 これらの変更を追跡することで、Power BI を使用して視覚化のために更新されたデータをエクスポートしたり、Azure Synapse Link for Dataverse の状態が変更されるたびにアクティブ化される自動化されたクラウド フローを設定したりできます。 これは、いずれかの Azure Synapse Link 状態テーブルから行の変更を読み取ることによって実現されます。
Power Automate のフローで使用するコネクタ
Power Automate を使用してトリガー関数をカスタマイズするための適切な Power Platform ライセンスをユーザーに用意することをお勧めします。 選択した Dataverse テーブルで行が追加、変更、または削除されたときにフローをトリガーする Dataverse コネクタを使用します。 詳細情報: 行が追加、変更、または削除されたときにフローをトリガーする - Power Automate
Power Automate を使用して通知を送信するには、いくつかのオプションを使用できます。 いくつかの例を次に示します。
| 目的 | コネクタのリファレンス |
|---|---|
| Teams のインスタント メッセージを送信する | Microsoft Teams |
| モバイル デバイスにテキスト メッセージを送信する | Azure Communication Services SMS |
| 1 人以上の受信者にメールを送信する |
メール Office 365 Outlook |
| Power Apps または Power BI に通知を送信する |
Power Apps の通知 Power BI |
状態の追跡に使用されるデータバース テーブルと列
すべての Azure Synapse Link プロファイル情報を格納するテーブルがあります。 次の 2 つの主な表は、Azure Synapse Link プロファイルのすべての同期状態情報を提供します。
| テーブル名 | Description | テーブル参照 |
|---|---|---|
| Azure Synapse Link の外部テーブルの状態 | このテーブルには、Delta Lake プロファイルがある場合にのみデータが含まれます。 このテーブルは、接続された Synapse ワークスペースの外部のパーティション分割されていないテーブルの状態を表します。 オプション セットなどのメタデータ テーブルを含む、同期されたエンティティごとに 1 つのレコード。 |
synapselinkexternaltablestate |
| Azure Synapse Link プロファイル テーブルの状態 | 次の表は、Azure Data Lake Storage の Azure Synapse Link エンティティの同期状態を表しています。 オプション セットなどのメタデータ テーブルを除く、同期されたエンティティごとに 1 つのレコード。 |
synapselinkprofileentitystate |
各テーブルの Azure Synapse Link の正常性を監視するための便利な列を次に示します。
-
EntityNameおよびSynapseWorkspaceNameは、選択したテーブルのプライマリ ID として使用できます。 Synapse ワークスペース名は、Power Apps に表示される Azure Synapse Link プロファイル名と同じです。 -
LastSynchronizedOnは、テーブルごとに Delta Lake 変換の最新ラウンドが正常に完了した日時を返します。 -
RecordCountは、Delta Lake プロファイル内のレコードの総数から、各テーブルのソフト削除レコードを差し引いた数を返します。 -
TableStateは、Data Lake へのリンクと Delta Lake 変換がアクティブでエラーのない場合に 作成 済みとしてマークされます。
Azure Synapse Link 外部テーブル状態テーブルの論理的な削除が実行されます。削除されたテーブルの LastSyncState と TableState は削除済みとしてマークされます。
Azure Synapse Link プロファイル エンティティ状態テーブル:
-
EntityNameプロファイルは、選択したテーブルのプライマリ ID として使用できます。 プロファイルは、Power Apps に表示される Azure Synapse Link プロファイル名と同じです。 -
InitialSyncProcessCompletedTimeとInitialSyncStateは、メタデータと生データの両方を含む初期同期完了状態を返します。 初期同期の状態は、初期同期が完了すると 完了 としてマークされます。 -
LakeRecordCountは、Data Lake にエクスポートされたレコードの合計数を CSV 形式で返します。 -
LastSyncedDataTimeは、データ レイク ファイルの最新のラウンドがテーブルごとに更新または正常に作成された日時を返します。 -
SyncStateは、Data Lake へのリンクがアクティブでエラーのない場合は InProgress として表示されます。
注
LakeRecordCount は、次の理由により Dataverse レコード数とは異なります。
- 同期の待機時間。
- 追加専用モードでは、トランザクションがキャプチャされ、CUD 操作ごとに 1 行追加されます。
残りの 4 つのテーブルでは、Azure Synapse Link のセットアップ情報の詳細を示します。
| テーブル名 | Description | テーブル参照 |
|---|---|---|
| Azure Synapse データベース | 次の表は、リンクされた Azure Data Lake Storage と Synapse ワークスペースとセットアップ メタデータ情報 (Azure Synapse Link プロファイルごとに 1 つのレコード) をキャプチャします。 | synapsedatabase |
| Azure Synapse Link プロファイル | 次の表は、Azure Synapse Link プロファイル情報 (Azure Synapse Link プロファイルごとに 1 つのレコード) をキャプチャします。 このテーブルでソフト削除が実行されます。 ProfileState は、削除されたプロファイルに対して 削除 済みとしてマークされます。 |
synapselinkprofile |
| Azure Synapse Link プロファイル エンティティ | このテーブルは、接続された Azure Synapse Link プロファイル (同期されたテーブルごとに 1 つのレコード) 内のエンティティ メタデータをキャプチャします。 | synapselinkprofileentity |
| Azure Synapse Link のスケジュール | 次の表は、インクリメンタルフォルダー更新またはデルタレイク変換の時間間隔を記録するための、Azure Synapse Link プロファイル情報を示しています (Azure Synapse Link プロファイルごとに 1 レコード)。 | RecurrenceInterval |