我已经在ubuntu 12.04 64位版本中从http://archive.cloudera.com/impala/ubuntu/precise/amd64/impala/pool/contrib/i/impala/安装了CDH Hadoop hadoop-2.5.0-cdh5.3.2和impala 2.1。

我同时配置了hadoop和impala。

我想使用impala直接在hdfs上查询csv。

我的hadoop和hdfs一起正常运行。

但是,每当我尝试弥补Impala时,都会收到以下错误。

本地异常失败:com.google.protobuf.InvalidProtocolBufferException:消息缺少必填字段:callId,status;主机详细信息:本地主机为:“localhost / 127.0.0.1”;目标主机是:“localhost”:54310;

我了解HADOOP 2使用的是protobuf版本2.5,但是我安装的impala使用的是protobuf版本2.4。

请帮我解决这个问题。

如何安装与Impala一起使用的Hadoop 2.x版本?

谢谢 !!!

最佳答案

我解决了这个问题。问题是由于protobuf版本不匹配。

Impala直接使用HDFS,而无需借助mapreduce框架。因此,为了彼此交谈,他们需要使用通用的protobuf版本,因为不同的protobuf版本的消息格式是不同的。



http://archive.cloudera.com/impala/

http://archive.cloudera.com/cdh4/cdh/4/

关于ubuntu - InvalidProtocolBufferException:在Impala上连接到Hadoop 2.x.x,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31590444/

10-12 23:46