簡體   English   中英

在 Azure Synapse Notebook 的數據框中加載許多 CSV 文件時如何忽略丟失的文件

[英]How to ignore missing files when loading many CSV files in a dataframe in Azure Synapse Notebook

我正在 Azure Synapse Notebook 中編寫 PySpark 腳本。 它應該將一長串 CSV 文件加載到這樣的數據框中:

%%pyspark

path = [
'abfss://mycontainer@mylake.dfs.core.windows.net/sku-934/data.csv', 
'abfss://mycontainer@mylake.dfs.core.windows.net/sku-594/data.csv',
'abfss://mycontainer@mylake.dfs.core.windows.net/sku-365/data.csv',
# Many more paths here
]
 
df = spark.read.options(header=True).csv(path)

但是,我不能保證所有這些路徑中的文件都存在。 有時他們不會。 如果是這種情況,整個腳本會以AnalysisException: Path does not exist

問題- 我可以指示 Azure Synapse Notebook 中的 spark 忽略丟失的文件並僅加載那些存在的文件嗎?

我已經嘗試解決這個問題 - 谷歌搜索建議我可以做spark.sql("set spark.sql.files.ignoreCorruptFiles=true") ,但由於某種原因它沒有效果。 也許這在 Synapse 中不起作用,或者它適用於不同的用例。 我對這方面的了解非常有限,所以我說不清楚。

你問的是不可能的。

在運行應用程序之前插入那些沒有數據的帶有腳本的丟失文件,或者首先構建有效列表。

眾所周知的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM