Azure Data Lake 内に格納されたデータとメタデータ

ノート

この 12 か月間、ギャップを埋め、ユーザー コミュニティのメンバが強調表示した新しい機能を追加しました。 Power Apps に搭載された Dataverse サービスの Synapse Link は、財務と運用アプリの データレイクへのエクスポート機能 の後継機能が一般的に利用可能になり、準備が整いました。 Synapse Link は、すべての Microsoft Dynamics 365 アプリのデータを 1 つのエクスペリエンスで操作できます。

一日も早く、Synapse Link が提供するパフォーマンス、柔軟性、およびユーザー エクスペリエンスの向上のメリットを得る必要があります。 そのため、2023 年 10 月 15 日をもって データレイクへのエクスポート 機能を廃止することを発表しました。 すでに データ レイクへのエクスポート機能を使用している場合は、2024 年 11 月 1 日まで引き続き使用できます。 データレイクへのエクスポート 機能を初めてご利用になる場合、または今後数カ月以内にこの機能を採用する予定の場合は、代わりに Synapse Link を使用することをお勧めします。

この移行が困難に困難が伴い可能性は理解していますが、よりスムーズな経験を提供し、ガイダンスを提供したいと考えています。 開始するには、 Synapse Link 移行ガイド を参照してください。 コミュニティーの声に耳を傾け、よりスムーズな移行ができるよう、複数の機能に取り組んでいます。 移行プロセスに関するこの他の改善点については、新機能をオンライン化する際にお知らせします。 連絡を取り合う場合は、https://aka.ms/SynapseLinkforDynamics のコミュニティに参加してください。

データはどのように Data Lake に格納されますか

Microsoft Azure Data Lake 内のデータは、システムによって管理されるフォルダー構造にコンマ区切り値 (CSV) ファイルとして格納されます。 このフォルダー構造は、財務と運用アプリのデータ構成に基づいています。 たとえば、財務サプライ チェーンコマース などの名前を持つフォルダーが表示されます。 これらのフォルダー内に、売掛金勘定 および 買掛金勘定 などの名前を持つサブフォルダーが表示されます。 下位階層には、各テーブルの実際のデータを含むフォルダーが表示されます。 これらのテーブルレベルのフォルダー内には、複数の CSV ファイルと、データの形式を説明するメタデータ ファイルが表示されます。

財務と運用アプリのデータが更新される際に、テーブル レベルのフォルダーの CSV ファイル内で、対応するデータ行が更新されます。 財務と運用アプリのテーブルに新しい行を追加するか、既存の行を削除すると、対応する CSV ファイルで新しい行が追加されるか、または既存の行が削除されます。

Data Lake の CSV ファイルの数は、データ行のサイズによって異なります。 システム、読み取りおよび書き込み操作を最適化するために、各 CSV ファイルのサイズを約 200 メガバイト (MB) に維持しようとします。 CSV ファイルのサイズが 200 MB を超えると、システムでデータが複数のファイルに分割される場合があります。

データ ファイルには、フィールド ヘッダーやその他の情報はふくまれていません。 ファイル構造を理解するには、メタデータを読み取る必要があります。

メタデータはどのように Data Lake に格納されますか

メタデータは、データの名前、データ型、サイズ、および種類について説明します。 Data Lake 内のデータ ファイルに加えて、データ ファイルに対応するフォルダー レベルでメタデータ ファイルが表示されます。 Data Lake のメタデータは、共通データ モデル (CDM) の規格で記述される機械可読形式で書き込まれます。 Data Lake 機能にエクスポートをインストールし、Data Lake に追加するデータを選択すると、システムはデータに加えてメタデータ ファイルを書き込みます。

Microsoft とサード パーティの両方が、CDM メタデータ形式を理解するツールを提供しています。 これらのツールを使用すると、Data Lake 内のデータを簡単に操作できます。 Azure Synapse Analytics サーバーレス SQL プールを使用すると、Transact-SQL 言語 (T-SQL) を使用して、Data Lake 内でデータを消費することができます。 T-SQL は、多くのツールによって広くサポートされています。 データベースからデータを消費する場合と同様に、Synapse ワークスペースを Data Lake のデータ上で定義し、T-SQL、Spark または Syapse Pipelines を使用することができます。 Data Lake 内のデータ上に Synapse ワークスペースを作成するには、Dynamics 365 向け FastTrack ソリューション - CDMUtilSolution を使用します。 このソリューションは、Data Lake のメタデータを使用して、Azure Synapse Analytics のサーバーレス SQL プールに外部テーブル定義を作成します。

Data Lake にエクスポートをインストールするときに 拡張メタデータ オプションを選択すると、システムによって更に多くのメタデータが追加されます。

拡張メタデータ

Dynamics 365 Finance や Dynamics 365 Supply Chain Management などの Dynamics 365 アプリケーションを使い慣れている場合は、それらに存在する豊富なメタデータ構造に精通しているかもしれません。 基本的なタイプに加えて、拡張メタデータには次のタイプが含まれます。

  • 拡張データ型 (EDT): 銀行口座、勘定科目、電話番号など、"業務データ型" に適用できる動作やビジネス ルールを記述した、より豊富なデータ型を提供します。
  • 内容を示す名前と、多くの言語で使用できる翻訳済ラベル
  • エンティティ定義などの上位レベルのデータ抽象化

拡張メタデータ オプションを有効にすると、システムは Dynamics 365 から派生した追加のメタデータを Data Lake に書き込みます。 追加のメタデータ プロパティを理解して使用できるクライアント ツールは、ユーザーにより良いエクスペリエンスを提供できます。

拡張メタデータ機能を有効にするための前提条件

  1. 財務と運用アプリのバージョンは、次のバージョン以降である必要があります:

    • 最新の更新プログラムを使用したバージョン 10.0.22 (バージョン 10.0.995.146 以降)
    • 最新の更新プログラムを使用したバージョン 10.0.23 (バージョン 10.0.1037.133 以降)
    • 最新の更新プログラムを使用したバージョン 10.0.24 (10.0.1084.89 以降)
    • バージョン 10.0.25 以降
  2. 管理者が、Data Lake にエクスポート アドインをインストールする場合、拡張メタデータの有効化 オプションを選択する必要があります。 インストール ステージでこのオプションが選択されていない限り、拡張メタデータ機能は有効にできます。

  3. 財務と運用アプリでは、初めて Data Lake へのエクスポート ページのアクション ウィンドウを開く時に、管理タブのメタデータの再公開を選択する必要があります。 このステップは 1 回のみ完了する必要があります。 その後、システムは変更が発生する度に、引き続きメタデータを再公開します。

    ノート

    バージョン 10.0.23 以降では、Data Lake へのエクスポート ページを初めて開いた時に、システムはメタデータの再公開コマンドを自動的に実行します。

拡張メタデータ機能よって導入された変更

現在、Data Lake へのエクスポート機能を使用している場合は、Data Lake のフォルダー構造とメタデータが表示されます。 アドインを再インストールして拡張メタデータ機能を有効にすると、いくつかの変更に気付くかもしれません。 これらの変更については、この記事の後半で、詳しく説明します。

  • 以前にカスタム フォルダーに保存されたデータは、サブジェクト領域から構成されるフォルダー構造に移動される場合があります。 これらのサブジェクト領域は、Dynamics 365 で定義されたメタデータに基づいています。 メタデータ ファイルを使用してデータの移動や検索を行う場合は、適切なフォルダー構造を使用できます。 ただし、消費元のツールでフォルダー構造をハードコーディングした場合は、これらのツールを更新する必要があります。
  • 場合によっては、カスタム フォルダーの下のフォルダー構造が、メタデータ ファイルと共に残る場合があります。 このフォルダーにデータ ファイルはありません。

Data Lake 内のフォルダー構造

財務と運用アプリには、10,000 以上のテーブルと 2,500 以上のエンティティがあります。 (拡張機能やカスタマイズが含まれている場合は、数値が大きくなります。) Data Lake 内のデータをきめ細かく保護するために、テーブルとエンティティは、アプリケーション領域を表すモジュールに編成されます。 Data Lake では、この編成は Dynamics 365 のアプリケーション領域の構成を模倣するフォルダー構造に反映されています。

テーブル フォルダー構造

テーブルのフォルダー構造は、3 階層の深さです。

  1. アプリケーション領域 – このレベルは、財務と運用アプリのモジュールのグループです。 たとえば、このレベルのフォルダーには財務という名前が付けられます。
  2. モジュール – このレベルは、財務と運用アプリのテーブル レベルのモジュール メタデータ プロパティを使用して派生します。 たとえば、このレベルのフォルダーには総勘定元帳という名前が付けられます。
  3. テーブル タイプ – このレベルは、既存の TableGroup メタデータ プロパティを使用して派生します。 たとえば、このレベルのフォルダーにはメインという名前が付けられます。

財務と運用アプリの一部であるテーブルについては、アプリケーション領域 > モジュール > テーブル タイプ階層で確認できます。

メモ

拡張メタデータ機能が有効になっている場合、システム インテグレーターおよびパートナーによって導入されたテーブル (カスタム テーブル) は、同じメタデータ プロパティが財務と運用アプリのテーブルに追加されている限り、同じ構造に従います。 拡張メタデータ機能が有効になっていない場合、すべてのカスタム テーブルがカスタム フォルダーに格納されます。

テーブル レべルのモジュール メタデータ プロパティは、ModuleAxapta という名前の拡張可能な列挙 (enum) によってサポートされます。 この列挙には、Microsoft がリリースする定義済みモジュールが含まれています。 ただし、独自のモジュール定義を追加することで、列挙を拡張することができます。 このようにして、定義済みモジュールに加えて独自のモジュールを使用できます。 Data Lake へのエクスポート機能を使用して、テーブルレベルの モジュール プロパティに基づいて、カスタム テーブルを適切なフォルダーに配置します。

モジュールへのアプリケーション領域のマッピングは、財務と運用アプリで定義され、現在変更することはできません。 新しいモジュール プロパティを定義した場合、それはおそらくアプリケーション領域からモジュールへのマッピングには反映されません。 この場合、Data Lake へのエクスポート機能を使用すると、テーブルは カスタム という名前のアプリケーション領域フォルダーに配置されます。

システム インテグレーターおよびパートナーは、Microsoft がリリースしているテーブルのモジュール プロパティを変更できません。 カスタム テーブルのモジュール プロパティを変更することもできますが、頻繁に変更することはお勧めしません。 モジュール プロパティを変更すると、Data Lake 内のテーブルの場所が変更されます。 したがって、モジュール プロパティを変更するたびに、データ ファイルの特定の場所を想定するアプリケーションの消費に影響が及ぶ可能性があります。

モジュール プロパティがカスタム テーブルに対して定義されていない場合、そのテーブルはカスタム フォルダーに配置されます。

エンティティ フォルダー構造

財務と運用アプリでは、テーブルよりエンティティは少数です。 エンティティ フォルダー構造のレベルは次の 2 階層の深さのみです。

  1. アプリケーション領域 – このレベルは、財務と運用アプリのモジュールのグループです。 グループ化は、テーブルのグループ化に似ています。 たとえば、このレベルのフォルダーには財務という名前が付けられます。
  2. モジュール – このレベルは、財務と運用アプリのエンティティ レベルのモジュール メタデータ プロパティを使用して派生します。 たとえば、このレベルのフォルダーには総勘定元帳という名前が付けられます。

システム インテグレーターやパートナーは、カスタム テーブルを導入することで、テーブル レベルのモジュール プロパティを拡張できるのと同様に、カスタム エンティティを導入することで、エンティティ レベルのモジュール プロパティを拡張することができます。 エンティティ レベルのモジュール プロパティは、テーブル レベルのモジュール プロパティをサポートするのと同じ ModuleAxapta 拡張可能列挙によってサポートされます。

メタデータの変更

新しいソフトウェアの更新により、財務と運用アプリのメタデータが変更される場合があります。 たとえば、開発者が既存のテーブルまたはエンティティに新しいフィールドを追加する場合があります。 あまり頻繁ではありませんが、開発者がテーブルから既存のフィールドを削除したり、既存のフィールドのデータ型を変更することがあります。

テーブルまたはエンティティの構造が変更された場合、特にテーブルまたはエンティティからフィールドを削除する場合は、消費するアプリケーションを更新する必要があります。 Data Lake へのエクスポート機能は、下流への影響を最小限に抑えるように設計されていますが、Data Lake のメタデータの変更も反映します。 このセクションでは、メタデータ変更が Data Lake にどのように反映されるのかについて説明します。

メモ

財務と運用アプリには、開発者がこのような変更とその影響について学ぶためのガバナンス プロセスと開発者ツールが含まれています。 ただし、たとえば Power BI レポートを作成して実行することで Data Lake のデータを消費するユーザーは、財務と運用アプリの変更に気付かない可能性があります。

テーブルに新しいフィールドを追加すると、Data Lake のメタデータ ファイルは変更を反映するように更新されます。 新しく追加されたデータを含む CSV ファイル内のすべてのレコードに、新しいフィールドが含まれます。 CSV ファイルが変更されていない、または新しい行が追加されていない場合、ファイルには新しいフィールドは含まれません。 この動作は、Data Lake へのデータ書き込みを最小限にするのに役立ちます。 ほとんどのデータ パイプライン ツール、特に CDM 規格を理解するツールは、変更に対応できる機能をサポートしています。 この機能は、スキーマ ドリフトと呼ばれる機能です。

データ構造の変更を破壊的に行う場合は、システムがテーブル フォルダー全体 (すべての CSV ファイル) を再設定する場合もあります。 たとえば、まれですが破壊的な変更により、財務と運用アプリのテーブルからフィールドが削除される場合があります。 この場合、テーブル フォルダー全体が、更新されたメタデータと共に再設定されます。 特に下流レポートが削除されたデータ フィールドを想定している場合、破壊的な変化による下流レポートへの変更が必要な場合があります。

ご質問、フィードバックはありますか?

この機能と他の機能についても積極的に取り組んでいます。 製品チームや他の顧客やパートナーに連絡して質問を行いますか? 製品チームに直接フィードバックを提供しますか? その場合、プレビュー Yammer グループ に参加できます。 毎週の「営業時間」のオンライン ミーティングに参加し、Yammerオンライン フォーラムを使用して連絡を取り合い、質問することができます。