Python Pandas从数据湖读取csv

jgwigjjp  于 2023-03-06  发布在  Python
关注(0)|答案(2)|浏览(136)

我正在尝试读取存储在Azure Data Lake Gen 2上的csv文件,Python在Databricks中运行。这里有2行代码,第一行工作,第二行失败。我真的必须安装Adls才能让Pandas访问它吗?

data1 = spark.read.option("header",False).format("csv").load("abfss://oper-iot-uploads@xxx.dfs.core.windows.net/belgium/dessel/c3/kiln/temp/Auto202012101237.TXT")
data2 = pd.read_csv("abfss://oper-iot-uploads@xxx.dfs.core.windows.net/belgium/dessel/c3/kiln/temp/Auto202012101237.TXT")

有什么建议吗?

cnh2zyt3

cnh2zyt31#

Pandas不知道云存储,只能处理本地文件。在Databricks上,你应该能够本地复制文件,这样你就可以用Pandas打开它。这可以用%fs cp abfss://.... file:/your-locationdbutils.fs.cp("abfss://....", "file:/your-location")来完成(见文档)。
另一种可能性是在Spark上使用Koalas library来代替Pandas,Koalas library提供了与Pandas兼容的API。除了能够访问云中的数据外,您还可以以分布式方式运行代码。

nzk0hqpo

nzk0hqpo2#

我可以通过将云存储安装为驱动器来解决它。现在工作正常。

相关问题