Azure Databricks - 导出和导入 DBFS 文件系统

Posted

技术标签:

【中文标题】Azure Databricks - 导出和导入 DBFS 文件系统【英文标题】:Azure Databricks - Export and Import DBFS filesystem 【发布时间】:2021-04-02 01:59:26 【问题描述】:

我们刚刚在我们的资源组中创建了一个新的 Azure Databricks 资源。在同一资源组中,有一个旧的 Azure Databricks 实例。从这个旧的 Databricks 实例开始,我会将存储在 dbfs 中的数据复制到最新的 Databricks 实例中。 我怎么能那样做?我的想法是使用 FS 命令将数据从 dbfs 复制或移动到另一个,可能会安装卷,但我不知道该怎么做。 你有什么迹象吗?

谢谢, 弗朗切斯科

【问题讨论】:

【参考方案1】:

不幸的是,没有直接的方法可以将文件/文件夹从一个工作区导出和导入到另一个工作区。

注意:强烈建议:不要将任何生产数据存储在默认 DBFS 文件夹中

如何将文件/文件夹从一个工作区复制到另一个工作区?

您需要从一个工作区手动下载文件/文件夹,并将文件/文件夹上传到另一个工作区。

最简单的方法是使用 DBFS Explorer:

点击此链接查看:https://imgur.com/aUUGPXR

从 DBFS 下载文件/文件夹到本地机器:

方法 1:使用 Databricks CLI

DBFS 命令行界面 (CLI) 使用 DBFS API 向 DBFS 公开易于使用的命令行界面。使用此客户端,您可以使用类似于在 Unix 命令行上使用的命令与 DBFS 进行交互。例如:

# List files in DBFS
dbfs ls
# Put local file ./apple.txt to dbfs:/apple.txt
dbfs cp ./apple.txt dbfs:/apple.txt
# Get dbfs:/apple.txt and save to local file ./apple.txt
dbfs cp dbfs:/apple.txt ./apple.txt
# Recursively put local dir ./banana to dbfs:/banana
dbfs cp -r ./banana dbfs:/banana

参考:Installing and configuring Azure Databricks CLI 和 Azure Databricks – Access DBFS

方法二:使用名为 DBFS Explorer 的第三方工具

DBFS Explorer 是作为一种将文件上传和下载到 Databricks 文件系统 (DBFS) 的快速方法而创建的。这将适用于 Databricks 的 AWS 和 Azure 实例。您需要在 Web 界面中创建一个不记名令牌才能连接。

将文件/文件夹从本地机器上传到 DBFS:

有多种方法可以将文件从本地计算机上传到 Azure Databricks DBFS 文件夹。

方法 1:使用 Azure Databricks 门户。

方法 2:使用 Databricks CLI

DBFS 命令行界面 (CLI) 使用 DBFS API 向 DBFS 公开易于使用的命令行界面。使用此客户端,您可以使用类似于在 Unix 命令行上使用的命令与 DBFS 进行交互。例如:

# List files in DBFS
dbfs ls
# Put local file ./apple.txt to dbfs:/apple.txt
dbfs cp ./apple.txt dbfs:/apple.txt
# Get dbfs:/apple.txt and save to local file ./apple.txt
dbfs cp dbfs:/apple.txt ./apple.txt
# Recursively put local dir ./banana to dbfs:/banana
dbfs cp -r ./banana dbfs:/banana

方法3:使用名为DBFS Explorer的第三方工具

DBFS Explorer 是一种将文件上传和下载到 Databricks 文件系统 (DBFS) 的快捷方式。这将适用于 Databricks 的 AWS 和 Azure 实例。您需要在 Web 界面中创建一个不记名令牌才能连接。

第一步:下载安装DBFS Explorer并安装。

Step2:打开 DBFS Explorer 并输入:Databricks URL 和 Personal Access Token

第三步:从本机选择你要上传文件的文件夹,拖放到要上传的文件夹中,点击上传即可。

【讨论】:

感谢 CHEEKATLAPRADEEP-MSFT!与此同时,我已经在 CLI 中手动同步,但我会尝试 DBFS Explorer 工具来应对下一个挑战!

以上是关于Azure Databricks - 导出和导入 DBFS 文件系统的主要内容,如果未能解决你的问题,请参考以下文章

作业终止后如何将生成的文件从 Azure Databricks 导出到 Azure DevOps?

将数据表从 Databricks dbfs 导出到 azure sql 数据库

如何将所有文件从 blob 存储容器导入和处理到 azure databricks

Azure Databricks:在没有 Internet 访问的情况下在虚拟网络下导入 PyPI 库

如何将大量 DDL 从 Dev 导入/重新创建到 Azure Databricks 的 Prod 实例

SQLServer 到 Azure Databricks 的转换