如何通过Databricks在Data Lake中用更少的时间将大文件从一个目录复制到另一目录?

时间:2019-03-05 16:37:40

标签: python-3.x azure-data-lake databricks

我正在尝试将 20GB 文件从一个文件夹复制到 Azure Data Lake 中的另一个文件夹,并希望通过Data Bricks实现。 我已经尝试了以下代码,但要花费一个多小时。 谁能建议我如何在不到20分钟的时间内完成此任务??

import shutil, os
shutil.copytree("/dbfs/mnt/storage1/ABC/", "/dbfs/mnt/storage1/copied/")

2 个答案:

答案 0 :(得分:0)

尝试使用azure.datalake.store库,此处有更多详细信息:https://github.com/Azure/azure-data-lake-store-python

这应该防止数据块下载和重新上传文件。

答案 1 :(得分:0)

最佳选择是使用dbutils.fs。

这将为您做到:

 dbutils.fs.cp ("/mnt/storage1/ABC/", "/mnt/storage1/copied/", recurse=True)