UI を使用して OneLake lakehouse テーブルをAzure Machine Learningにコピーする

この記事では、Microsoft Fabric OneLake テーブル型 (/Tables) データを Azure Machine Learning で使用できるようにするには、Azure Data Lake Storage (ADLS) アカウントにコピーし、コピーを介してデータストアを作成する方法について説明します。 スタジオ UI でタスク全体を実行します。

Azure Machine Learningは、コピーなしで OneLake データストアを介して OneLake ファイルの種類 (/Files) データに直接接続できます。 次のスクリーンショットに示すように、コピーなしのデータストアは lakehouse テーブルをサポートしていないため、この記事ではテーブル データの UI ベースの回避策について説明します。

Microsoft Fabric のテーブルを示すスクリーンショット。

Note

この手順では、データをAzure Data Lake Storageにコピーします。 コピーされたデータはライブ リンクではなく、特定の時点のスナップショットであるため、ソース テーブルが変更されたときにコピーを再実行します。 UI のみのワークフローが必要ない場合は、最初にコピーなしのオプション (/Files データ用の OneLake (Microsoft Fabric) データストア、またはコンピューティングからの直接アクセスを検討してください。 すべての OneLake 統合オプションの概要については、「OneLake と Azure Machine Learning の統合」を参照してください。

この方法を使用する場合

次の両方の条件に該当する場合は、この記事のコピー ベースのメソッドを使用します。

  • データは OneLake テーブル型 (/Tables) データであり、OneLake データストアは直接参照できません。
  • CLI または SDK を使用せずに、Azure Machine Learning スタジオで完全に接続を構築する必要があります。

ライブ アクセス、コピーなしアクセスが必要な場合、またはデータが lakehouse /Files セクションにある場合は、代わりに OneLake データストア を使用します。

[前提条件]

  • Azure サブスクリプション。Azure サブスクリプションを持っていない場合は、始める前に無料アカウントを作成してください。
  • Azure Machine Learning ワークスペース。 ワークスペース リソースの作成に関する記事をご覧ください。
  • Azure Data Lake Storage (ADLS) ストレージ アカウント。 Azure Data Lake Storage (ADLS) ストレージ アカウントの作成に関するページを参照してください。
  • Azure ストレージ アカウントでのロールの割り当てに関する知識。
  • テーブル型データを含むレイクハウスがあるMicrosoft Fabricワークスペースへのアクセス
  • Fabric ワークスペースでデータ パイプラインを作成するための、共同作成者 や メンバー などのワークスペース ロールのアクセス許可。

コピー ワークフローのしくみ

この回避策には、次の 3 つの部分があります。

  1. Azure ポータルでData Lake Storage アカウントを作成して設定します。
  2. Fabric データ パイプラインを使用して、OneLake から Azure Data Lake Storage にテーブル データをコピーします。
  3. Azure Data Lake Storage コンテナー上にAzure Machine Learning データストアを作成します。

次の図は、全体的なフローを示しています。

ソリューションの全体的なフローを示すスクリーンショット。

Important

この方法ではデータがコピーされるため、Azure Machine Learning データストアには特定の時点のスナップショットが保持されます。 ソースレイクハウス テーブルが変更されたら、コピーを再実行します。 また、コピーによってストレージが複製され、コストが追加され、OneLake のガバナンスや系列は保持されません。

Azure portal で Data Lake ストレージ アカウントを設定する

ストレージ BLOB データ共同作成者ロールとストレージ ファイル データ特権共同作成者ロールをユーザー ID またはサービス プリンシパルに割り当てて、データ プレーンアクセスとコンテナーを作成するアクセス許可を付与します。 アカウント キーアクセスは、後の手順で有効にする ストレージ アカウント キーのアクセスを許可 する設定によって個別に制御されます。 ユーザー ID にロールを割り当てるには:

  1. Microsoft Azure ポータルを開きます。

  2. ストレージ アカウント サービスを選択します。

    ストレージ アカウント サービスの選択を示すスクリーンショット。

  3. [ ストレージ アカウント ] ページで、前提条件の手順で作成した Data Lake Storage アカウントを選択します。 ストレージ アカウントのプロパティを示すページが開きます。

    Data Lake ストレージ アカウントのプロパティ ページを示すスクリーンショット。

  4. 左側のパネルから [アクセス キー ] を選択し、キーを記録します。 この値は、後の手順で必要になります。

  5. 次のスクリーンショットに示すように、 ストレージ アカウント キーのアクセスを許可 するを選択して有効にします。

    ヒント

    運用ワークロードの場合は、アカウント キーの代わりに ID ベースの認証 (Microsoft Entra ID) を使用します。 詳細については、「データストアの作成」を参照してください。

    Azure portal で Data Lake Storage アカウントのキー アクセスを有効にする方法を示すスクリーンショット。

  6. 左側のパネルから Access Control (IAM) を選択し、ストレージ BLOB データ共同作成者ロールとストレージ ファイル データ特権共同作成者ロールをサービス プリンシパルに割り当てます。

    Azure portal で Data Lake Storage アカウントのロールを割り当てる方法を示すスクリーンショット。

  7. ストレージ アカウントにコンテナーを作成します。 onelake-table という名前を付けます。

    Azure portal での Data Lake ストレージ アカウント コンテナーの作成を示すスクリーンショット。

Fabric データ パイプラインを使用して Azure Data Lake Storage アカウントにデータをコピーする

ヒント

また、ファブリック コピー ジョブを使用することもできます。このジョブを使用すると、データ コピーのシナリオに簡単なエクスペリエンスが提供されます。

  1. Fabric ポータルで、[新しい項目] ページで [データ パイプライン ] を選択します。

    [Fabric New item]\(ファブリックの新しい項目\) ページでのデータ パイプラインの選択を示すスクリーンショット。

  2. データ アシスタントをコピー を選択します。

    データ のコピー アシスタントの選択を示すスクリーンショット。

  3. データのコピー アシスタントで、Azure BLOB を選択します。

    ファブリック コピー データ アシスタントの [Azure BLOB の選択] の選択を示すスクリーンショット。

  4. Azure Data Lake ストレージ アカウントへの接続を作成するには、[認証の 種類: アカウント キー ] を選択し、[ 次へ] を選択します。

    Fabric データ パイプラインで接続を作成する方法を示すスクリーンショット。

    ヒント

    アカウント キーを回避するには、組織アカウントなどの ID ベースの認証の種類を選択し、ID ベースのアクセス権を持つ Azure Machine Learning データストアを作成します。 この方法では、前に割り当てたデータ プレーン ロールが使用され、アカウント キー アクセスを有効にする必要はありません。

  5. データ変換先を選択し、[ 次へ] を選択します。

    データ変換先の選択を示すスクリーンショット。

  6. データ変換先に接続し、[ 次へ] を選択します。

    データ変換先への接続を示すスクリーンショット。

  7. この手順では、データ コピー ジョブが自動的に開始されます。

    コピー アクティビティがスケジュールされていることを示すスクリーンショット。

    この手順には時間がかかる場合があります。 次の手順に直接進みます。

  8. データ コピー ジョブが正常に完了したことを確認します。

    コピー操作が成功したことを示すスクリーンショット。

Azure Data Lake Storage コンテナー上にAzure Machine Learning データストアを作成する

データが Azure Data Lake ストレージ リソースに格納されたので、Azure Machine Learning データストアを作成できます。

  1. Azure ストレージ アカウントでは、左側に示すように コンテナー に、右側に示すようにデータがあります。

    Azure ストレージ アカウント コンテナー内のデータを確認する方法を示すスクリーンショット。

  2. Azure Machine Learning スタジオで、データ資産を作成します。 種類を決定するには、 onelake-table コンテナーを開き、コピーによって 1 つのファイルが生成されたか、ファイルのフォルダーが生成されたかを確認します。 1 つのファイルに対して ファイル (uri_file) を選択するか、ファイルのフォルダー にフォルダー (uri_folder) を選択します。これは、テーブルが複数のファイルとしてエクスポートされる場合に一般的です。

    データ資産の種類の選択を示すスクリーンショット。

  3. [Azure Storage から] を選択します。

    Azure Storage を選択する方法を示すスクリーンショット。

  4. 前の「Azure Data Lake ストレージ アカウントへの接続を作成する」ステップのアカウントキー値を使用して、新しいデータストアを作成します。

    Azure Machine Learning で新しいデータストアを作成する方法を示すスクリーンショット。

  5. Azure Machine Learning Studio でデータストアを直接作成することもできます。

    Azure Machine Learning でデータストアを作成する方法を示すスクリーンショット。

  6. 作成したデータストアの詳細を確認できます。

    作成したデータストアの詳細を示すスクリーンショット。

  7. データストア内のデータを確認する

    Azure Machine Learning でデータストアにアクセスする方法を示すスクリーンショット。

これで Azure Machine Learning でデータストアが正常に作成されたので、機械学習の演習で使用できます。

Troubleshooting

  • ロールの割り当てがまだ有効ではありません:Azureロールの割り当てが反映されるまでに数分かかる場合があります。 コピー ジョブまたはデータストアの作成が承認エラーで失敗した場合は、数分待ってから再試行してください。
  • アカウント キーのアクセスが無効: アカウント キーを取得または使用できない場合は、 ストレージ アカウントで [ストレージ アカウント キーのアクセスを許可する] が有効になっていることを確認します。
  • Fabric接続が失敗する: ストレージ アカウント名とキーを確認し、onelake-table コンテナーが存在することを確認します。
  • スナップショットが古い: コピーによってポイントインタイム スナップショットが生成されます。 最新の状態を維持するには、Fabric データ パイプラインを定期的に実行するようにスケジュールします。

リファレンス