2016-08-02 22 views

回答

0

NiFi/HDF是否在Hadoop節點上運行?如果是這樣,它在哪個用戶下運行?你需要授予SELECT權限用戶:

https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.0/bk_Ranger_User_Guide/content/user_access_hive_db_tables_cmd_line.html

如果該用戶不存在的Hadoop,你將不得不添加:

https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsPermissionsGuide.html

或運行NiFi/HDF作爲OS和Hadoop中存在的用戶。

如果NiFi/HDF未在Hadoop節點上運行,則需要將運行NiFi的用戶/組(使用相同的UID/GID)添加到Hadoop(使用上述鏈接進行指導),或者在已經在Hadoop中的HDF節點上創建一個用戶/組(並對該表擁有SELECT權限)。

+0

NiFi在datanode上運行。用戶'root'運行NiFi服務。我的問題是爲什麼錯誤說'匿名'用戶?那麼這是否意味着我們只需要向用戶「root」授予select?不是'匿名'?但是我從ambari以admin身份登錄,創建了蜂巢UI中的表格。在/ app/hive/warehouse中,表文件夾屬於'hive',組'hdfs' – iPhoneJavaDev

+0

您向HiveConnectionPool提供的憑據是什麼?如果沒有,那麼你是匿名的,將不得不授予匿名用戶權限。 – mattyb

+0

什麼都沒有......但是當我使用'hive'作爲用戶名,我仍然得到相同的錯誤,這次,而不是'匿名',它說'蜂房'。 – iPhoneJavaDev