问题:
impala does not have write access to at least on HDFS path hdfs://hadoop01:9000/user/hive/warehouse/news.db/hive_test_table
解决方法:
(1)可能是hdfs://hadoop01:9000/user/hive/warehouse/news.db/hive_test_table的权限不足:
[hadoop@hadoop01 ~]$ hadoop fs -chmod 775 /user/hive/warehouse/news.db/hive_test_table
[hadoop@hadoop01 ~]$ impala-shell
[hadoop01:21000] > invalidate metadata;
<注:hdfs集群上更改数据库表权限之后,一定要记住登录到impala-shell上使用invaladate metadata命令进行元数据更新,否则更改的权限在impala状态下是不生效的!!!>
(2)可能是在安装impala时,使用的是root用户,忘记将hdfs添加到root用户组而导致的权限不足问题(我就是这一种,导致impala无法insert数据到表中):
(注意:接下来的命令要在root用户下进行更改)
//将已经创建的impala、hdfs、hadoop用户组添加到root用户组中
[hadoop@hadoop01 ~]# usermod -G impala,hdfs,hadoop root
//查看是否成功
[hadoop@hadoop01 ~]# groups root
root : impala hdfs hadoop root
执行此命令后,无论是在root用户还是普通用户的状态下登录impala-shell,都可以成功插入数据。