gpt4 book ai didi

python - 将 Spark Dataframe (pyspark.pandas.Dataframe) 从 Azure DataBricks 导出到 Excel 文件

转载 作者:行者123 更新时间:2023-12-03 04:40:35 24 4
gpt4 key购买 nike

我正在努力将 pyspark.pandas.Dataframe 导出到 Excel 文件。

我正在使用 Pyspark 开发 Azure Databricks Notebook。我的目标是从 Azure Data Lake Storage 容器读取 csv 文件,并将其作为 Excel 文件存储在另一个 ADLS 容器上。

我发现很多与性能和方法相关的困难。pyspark.pandas.Dataframe 有一个内置的 to_excel 方法,但对于大于 50MB 的文件,命令会在 1 小时后以超时错误结束(似乎是众所周知的 problem )。

下面是代码示例。最后将文件保存在 DBFS 上(将 to_excel 方法与 Azure 集成仍然存在问题),然后将文件移至 ADLS。

import pyspark.pandas as ps
spark.conf.set(f"fs.azure.account.key.{storage_account_name}.dfs.core.windows.net", storage_account_key)

reference_path = f'abfss://{source_container_nae}@{storage_account_name}.dfs.core.windows.net/{file_name}'

df = ps.read_csv(reference_path, index=None)

df.to_excel(file_name, sheet_name='sheet')

pyspark.pandas.Dataframe 是 Databricks 建议的方法,以便与 Dataframes 一起使用(它取代了考拉),但我找不到任何解决我的问题的方法,除了将数据帧转换为正常 Pandas 一号。

有人可以帮我吗?

提前致谢!

更新

整个管道的更多信息。

我有一个 DataFactory 管道,它从 Azure Synapse 读取数据,详细说明它们并将它们作为 csv 文件存储在 ADLS 中。我需要 DataBricks,因为 DataFactory 没有 native 接收器 Excel 连接器!我知道我可以使用 Azure Functions 或 Kubernetes,但我开始使用 DataBricks 希望这是可能的......

最佳答案

嗯..看起来您正在读取同一个文件并保存到同一个文件。

你能改变

df.to_excel(file_name, sheet_name='sheet')

df.to_excel("anotherfilename.xlsx", sheet_name='sheet')

关于python - 将 Spark Dataframe (pyspark.pandas.Dataframe) 从 Azure DataBricks 导出到 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73715573/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com