问题现象:Hive 外部表新增字段或者修改字段类型等不生效
解决办法: 查询hive的源数据库 表SDS;修改 所有分区的CD_ID 具体操作如下。
mysql> select CD_ID from SDS where LOCATION ='hdfs://masters/user/hive/warehouse/apptestlog_gz' ;
+---------+
| CD_ID |
+---------+
| 3167025 |
+---------+
1 row in set (0.47 sec)
mysql> UPDATE SDS SET CD_ID=3167025 WHERE LOCATION LIKE 'hdfs://masters/user/hive/warehouse/apptestlog_gz/%';
Query OK, 1783 rows affected (2.07 sec)
Rows matched: 1785 Changed: 1783 Warnings: 0
mysql>
备注:其中修改分区CD_ID和查询的CD_ID一致。