1. 程式人生 > >spark-local 模式 提示 /tmp/hive hdfs 權限不夠的問題

spark-local 模式 提示 /tmp/hive hdfs 權限不夠的問題

spark 大數據 hadoop

spark版本為2.0

在spark 在 local 模式下啟動,有時會報/tmp/hive hdfs 權限不夠的問題,但是我們並沒有將hdfs-site.xml配置文件放到我們的項目中,spark的文件應該會存在本地電腦上,但是為什麽會報這個錯誤呢?這個問題非常詭異,有的同事會報此錯誤,有的則不會。都是同樣的配置。

這是在2016/10/31 報的錯誤,之前在本地測試從來不會報這個錯誤,但是在這天早上2個同事反映起不來項目,我自己試了一下也起不來,同樣的錯誤。

最終發現spark報的錯誤不準確,如果在windows環境下spark會去某一個盤下創建“tmp/hive/用戶名”

的文件夾,在這個文件夾下存放一些臨時文件,註意,這裏並不是數據文件,數據文件的地址另有設置。我們發現報錯的同事都是只創建了“tmp/hive”的文件夾,下面的用戶名文件夾並沒有創建成功,可以推斷,spark在下次啟動的時候,創建此文件夾出錯了,所以我們把“tmp/hive”的文件夾刪除,再次啟動,spark就可以正常運行了,運行成功後會創建“tmp/hive/用戶名” 的文件夾。

值得一提的是,本機測試之前沒有出現此問題,之前都是創建在E盤下

技術分享


而2016/10/31(周一)來時,spark卻選擇了C盤,期間,代碼,配置,環境等都沒有變化,這個原因到目前未能解開。

技術分享

這個xiaokan的文件夾也是一定要在第一次spark啟動失敗後(創建了tmp/hive),後將tmp/hive刪除後才能創建起來,具體原理,至今未明確。


這裏補充一句,在後續我們使用spark2.1版本後,再也沒有出現此問題,可能是spark2.0的坑吧。

本文出自 “去買大白兔” 博客,轉載請與作者聯系!

spark-local 模式 提示 /tmp/hive hdfs 權限不夠的問題