【问题标题】:Is it possible to read a local excel file from within Databricks?是否可以从 Databricks 中读取本地 excel 文件?
【发布时间】:2019-09-23 13:16:47
【问题描述】:

我可以在 Databricks 中读取 xlsx 文件,但只有在将文件上传到 blob 存储之后。

下面的代码可以正常工作:

input_file = pd.read_excel("/dbfs/mnt/container_name/folder_name/input_file.xlsx")

有没有办法直接从本地存储库读取 xlsx 文件?

理想情况下,我正在寻找类似于以下的代码:

input_file = pd.read_excel("file:///C:/Users/XXX111/folder_name/input_file.xlsx")

收到错误:

URLError: <urlopen error [Errno 2] No such file or directory: '/C:/Users/XXX111/folder_name/input_file.xlsx'>

文件的位置在 C:\Users\XXX111\folder_name。

【问题讨论】:

    标签: python pandas xlsx databricks azure-databricks


    【解决方案1】:

    简短的回答:是的,这是可能的,但不是您想要的方式,尽管不推荐。

    这很难,但是:

    1 - 您需要在虚拟网络中创建 Databrick 的工作区,然后考虑到以下链接中描述的所有要求,将该网络与您的本地网络对等:

    https://docs.azuredatabricks.net/administration-guide/cloud-configurations/azure/vnet-inject.html

    2 - 之后,您必须安排数据在本地网络中变得可访问,例如本地可共享文件系统共享点、一个驱动器或任何 FS。

    3 - 因此,这将使 Databrick 的 VM 通过您的内部路由访问您的文件。

    但是,最好的办法是通过数据可以本地到达的地方向 Databricks 提供数据,例如云上的任何地方,如 Azure DataLake、Azure SQL、存储等等。

    这将为您带来一些优势,例如 24/7 全天候为您的所有工作区用户提供可用性、更好地为您的算法的未来部署做好准备,以及使用 RBAC 控制或其他访问控制方式控制谁在本机访问您的数据。

    【讨论】:

      猜你喜欢
      • 2020-12-25
      • 1970-01-01
      • 2019-12-03
      • 2019-08-26
      • 1970-01-01
      • 2019-06-08
      • 1970-01-01
      • 2021-02-12
      • 2018-07-28
      相关资源
      最近更新 更多