次の方法で共有


Azure Data Lake Storage で差分テーブルに接続する

Delta テーブルのデータに接続して Dynamics 365 Customer Insights - Data に取り込みます。

デルタ は、Databricks Lakehouse Platform のデータとテーブルを格納する基盤である Delta Lake で導入された用語です。 Delta Lake は、ビッグデータのワークロードに ACID (原子性、一貫性、分離、耐久性) トランザクションをもたらすオープンソースのストレージ レイヤーです。 詳細については、Delta Lake のドキュメントページ を参照してください。

Delta 形式で保存されたデータに接続する主な理由は次のとおりです:

  • Delta 形式のデータを直接インポートして、時間と労力を節約します。
  • Lakehouse データのコピーの変換と保存に関連するコンピューティング コストとストレージ コストを排除します。
  • Delta バージョン によって提供される Customer Insights - Data へのデータ インジェストの信頼性を自動的に向上します。

前提条件

  • Azure Data Lake Storage は、Customer Insights - Data と同じテナントおよび Azure リージョンに存在する必要があります。

  • Customer Insights - Data サービス プリンシパルは、ストレージ アカウントにアクセスするためのストレージ Blob データ コントリビューターの権限を持っている必要があります。 詳細については、ストレージ アカウントにアクセスするためのアクセス許可をサービス プリンシパルに付与するを参照してください。

  • データ ソース 接続を設定または更新するユーザーには、少なくとも Azure Data Lake Storage アカウントに対するストレージ BLOB データの閲覧権限が必要です。

  • オンライン サービスに保存されたデータは、データが処理または保存される場所とは異なる場所に保存される場合があります。 オンラインサービスに保存されたデータをインポートまたは接続することにより、ユーザーはデータが転送されることに同意するものとします。 詳細については、Microsoft Trust Center を参照してください

  • Delta テーブルはストレージ コンテナー内のフォルダーに存在する必要があり、コンテナーのルート ディレクトリに存在することはできません。 例:

    storageaccountcontainer/
        DeltaDataRoot/
           ADeltaTable/
                 _delta_log/
                     0000.json
                     0001.json
                 part-0001-snappy.parquet
                 part-0002-snappy.parquet
    
  • Azure Data Lake Storage 内のデータは Delta テーブルである必要があります。 Customer Insights - Data テーブルの履歴内のバージョン プロパティに基づいて、増分処理の最新の変更を識別します。

Azure Data Lake Storage から Delta データに接続する

  1. データ>データ ソースにアクセスします。

  2. データ ソースの追加を選択します。

  3. Azure Data Lake デルタ テーブル を選択します。

    Delta Lake の接続の詳細を入力するダイアログボックス。

  4. データソース名とオプションの説明を入力します。 この名前はダウンストリーム プロセスで参照されるため、データ ソースの作成後は変更できません。

  5. ストレージの接続方法について、次のいずれかを選択します。

    • Azure サブスクリプションサブスクリプション を選択し、リソース グループストレージ アカウントを選択します。
    • Azure リソース: リソース ID を入力します。
  6. オプションとして、Azure Private Link を介してストレージ アカウントからデータを取り込む場合は、プライベート リンクを有効にするを選択します。 詳しくは、Private Linkを確認してください

  7. データのフォルダーが含まれる コンテナ の名前を選択し、次へ を選択します。

  8. Delta テーブルのデータが含まれるフォルダーに移動し、選択します。 次へを選択します。 利用可能なすべてのテーブルの一覧が表示されます。

  9. 含めるテーブルを選択します。

  10. 主キーが定義されていない選択されたテーブルの場合、主キーの下に必須が表示されます。 各テーブルについて:

    1. 必須を選択します。 テーブルの編集パネルが表示されます。
    2. 主キーを選択します。 主キーは、テーブルに固有の属性です。 属性を有効な主キーにするには、重複する値、欠落している値、または null 値を含めないようにする必要があります。 文字列、整数、および GUID データ型属性が主キーとしてサポートされています。
    3. 閉じる を選択し、パネルを保存して閉じます。

    主キーが必要であることを示すダイアログ ボックス

  11. 任意の列でデータ プロファイリングを有効にするには、テーブルの 数を選択します。 属性の管理ページが表示されます。

    データ プロファイリングを選択するためのダイアログ ボックス。

    1. テーブル全体または特定の列に対して データ プロファイリング を選択します。 既定では、データ プロファイルが有効になっているテーブルはありません。
    2. 完了を選択します。
  12. 保存 を選びます。 データソース ページが開き、新しいデータソースが更新された状態で表示されます。

    チップ

    タスクやプロセスの状態 があります。 ほとんどのプロセスは、データ ソースやデータ プロファイル更新 などの他の上流プロセスに依存しています。

    状態を選択して プロセス詳細 ペインを開き、タスクの進行状況を表示します。 ジョブをキャンセルするには、ペインの下部のジョブをキャンセルするを選択します

    各タスクの下で、処理時間、最終処理日、タスクまたはプロセスに関連する該当エラーや警告など、詳細な進捗情報について 詳細を表示 を選択します。 パネル下部のシステムの状態を見るを選択すると、システム内の他のプロセスを見ることができます。

データの読み込みには時間がかかる場合があります。 正常に最新の情報に更新したら、テーブル ページから取り込んだデータをレビューできます。

管理スキーマの変更

デルタ フォルダ データ ソースのスキーマに列が追加または削除されると、システムはデータの完全な更新を実行します。 完全更新は、増分更新よりもすべてのデータを処理するのに時間がかかります。

列の追加

列がデータ ソースに追加されると、更新発生時にその情報が Customer Insights - Data データに自動的に追加されます。 すでにテーブルの単一化を構成している場合は、新しい列を単一化プロセスに追加する必要があります。

  1. 顧客データ ステップから、テーブルと列の選択 を選択し、新しい列を選択します。

  2. 統合データ ビュー ステップで、列が顧客プロファイルから除外されていないことを確認してください。 除外 を選択し、列を読み取ります。

  3. 統合プロファイルの更新を実行するステップで、顧客プロファイルと依存関係を統合するを選択します。

列の変更または削除

列がデータ ソースから削除されると、システムは他のプロセスの依存関係をチェックします。 列に依存関係がある場合、システムは更新を停止し、依存関係を削除する必要があることを示すエラーを表示します。 これらの依存関係は通知に表示され、依存関係を見つけて削除するのに役立ちます。

スキーマの変更を検証する

データ ソースの更新後、データ>テーブル ページに移動します。 データ ソースのテーブルを選択し、スキーマを確認します。

Delta Lake のタイム トラベルおよびデータ更新

Delta Lake のタイム トラベルは、タイムスタンプまたはバージョン番号に基づいてテーブル バージョンをクエリする機能です。 Delta フォルダーへの変更はバージョン管理され、Customer Insights - Data は、Delta フォルダーのバージョンを使用して、処理するデータを追跡します。 通常の差分テーブルの更新では、最後の更新以降のすべてのデータ テーブルのバージョンからデータが取得されます。 すべてのバージョンが存在する限り、Customer Insights - Data は変更された要素のみを処理し、より速く結果を提供できます。 タイム トラベルの詳細をご覧ください

たとえば、Customer Insights – Data が最後に Delta フォルダー データのバージョン 23 と同期した場合、バージョン 23 と、場合によってはそれ以降のバージョンが利用可能であることが期待されます。 必要なデータ バージョンが使用できない場合、データの同期は失敗し、手動によるデータの完全更新が必要です。 Delta フォルダーのデータを削除してから再作成した場合、データの同期が失敗する可能性があります。 または、Customer Insights - Data のバージョン更新に伴い、Delta フォルダーに長期間接続できなかった場合です。

データの完全更新の必要性を回避するために、15 日など、適切な履歴バックログを維持することをお勧めします。

Delta テーブル フォルダーでデータの完全更新を手動で実行する

完全更新は、差分フォーマットのテーブルからすべてのデータを取り出し、差分テーブルのバージョン ゼロ (0) からリロードします。 Delta フォルダー スキーマを変更すると、自動完全更新がトリガーされます。 次の手順を実行して、完全更新を手動でトリガーします。

  1. データ>データ ソースにアクセスします。

  2. Azure Data Lake デルタ テーブル データ ソース を選択します。

  3. 更新するテーブルを選択します。 テーブルの編集 ウインドウが表示されます。

    テーブル ペインを編集して、1 回限りの完全更新を選択します。

  4. 1 回限りの完全更新 を選択します。

  5. 保存 を選択して更新を実行します。 データ ソース ページが開き、データ ソースが 更新 ステータスになっていますが、選択したテーブルだけが更新されています。

  6. 該当する場合は、他のテーブルについてもこの手順を繰り返します。

データ同期の失敗

Delta フォルダーのデータを削除してから再作成した場合、データの同期が失敗する可能性があります。 または、Customer Insights - Data のバージョン更新に伴い、Delta フォルダーに長期間接続できなかった場合です。 間欠的なデータ パイプラインの失敗により完全更新が必要になった場合の影響を最小限に抑えるために、15 日などの適切な履歴バックログを維持することをお勧めします。

次の手順