Databricks - pyspark.pandas.Dataframe.to_excel 无法识别 abfss 协议
Databricks - pyspark.pandas.Dataframe.to_excel does not recognize abfss protocol
我想在 Python 中使用 Azure Databricks 将 Dataframe (pyspark.pandas.Dataframe) 保存为 Azure Data Lake Gen2 上的 Excel 文件。
我已经切换到 pyspark.pandas.Dataframe,因为它是自 Spark 3.2 以来推荐的。
有一个名为 to_excel 的方法(here 文档)允许将文件保存到 ADL 中的容器中,但我遇到了文件系统访问协议的问题。
从同一个 class 我使用方法 to_csv 和 to_parquet 使用 abfss 我想对 excel.
使用相同的方法
所以当我尝试使用以下方式保存它时:
import pyspark.pandas as ps
# Omit the df initialization
file_name = "abfss://CONTAINER@SERVICEACCOUNT.dfs.core.windows.net/FILE.xlsx"
sheet = "test"
df.to_excel(file_name, test)
我从 fsspec 得到错误:
ValueError: Protocol not known: abfss
有人可以帮我吗?
提前致谢!
pandas 数据帧不支持该协议。在 Databricks 上,您似乎只能通过 Spark 数据帧访问和写入 abfss 上的文件。因此,解决方案是在本地写入文件并手动移动到 abfss。请参阅此答案 here。
我想在 Python 中使用 Azure Databricks 将 Dataframe (pyspark.pandas.Dataframe) 保存为 Azure Data Lake Gen2 上的 Excel 文件。 我已经切换到 pyspark.pandas.Dataframe,因为它是自 Spark 3.2 以来推荐的。
有一个名为 to_excel 的方法(here 文档)允许将文件保存到 ADL 中的容器中,但我遇到了文件系统访问协议的问题。 从同一个 class 我使用方法 to_csv 和 to_parquet 使用 abfss 我想对 excel.
使用相同的方法所以当我尝试使用以下方式保存它时:
import pyspark.pandas as ps
# Omit the df initialization
file_name = "abfss://CONTAINER@SERVICEACCOUNT.dfs.core.windows.net/FILE.xlsx"
sheet = "test"
df.to_excel(file_name, test)
我从 fsspec 得到错误:
ValueError: Protocol not known: abfss
有人可以帮我吗?
提前致谢!
pandas 数据帧不支持该协议。在 Databricks 上,您似乎只能通过 Spark 数据帧访问和写入 abfss 上的文件。因此,解决方案是在本地写入文件并手动移动到 abfss。请参阅此答案 here。