今天在进行数据查询的时候,报了这个异常。

Hive异常Failed with exception java.io.IOException:java.io.IOException: Malformed ORC file ...._云计算/大数据

对于一个像我这样的技术小白来说,肯定是懵住了。但幸运的是,我很快就找到了出现这个问题的缘由。


原来是我在创建表格的时候,选择的格式是ORC。

而在导入数据的时候,文本文件却非ORC格式的,固报了这个异常!


在这篇博客中,也提到了原因…


ORC格式是列式存储的表,不能直接从本地文件导入数据,只有当数据源表也是ORC格式存储时,才可以直接加载,否则会出现上述报错。


解决方案:

  1. 将ORC格式的表删除换成textfile存储格式的即可。
  2. 先创建一个以textfile格式的临时表先将源文件数据加载到该表,然后再从textfile表中insert数据到ORC目标表中。

以上两种方法都能有效的解决问题,小伙伴们只需要根据实际需求有效选择即可!

Hive异常Failed with exception java.io.IOException:java.io.IOException: Malformed ORC file ...._导入数据_02