教學課程:存取 Azure 機器學習 中的 Azure Synapse ADLS Gen2 數據
在本教學課程中,我們將引導您完成從 Azure 機器學習 (Azure 機器學習) 存取儲存在 Azure Synapse Azure Data Lake Storage Gen2 (ADLS Gen2) 中的數據的程式。 當您的目標是利用自動化 ML、整合模型和實驗追蹤等工具,或 Azure 機器學習 中提供的 GPU 等特製化硬體,來簡化機器學習工作流程時,這項功能特別有價值。
若要存取 Azure 機器學習 中的 ADLS Gen2 數據,我們將建立指向 Azure Synapse ADLS Gen2 儲存器帳戶的 Azure 機器學習 數據存放區。
必要條件
- Azure Synapse Analytics 工作區。 確定其已將 Azure Data Lake Storage Gen2 儲存體帳戶設定為預設儲存體。 針對您使用的 Data Lake Storage Gen2 檔案系統,請確定您是儲存體 Blob 資料參與者。
- Azure Machine Learning 工作區。
安裝程式庫
首先,我們將安裝 azure-ai-ml
套件。
%pip install azure-ai-ml
建立數據存放區
Azure 機器學習 提供稱為數據存放區的功能,可作為您現有 Azure 記憶體帳戶的參考。 我們將建立參考 Azure Synapse ADLS Gen2 記憶體帳戶的數據存放區。
在此範例中,我們將建立數據存放區連結至 Azure Synapse ADLS Gen2 記憶體。 初始化 MLClient
對象之後,您可以提供ADLS Gen2帳戶的連線詳細數據。 最後,您可以執行程式代碼來建立或更新資料存放區。
from azure.ai.ml.entities import AzureDataLakeGen2Datastore
from azure.ai.ml import MLClient
ml_client = MLClient.from_config()
# Provide the connection details to your Azure Synapse ADLSg2 storage account
store = AzureDataLakeGen2Datastore(
name="",
description="",
account_name="",
filesystem=""
)
ml_client.create_or_update(store)
您可以在 Azure 機器學習 資料存放區上使用本教學課程,深入瞭解如何建立和管理 Azure 機器學習 資料存放區。
掛接您的 ADLS Gen2 儲存體帳戶
設定數據存放區之後,您就可以建立 ADLSg2帳戶的掛接 來存取此數據。 在 Azure 機器學習 中,建立 ADLS Gen2 帳戶的掛接需要建立工作區與記憶體帳戶之間的直接連結,以便順暢地存取儲存在內的數據。 基本上,掛接可做為路徑,可讓 Azure 機器學習 與您的 ADLS Gen2 帳戶中的檔案和資料夾互動,就像它們是工作區中本機文件系統的一部分一樣。
掛接記憶體帳戶之後,您就可以直接在 Azure 機器學習 環境中使用熟悉的文件系統作業,輕鬆讀取、寫入及操作儲存在 ADLS Gen2 中的數據,簡化數據前置處理、模型定型和實驗工作。
若要這樣做:
啟動計算引擎。
選取 [數據動作 ],然後選取 [ 掛接]。
從這裡,您應該會看到並選取您的 ADLSg2 儲存器帳戶名稱。 建立掛接可能需要一些時間。
掛接準備就緒后,您可以選取 [數據動作],然後選取 [取用]。 在 [數據] 下,您可以選取您想要取用數據的掛接。
現在,您可以使用慣用的連結庫,直接從掛接的 Azure Data Lake Storage 帳戶讀取數據。
從記憶體帳戶讀取數據
import os
# List the files in the mounted path
print(os.listdir("/home/azureuser/cloudfiles/data/datastore/{name of mount}"))
# Get the path of your file and load the data using your preferred libraries
import pandas as pd
df = pd.read_csv("/home/azureuser/cloudfiles/data/datastore/{name of mount}/{file name}")
print(df.head(5))