取消
顯示的結果
而不是尋找
你的意思是:

SparkFiles——奇怪的行為在Azure磚(運行時10)

Hubert_Dudek1
尊敬的貢獻者三世

當你使用:

從pyspark進口SparkFiles spark.sparkContext.addFile (url)

它將文件添加到非dbfs / local_disk0 /但當你想讀文件:

spark.read.json (SparkFiles.get (“file_name”))

要從/ dbfs / local_disk0 /讀取它。我也試過用文件:/ /和許多其他創造性的方式,它不工作。

當然是工作在使用% sh cp -從/ local_disk0 / / dbfs / local_disk0 /。

這似乎是一個錯誤就像addFile轉向dbfs azure磚但SparkFiles不是(在原始火花addFile和到達/從工人)。

我也找不到任何設置手動指定SparkFiles RootDirectory。

30日回複30.

匿名
不適用

@Hubert杜德克,@Dev約翰,@Marcos Gois,費爾南德斯@Jorge, @welder馬丁斯——你能打開一個票,支持https://help.m.eheci.com/s/contact-us嗎?

weldermartins
尊敬的貢獻者

好的,可惜它不能在這裏解決。但是票被打開了,我給進展的消息。

謝謝。

匿名
不適用

@welder馬丁斯——謝謝你打開票。我們想要涵蓋所有基地。

arjun_kr
價值貢獻
價值貢獻

閱讀文件添加通過addFile使用火花dataframe api不理想的工作在多節點集群的臨時目錄用於存儲這些文件將司機和執行人之間會有所不同。

SparkFiles.get (“file_name”)將返回的本地目錄路徑添加文件' / local_disk0 /火花- 3 - ff880e3 b9b4 - 4077 - a011 - 4 - ec3ae9d6037 / userFiles-c7e5e114-2aa2-42aa-aaf4-ab9edfe4b3a4 file_name”。運行spark.read.json (SparkFiles.get (“file_name”)會失敗因為默認URI模式是dbfs: /,它將解決非存在的路徑dbfs: / local_disk0 / xxxx。

運行spark.read.json(“文件:/ /”+ SparkFiles.get (“file_name”)通過添加文件:/ /模式解決輸入路徑會對司機臨時位置,這個特殊的路徑不會出現在執行人,再次失敗。這可能工作在單節點集群而不是多節點集群。

推薦的方法是將數據存儲在dbfs或其他支持存儲和使用各自的url來處理數據。

Hubert_Dudek1
尊敬的貢獻者三世

是的這個解決方案已經在stackoverflow討論。問題是,這種火花功能應調整DBR通過dbfs自動處理一切。問題是,似乎這是部分調整但不完全。

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map