2013-07-10 46 views
0

我有Windows Server 2008 R2上的HDP 1.1。
我加载了web登录到配置单元表。 CREATE TABLE语句:配置单元:选择*语句的作品,但不是选择计数(*)

create table logtable (datenonQuery string , hours string, minutes string, seconds string, TimeTaken string, Method string, UriQuery string, ProtocolStatus string) row format serde 'org.apache.hadoop.hive.contrib.serde2.RegexSerDe' with serdeproperties("input.regex" = "(\\S+)\\t(\\d+):(\\d+):(\\d+)\\t(\\S+)\\t(\\S+)\\t(\\S+)\\t(\\S+)", "output.format.string" = "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s") stored as textfile; 

负荷声明:

load data local inpath 'D:\Logfiles\' into table logtable; 

SELECT语句:

Select * from logtable; 

一切至今工作正常。

下面的语句失败:

Select count(*) from logtable; 

有例外:

失败:执行错误,从org.apache.hadoop.hive.ql.exec.MapRedTask

返回码2

EDIT1:

在失败的作业表的诊断信息显示以下信息:

'失败的地图任务超出允许限制。 FailedCount:1. LastFailedTask:task_201306251711_0010_m_000000'

+0

看这里:http://stackoverflow.com/q/11185528/891391 – yatul

+0

@yatul更新了问题 – Seenu

+0

这不是你的实际错误。它只是说有太多失败的映射器。查看Mapper日志中的具体错误。这有很多可能的原因。例如。其中一些在这里http://stackoverflow.com/a/15725084/891391 – yatul

回答

0

这不是蜂巢相关的事情。 SELECT *工作原理和SELECT COUNT(*)不是后者涉及MR工作的原因。你的数据大小是多少?

尝试通过将属性mapred.job.map.memory.mb设置为更高的值来增加映射器堆大小。也可以尝试通过mapred.min.split.size降低分割大小来增加mappers的数量,看看它是否有任何区别。

+0

我在哪里可以找到这些属性? – Seenu