FAQ-hive(parquet)表修改字段名称查询数据null值

问题描述/异常栈

hive(parquet)表修改字段名称查询数据null

解决方案

建议使用方式1
方式1
ALTER TABLE abc SET TBLPROPERTIES ("parquet.column.index.access"="true");
abc为表名
方式2
hive client,sql之前添加
set parquet.column.index.access=true;

问题原因

Hive使用列名读取Parquet 中数据,当修改Hive 列名后,parquet schema 中列名不会修改,所以Hive读取值为Null
impala parquet.column.index.access 默认 true;按照列index 的方式进行数据读取,故不会null

作者:qianzhaoyuan