Azure 如何从blob存储中下载文件

Azure 如何从blob存储中下载文件,azure,azure-storage-blobs,databricks,Azure,Azure Storage Blobs,Databricks,我的blob存储中有一个CSV文件。我想下载这个文件。奇怪的是,我实际上看不到文件。CSV文件由Python作业创建,并转换为Scala数据帧 当我运行这两行代码时: # convert python df to spark df and export the spark df spark_df = spark.createDataFrame(df) ## Write Frame out as Table spark_df.write.csv("dbfs:/rawdata/corp/AAA.cs

我的blob存储中有一个CSV文件。我想下载这个文件。奇怪的是,我实际上看不到文件。CSV文件由Python作业创建,并转换为Scala数据帧

当我运行这两行代码时:

# convert python df to spark df and export the spark df
spark_df = spark.createDataFrame(df)
## Write Frame out as Table
spark_df.write.csv("dbfs:/rawdata/corp/AAA.csv")
我得到这个错误:

org.apache.spark.sql.AnalysisException: path dbfs:/rawdata/corp/AAA.csv already exists.;
奇怪的是,当我使用Azure Storage Explorer时,我看不到该文件。很明显,这个文件存在,尽管我看不见。如何下载此CSV文件?如果这里有人能提出更好的选择,我想最好使用Databricks,或者其他什么


谢谢。

使用blob存储和以下命令如何

# Download as a file
block_blob_service.get_blob_to_path(container_name, blob_name, local_file_name)

使用blob存储和以下命令如何

# Download as a file
block_blob_service.get_blob_to_path(container_name, blob_name, local_file_name)

我在这里找到了另一个很好的解决方案

在这一步之前,显示数据帧的内容,运行这一行代码

display(df)

我在这里找到了另一个很好的解决方案

在这一步之前,显示数据帧的内容,运行这一行代码

display(df)
注意:使用GUI,您最多可以下载100万行的完整结果

要下载超过100万个完整结果,请首先将文件保存到dbfs,然后使用Databricks cli将文件复制到本地计算机,如下所示

dbfs cp dbfs:/FileStore/tables/AA.csv A:\AzureAnalytics

参考:

DBFS命令行界面CLI使用DBFS API向DBFS公开易于使用的命令行界面。使用此客户机,您可以使用与Unix命令行上使用的命令类似的命令与DBFS交互。例如:

# List files in DBFS
dbfs ls
# Put local file ./apple.txt to dbfs:/apple.txt
dbfs cp ./apple.txt dbfs:/apple.txt
# Get dbfs:/apple.txt and save to local file ./apple.txt
dbfs cp dbfs:/apple.txt ./apple.txt
# Recursively put local dir ./banana to dbfs:/banana
dbfs cp -r ./banana dbfs:/banana
参考:

希望这有帮助。

注意:使用GUI,您最多可以下载100万行的完整结果

要下载超过100万个完整结果,请首先将文件保存到dbfs,然后使用Databricks cli将文件复制到本地计算机,如下所示

dbfs cp dbfs:/FileStore/tables/AA.csv A:\AzureAnalytics

参考:

DBFS命令行界面CLI使用DBFS API向DBFS公开易于使用的命令行界面。使用此客户机,您可以使用与Unix命令行上使用的命令类似的命令与DBFS交互。例如:

# List files in DBFS
dbfs ls
# Put local file ./apple.txt to dbfs:/apple.txt
dbfs cp ./apple.txt dbfs:/apple.txt
# Get dbfs:/apple.txt and save to local file ./apple.txt
dbfs cp dbfs:/apple.txt ./apple.txt
# Recursively put local dir ./banana to dbfs:/banana
dbfs cp -r ./banana dbfs:/banana
参考:


希望这能有所帮助。

你说得完全正确。我几天前才知道。谢谢分享。你说得很对。我几天前才知道。谢谢分享。