3

我使用以下语句在 HIVE 中创建了一个表。我的输入数据位于S3(s3n://test/hiveTest/01/).

CREATE external TABLE tests3(firstName STRING, lastName STRING) ROW FORMAT
DELIMITED FIELDS TERMINATED BY '\t'
STORED AS TEXTFILE
location 's3n://test/hiveTest/01/';

当我发出以下命令时,我可以看到结果数据。

蜂巢>从测试3中选择*;OK 第一 第二 第三 第四 所用时间:1.647 秒

但是当我从表中选择特定列时会出现以下错误

蜂巢>从测试3中选择名字;总 MapReduce 作业 = 1 正在启动作业 1 / 1 由于没有 reduce 运算符 java.io.FileNotFoundException:文件不存在:/tests3/hiveTest/01/abc.txt 在 org.apache,因此减少任务的数量设置为 0。 hadoop.hdfs.DistributedFileSystem.getFileStatus(DistributedFileSystem.java:736) at org.apache.hadoop.mapred.lib.CombineFileInputFormat$OneFileInfo.(CombineFileInputFormat.java:462) at org.apache.hadoop.mapred.lib.CombineFileInputFormat.getMoreSplits (CombineFileInputFormat.java:256) 在 org.apache.hadoop.mapred.lib.CombineFileInputFormat.getSplits(CombineFileInputFormat.java:212) 在 org.apache.hadoop.hive.shims.HadoopShimsSecure$CombineFileInputFormatShim.getSplits(HadoopShimsSecure.java:387) ) 在 org.apache.hadoop.hive.shims。

4

1 回答 1

4

请尝试在查询运行之前设置波纹管参数:

SET hive.input.format=org.apache.hadoop.hive.ql.io.HiveInputFormat;
于 2013-03-12T10:16:23.627 回答