當連接到使用dbfs aws s3 bucket,應用程序拋出錯誤
org.apache.spark。SparkException:工作階段失敗而終止:任務0階段7864387.0失敗了4次,最近的失敗:在舞台上失去了任務0.3 7864387.0 (TID 17097322) (xx。* * * .xx。x執行人853):com.databricks.sql.io。FileReadException:當閱讀文件時發生錯誤
應用程序導入csv文件從aws s3和工作幾天。我試圖加載文件很小,但同樣的問題。甚至試圖以前進口文件,同樣的問題。當我運行下麵的命令,它意味著越來越多的活躍和清單文件目錄:
顯示器(dbutils.fs.ls (“/ mnt / xxxxx / yyyy”))
示例代碼片段:
spark.read.format (csv)。選項(“inferSchema”,“真正的”)。選項(“頭”,“真正的”)。選項(“9”,”、“).load (file_location)
@Amrendra Kumar:
你提供的錯誤信息表明可能有一個問題在閱讀文件的AWS S3 bucket。這可能是由於各種原因如網絡連接問題或訪問權限錯誤。
這裏有幾件事你可以嚐試解決這個問題:
這裏有一個例子代碼片段展示了如何閱讀一個CSV文件直接從S3存儲桶使用火花:
s3_uri = " s3: / / < bucket名> / < path-to-file >“df = spark.read.format (csv)。選項(“inferSchema”,“真正的”)。選項(“頭”,“真正的”)。選項(“9”,”、“).load (s3_uri)
4)增加執行程序內存:如果上述步驟不幫忙,你可以試著增加內存通過設置spark.executor執行人。內存配置到一個更高的價值。這將給更多的內存火花執行人,可能有助於在處理大型文件。
我希望這可以幫助!