You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure ML Studio中挂载数据湖存储以避免重复复制数据

Azure数据湖目录直接挂载方案(无需重复复制数据)

场景1:Azure ML计算实例内直接挂载数据集

你当前使用的download方法会全量拉取数据到本地磁盘,替换为Azure ML内置的mount方法即可实现数据湖目录直接挂载,无需拷贝:

  • 挂载示例代码如下:
from azureml.core import Workspace, Dataset
import os

subscription_id = 'xxx'
resource_group = 'luisdatapipelinetest'
workspace_name = 'ml-pipelines'
workspace = Workspace(subscription_id, resource_group, workspace_name)
dataset = Dataset.get_by_name(workspace, name='files_test')

# 自定义挂载点路径
mount_path = "/mnt/adls_test"
os.makedirs(mount_path, exist_ok=True)

# 方式1:with块内挂载有效,退出自动卸载
with dataset.mount(mount_point=mount_path) as mount:
    # 直接读取挂载路径下的文件,数据实时从数据湖读取
    print(os.listdir(mount_path))
    # 所有业务逻辑放在该代码块内即可

# 方式2:手动控制挂载生命周期,notebook关闭前持续有效
# mount = dataset.mount(mount_point=mount_path)
# mount.start()
# 业务逻辑执行完成后手动卸载
# mount.stop()

场景2:独立Azure虚拟机持久挂载数据湖

如果是脱离Azure ML的普通Azure VM,可以用blobfuse2工具实现ADLS Gen2的持久挂载,步骤如下:

  • 安装blobfuse2(以Ubuntu 20.04为例,其他发行版对应调整安装命令)
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt update && sudo apt install -y blobfuse2
  • 创建挂载配置文件adls_config.yaml,填写你的存储账号信息:
azstorage:
  account-name: 你的ADLS存储账号名称
  account-key: 你的存储账号访问密钥
  # 国际版Azure endpoint后缀为core.windows.net
  endpoint: https://<存储账号名>.dfs.core.chinacloudapi.cn
  container: 数据湖对应的容器名称
  type: adls
  • 执行挂载:
# 创建挂载目录
sudo mkdir -p /mnt/adls_data
# 执行挂载
sudo blobfuse2 mount /mnt/adls_data --config-file=./adls_config.yaml
  • 如需开机自动挂载,将挂载规则写入/etc/fstab即可,重启后挂载不会失效。

注意:同区域的虚拟机访问同区域存储账号时,挂载目录的读写性能接近本地磁盘,远高于跨区域拷贝数据的效率


内容的提问来源于stack exchange,提问作者Luis Ramon Ramirez Rodriguez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 10:18:03