2013-09-28 23 views
9

我剛剛開始使用Apache Hive,並且我使用的是本地Ubuntu Box 12.04,Hive 0.10.0和Hadoop 1.1.2。Hive未能創建/用戶/配置單元/倉庫

繼Apache的網站的官方「Getting Started」指導,我現在被困在Hadoop的命令與該指南中的命令創建蜂房metastore:

$ $HADOOP_HOME/bin/hadoop fs -mkdir  /user/hive/warehouse 

誤差爲mkdir: failed to create /user/hive/warehouse

Hive是否需要特定模式下的hadoop?我知道我不必爲我的Hadoop安裝做很多事情,其他更新JAVA_HOME,因此它處於獨立模式。我確信Hadoop本身正在運行,因爲我運行了hadoop安裝附帶的PI示例。

另外,另一個創建/tmp的命令顯示/tmp目錄已經存在,因此它不會重新創建,並且/bin/hadoop fs -ls正在列出當前目錄。

那麼,我該如何解決它?

回答

3

這似乎是一個權限問題。你有權訪問根文件夾/? 請嘗試以下選項 -

1. Run command as superuser 

OR 

2.Create the warehouse in your home directory. 

讓我們知道這是否有幫助。祝你好運!

+0

是的,它變成了一個簡單的權限問題,所以「sudo bin/hadoop fs -mkdir/user/hive/warehouse」就成功了。謝謝! – yutechnet

0

雖然這是一個簡單的權限問題,將其與須藤在我上面的評論得到解決,有兩點要注意:

  1. 在主目錄中創建它應該工作一樣好,但您可能需要更新蜂巢設定爲metastore的路徑,我認爲默認爲/用戶/蜂巢/倉庫

  2. 我跑進CREATE TABLE語句與蜂巢外殼的另一個錯誤,錯誤是這樣的:

配置單元> CREATE TABLE pokes(foo INT,bar STRING); FAILED:元數據錯誤:MetaException(消息:出現異常:java.io.FileNotFoundException文件文件:/ user/hive/warehouse/pokes不存在。) FAILED:執行錯誤,從org.apache.hadoop返回代碼1 .hive.ql.exec.DDLTask

原來是另一個權限問題,你必須創建一個名爲「蜂巢」,然後將當前用戶添加到該組並更改/用戶/蜂巢/倉庫的所有權該組。之後,它就可以工作。詳情可從下面這個鏈接中找到:

http://mail-archives.apache.org/mod_mbox/hive-user/201104.mbox/%[email protected]%3E

4

當運行在本地系統上配置單元,只需添加到〜/ .hiverc:

SET hive.metastore.warehouse.dir=${env:HOME}/Documents/hive-warehouse; 

您可以指定作爲倉庫使用的任何文件夾。顯然,任何其他hive configuration方法都可以(例如hive-site.xml或hive -hiveconf)。

這可能是什麼Ambarish Hazarnis在說「或在您的主目錄中創建倉庫」時一直牢記在心。

0

如果R運行從Linux的檢查(Hadoop中核心的site.xml)數據目錄&許可,它看起來像你已經保持默認的是/數據/ tmp和即時通訊將採取root權限大多數情況下.. 更改xml配置文件,刪除/ data/tmp並運行fs格式(在修改了核心xml配置後的OC)

20

幾乎所有文檔的示例都有此命令錯誤。就像unix一樣,除非你已經創建了它們,否則你需要使用「-p」標誌來創建父目錄。該命令將起作用。

$HADOOP_HOME/bin/hadoop fs -mkdir -p /user/hive/warehouse 
0

我推薦使用高版本的配置單元,即1.1.0版本,0.10.0是非常麻煩的。

0
  • 運行此命令並嘗試創建一個目錄,它將授予用戶在hdfs/user目錄中的完全權限。 hadoop的FS -chmod -R 755 /用戶
1

當在火花配置設置的hadoop性能,具有spark.hadoop前綴它們。

因此設置

conf.set("spark.hadoop.hive.metastore.warehouse.dir","/new/location") 

這適用於舊版本的星火。該屬性已更改火花2.0.0

0

爲正在查看此相同問題的Cloudera CDH用戶添加參考答案。通過點擊桌面上的圖標

  • 推出了Cloudera管理器(快遞/企業):

    如果您正在使用的Cloudera CDH分佈,確保您已執行這些步驟。

  • 打開了Cloudera管理器頁面在瀏覽器
  • 啓動所有服務

Cloudera的有/用戶/蜂巢/倉庫默認創建的文件夾中。只是YARN和HDFS可能無法正常運行以訪問此路徑。