2016-10-04 43 views
0

使用cloudera 8.1。在Hive中,使用CSV文件加載ORC格式的表格。嘗試查詢加載的表時發生此錯誤:在Hive ORC表中獲取ClassCastException

失敗,異常java.io.IOException:org.apache.hadoop.hive.ql.metadata.HiveException:java.lang.ClassCastException:org.apache.hadoop。 hive.serde2.io.HiveVarcharWritable不能轉換爲org.apache.hadoop.io.IntWritable

+0

請提供有關元數據和數據的詳細信息 –

回答

0

這是常見的問題,我看到很多人做,

您可以創建蜂巢外部表CSV格式,然後說 「INSERT INTO TABLE FINAL SELECT * FROM TEMP_TABLE」它將CSV數據複製到ORC表中。

通過使用此方法,Hive將使用內置庫將CSV數據轉換爲ORC。

+0

是的,可以完成。但是,當從ORC格式的最終​​表格中得到上述錯誤時。 – BengalTiger

+0

問題是定義爲INT的字符串之一。 – BalaramRaju

+0

從異常消息看來,似乎是這樣。但是,將規範從ORC更改爲Parquet,它工作得很好。我認爲在Cloudera 8.1版的Hive包中存在一些ORC serde實現的bug。 – BengalTiger

相關問題