【问题标题】:InvalidProtocolBufferException: on Impala connecting to Hadoop 2.x.xInvalidProtocolBufferException:在 Impala 上连接到 Hadoop 2.x.x
【发布时间】:2015-07-23 14:33:35
【问题描述】:

我已经在 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 版本???

谢谢!!!

【问题讨论】:

    标签: ubuntu hadoop cloudera cloudera-cdh impala


    【解决方案1】:

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

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

    解决方案:-

    1. 使用相同的 protobuf 版本编译 impala 和 hadoop。
      或者

    2. 为相同的 CDH 版本使用 Hadoop/Hive/Impala。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多