微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

因异常 java.io.IOException:java.lang.RuntimeException: 查询 hive orc 表时出现严重问题而失败

如何解决因异常 java.io.IOException:java.lang.RuntimeException: 查询 hive orc 表时出现严重问题而失败

我使用以下查询创建了一个 ORC 格式的 hive 表,并且我能够在集群 1 中查询相同的表。 现在我已经使用 distcp 将底层 ORC 文件传输到不同的集群(集群 2),并且我在集群 2 中创建了相同的表结构。 当我运行 msck repair table 时,它​​能够加载分区,但是当我查询它的失败并出现严重问题时。

用于在集群 1 的 distcp orc 文件之后创建集群 2 中的表的查询

 CREATE TABLE `test_db_cluster_2.test_audit`(
  `sno` Int,`source_timestamp` string,`commit_timestamp` string,`ing_timestamp` string,`count` int,`merge_timestamp` string)
  partitioned by (tableName String)
ROW FORMAT SERDE
  'org.apache.hadoop.hive.ql.io.orc.OrcSerde'
STORED AS INPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcInputFormat'
OUTPUTFORMAT
  'org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat';
  LOCATION
  'hdfs://OMEGAPRD/user/svc-omg_1clrven_pld/cdl/test_audit'; 

已执行 msck 修复:(成功)

hive> msck repair table 1clrven_prdstg_tbls.test_audit;
OK
Partitions not in metastore:    test_audit:tablename=fin_s4hana_prd_tbls.ska1
Repair: Added partition to metastore 1clrven_prdstg_tbls.test_audit:tablename=fin_s4hana_prd_tbls.ska1
Time taken: 0.962 seconds,Fetched: 2 row(s) 

当我查询表时,它失败并出现以下错误

hive> select * from 1clrven_prdstg_tbls.test_audit;
OK
Failed with exception java.io.IOException:java.lang.RuntimeException: serIoUs problem

你能帮我解释一下为什么会这样吗? 两者都有相同的兽人文件。但是 cluster-1 我们在创建表后使用 insert into 插入数据,在 cluster-2 中我们传输文件并在其上创建表格。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。