[英]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.