【发布时间】:2016-03-18 13:37:59
【问题描述】:
我的 alter table 有问题,它改变了表架构,但没有改变 parquet 架构。
例如,我有一个包含这些列的 PARQUET 表:
column1(string) column2(string)
column3(string) column4(string)
column5(bigint)
现在,我尝试使用
更改表的架构ALTER TABLE name_table DROP COLUMN column3;
使用 DESCRIBE TABLE 我可以看到 column2 不再存在;
现在我尝试执行select * from table,但收到如下错误:
“data.0.parq' 的类型与列 column4 的表架构不兼容。预期类型:INT64。实际类型:BYTE_ARRAY”
已删除列的值尚未出现在有 5 列而不是 4 列的镶木地板文件中(作为表模式)
这是一个错误?如何使用 Hive 更改 Parquet 文件的架构?
【问题讨论】:
-
您确定您使用的是 hive 而不是 impala 吗?