标签: gcp-databricks

Databricks - 如何在初始化脚本中访问工作区文件

希望每个人都过得很好...

我们正在探索是否可以将一些 jar 组织为 Workspace 中文件夹的一部分,并将其作为 init 脚本的一部分移动。

例如,在工作区中我们有以下结构。

/Workspace/<Folder_Name1>/jars/sample_name_01.jar

初始化脚本将尝试将其移动到 DBFS/驱动程序节点文件系统中的路径。

!/bin/bash
cp /Workspace/<Folder_Name1>/jars/sample_name_01.jar /dbfs/jars/
cp /Workspace/<Folder_Name1>/jars/sample_name_01.jar /tmp/jars/
Run Code Online (Sandbox Code Playgroud)

当然,初始化脚本失败并显示错误消息

cp: cannot stat '/Workspace/<Folder_Name1>/jars/sample_name_01.jar': No such file or directory

已尝试使用包含和删除 /Workspace 的路径。我还尝试从网络终端访问该文件,并且我能够看到这些文件。

  1. 工作区文件可以通过 init 脚本访问吗?
  2. jar 和 whl/egg 文件有限制吗?
  3. 访问它们的正确语法是什么?
  4. 将 jar(只有少数)作为工作区文件或 DBFS 的一部分有意义吗?

感谢大家的帮助...干杯...

更新01:

尝试了通过其他方式收到的一些建议......

  1. 考虑到工作区中的初始化脚本是在没有引用的情况下引用的,/Workspace我也尝试过没有它们,但仍然存在同样的问题。
  2. 还尝试过列出文件并打印它们。路径本身似乎没有被识别。
  3. 也尝试过睡最多 2 分钟,给坐骑一些时间,但还是没有效果……

databricks azure-databricks gcp-databricks

5
推荐指数
1
解决办法
2472
查看次数

无法直接从 GCP Databricks 上的 pandas 读取

通常在 Azure/AWS 上的 Databricks 上,要读取存储在 Azure Blob/S3 上的文件,我会挂载存储桶或 Blob 存储,然后执行以下操作:

如果使用 Spark

df = spark.read.format('csv').load('/mnt/my_bucket/my_file.csv', header="true")

如果直接使用 pandas,则将 /dbfs 添加到路径中:

df = pd.read_csv('/dbfs/mnt/my_bucket/my_file.csv')

我正在尝试使用 GCP 在 Databricks 的托管版本上执行完全相同的操作,尽管我成功地安装了我的存储桶并使用 Spark 读取它,但我无法直接使用 Pandas 执行此操作,添加 /dbfs 不起作用我收到No such file or directory: ...错误

你们中有人遇到过类似的问题吗?我错过了什么吗?

还有当我这样做的时候

%sh 
ls /dbfs
Run Code Online (Sandbox Code Playgroud)

尽管我可以在 UI 中看到 dbfs 浏览器以及已安装的存储桶和文件,但它没有返回任何内容

谢谢您的帮助

python pandas google-cloud-platform databricks gcp-databricks

3
推荐指数
1
解决办法
1033
查看次数