python - 读取 csv 文件时 MS Databricks Spark 中绝对 URI 中的相对路径
问题描述
我是 Pyspark 的新手,正在尝试使用 Databricks 中的数据库。
我试图使用以下语法从本地计算机读取 csv 文件:
df = spark.read.format("csv").option("header", True).load("C:\\Users\\***\\Desktop\\MasterFile_v0.csv")
并收到此错误消息:java.net.URISyntaxException: Relative path in absolute URI: C:%5CUsers%5C****.10%5CDesktop%5CMasterFile_v0.csv
只是想知道如何解决这个问题。
另外,我使用 Pandas 读取 csv 但需要安装 xlrd,并且我%pip install xlrd
在 databricks 内部使用过,但似乎我没有这样做的凭据。
如果对我阅读本地文件有任何建议,那就太好了。谢谢!C
解决方案
您无法从 Databricks 访问计算机上的文件 - 它在云中运行,集群无法访问您的本地磁盘。
您需要将文件上传到 Databricks 文件系统。有多种方法可以做到这一点(在docs中列出):
- 使用上传数据 UI
- 使用Databricks CLI(可能不适用于社区版)
- 将文件放到云存储(Azure 数据湖、AWS S3 等)上,并从 Spark 访问它
推荐阅读
- ios - 项目在 Xcode 11 中的 Objective-C 中的 self.window 行崩溃
- weaviate - Weaviate 集装箱悬挂
- html - HTML 对齐和间距(没有 CSS)
- javascript - React Chrome 扩展 - `chrome.tabs.executeScript` 不一致
- python - 单个创建视图中的多个 Django OneToOne ModelForm 验证
- javascript - 检查事件在路由 Angular 后引发两次
- r - 在 r 中标记多边形的质心
- angular - 使用 MSAL Angular 访问受保护的 Azure 函数
- angular - cdkDropList 方向未按预期工作
- php - 将变量传递给 ->each() 函数使变量始终 = 0 php