Impala 查询数据报错处理 NoClassDefFoundError: org/apache/hadoop/fs/adl/AdlFileSystem

错误详情:

可以进入impala,但是无法插入数据查询表数据,出现错误:NoClassDefFoundError: org/apache/hadoop/fs/adl/AdlFileSystem

[localhost.localdomain:21000] > insert into user_test values('zs');
Query: insert into user_test values('zs')
Query submitted at: 2020-12-17 02:39:24 (Coordinator: http://sunny:25000)
ERROR: AnalysisException: Failed to load metadata for table: test.user_test. Running 'invalidate metadata test.user_test' may resolve this problem.
CAUSED BY: NoClassDefFoundError: org/apache/hadoop/fs/adl/AdlFileSystem
CAUSED BY: TableLoadingException: Failed to load metadata for table: test.user_test. Running 'invalidate metadata test.user_test' may resolve this problem.
CAUSED BY: NoClassDefFoundError: org/apache/hadoop/fs/adl/AdlFileSystem

哇 这个错误好坑呀,查了三四个小时,总以为这个类应该在hadoop-common*.jar里面,下载了无数个版本的hadoop-common*.jar ,反编译都没有结果,结果在安装包里搜 AdlFileSystem.这个类,发现在 hadoop-azure-datalake*.jar

处理方案:

将hadoop里面的这个包软链接到impala 的 lib目录下。

sudo ln -s /data/CDH/hadoop-2.6.0-cdh5.14.0/share/hadoop/tools/lib/hadoop-azure-datalake-2.6.0-cdh5.14.0.jar /usr/lib/impala/lib/hadoop-azure-datalake.jar

其中:/data/CDH/hadoop-2.6.0-cdh5.14.0 是我的hadoop安装目录

然后再重新进入impala就可以啦!!!!!!!!!!

Impala基本命令

impala重启命令:(启动将restart换成start即可)

service impala-state-store restart
service impala-catalog restart
service impala-server restart

 

重启完成后可以通过命令  ps -ef|grep impala 看看是否有三个后台进程!

访问impalad的管理界面
http://172.20.71.66:25000/

访问statestored的管理界面
http://172.20.71.66:25010/

访问catalog的管理界面
http://172.20.71.66:25020

 

进入impalaimpala-shell

数据库基本操作:

show databases;
create database test;
show databases;
use test;
create table user_test(name string) row format delimited fields terminated by '\001';
insert into user_test values('zs');
select * from  user_test;

  

impala日志文件:  /var/log/impala 

impala配置文件:/etc/default/impala

/etc/impala/conf  (core-site.xml, hdfs-site.xml, hive-site.xml)

 

 posted on 2020-12-17 19:38  阿叮339  阅读(721)  评论(0编辑  收藏  举报