spark 執行wc-demo報錯歸總(saveAsTextFile方法)
阿新 • • 發佈:2020-09-17
-
核心報錯日誌
org.apache.hadoop.io.nativeio.NativeIO$Windows.createFileWithMode0(Ljava/lang/String;JJJI)Ljava/io/FileDescriptor
-
錯誤原因
在linux上執行成功的demo,程式碼放到win上就執行失敗,則可以確定是系統的不相容問題
根據查詢的各種資料可以總結出是由於 win系統缺少了hadoop持久化資料的時候的hadoop.dll和winutil.exe檔案
-
解決步驟
-
這是一個官方的bug,因此為了統一解決此問題,官方提供了GitHub連結https://github.com/steveloughran/winutils
-
-
找到下載檔案中的和本機Hadoop大版本符合的檔案下的bin,複製覆蓋掉本地的hadoop中的bin,有的是讓只複製hadoop.dll和winutil.exe。但是既然官方都直接給了bin,那就直接覆蓋掉
-
開啟bin,複製hadoop.dll和winutil.exe,貼上到C:\Windows\System32資料夾下。
-
我是在idea中執行的wc-demo,因此rebuild了一下,再run。rdd.saveAsTextFile("targetPath") 執行成功。
-
-
結語