教程:在 Azure 机器学习中访问 Azure Synapse ADLS Gen2 数据

本教程引导完成从 Azure 机器学习访问 Azure Synapse Azure Data Lake Storage Gen2 (ADLS Gen2) 中存储的数据的过程。 当你打算利用自动化 ML、集成模型和试验跟踪等工具或 Azure 机器学习中提供的 GPU 等专用硬件来简化机器学习工作流时,此功能尤其有用。

为了在 Azure 机器学习中访问 ADLS Gen2 数据,我们将创建一个指向 Azure Synapse ADLS Gen2 存储帐户的 Azure 机器学习数据存储。

先决条件

安装库

首先,安装 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 中存储的数据,从而简化数据预处理、模型训练和试验任务。

要执行此操作:

  1. 启动计算引擎。

  2. 选择“数据操作”,然后选择“装载”

    用于选择数据操作的 Azure 机器学习选项的屏幕截图。

  3. 在此处,应可看到并选择 ADLSg2 存储帐户名。 创建装载可能需要一些时间。

  4. 装载准备就绪后,可以选择“数据操作”,然后选择“使用”。 然后可以在“数据”下选择要从中使用的装载

现在,可以使用首选库直接从装载的 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))

后续步骤