在计算目标上执行的训练脚本期间,我们尝试从 ADLS2 数据存储下载已注册的数据集。问题是使用以下方法将〜1.5Gb(分成〜8500个文件)下载到计算目标需要几个小时:
from azureml.core import Datastore, Dataset, Run, Workspace
# Retrieve the run context to get Workspace
RUN = Run.get_context(allow_offline=True)
# Retrieve the workspace
ws = RUN.experiment.workspace
# Creating the Dataset object based on a registered Dataset
dataset = Dataset.get_by_name(ws, name='my_dataset_registered')
# Download the Dataset locally
dataset.download(target_path='/tmp/data', overwrite=False)
重要说明:数据集注册到 Datalake 中的路径,该路径包含许多子文件夹(以及子子文件夹,..),其中包含大约 170Kb 的小文件。
注意:我可以在几分钟内使用az copy
Storage Explorer 将完整的数据集下载到本地计算机。此外,数据集是在文件夹阶段定义的,带有用于扫描子文件夹的 ** 通配符:datalake/relative/path/to/folder/**
这是一个已知问题吗?如何提高传输速度?
谢谢 !