impala-shell启动之后执行操作语句报错
问题一:
成功启动impala之后:执行show databases,报以下错误:
Query: show databases
ERROR: AnalysisException: This Impala daemon is not ready to accept user requests. Status: Waiting for catalog update from the StateStore.
问题分析:
报错原因是catalog没有从数据块更新消息,问题出在catalog服务上面,所以检查catalog服务
查看catalog服务:
第一步:检查服务是否开启
service impala-catalog status
Impala Catalog Server is dead and pid file exists [失败]
第二步:查看catalog日志;
发现日志报错:报错原因为拒绝连接,元数据异常,由于impala与hive共享元数据库,所以在启动impala-shell之前,首先要启动hive元数据服务;
问题解决:
在impala各个节点下面执行:
hive --service metastore &
hive --service hiveserver &
问题二:WARNINGS: Impala does not have READ_WRITE access to path 'hdfs://mrj001:9000/'
报错分析:
impala-shell运行的时候使用Impala用户,impala对hfds路径没有读写权限;
问题处理:
方法一:对hdfs的目录进行赋权:hadoop fs -chomd -R 777 path
方法二:创建hadoop用户组,然后将impala加入到hadoop用户组中,同时给impala用户定制权限