hive新增字段后连接mysql修改_【解决方案】hive新增的字段Spark.saveAsTable读不到增加字段...

1、场景描述

Spark.saveAsTable写入hive 任务突然失败,由于hive 通过命令行新加字段

alter table XXXX add

导致之后的spark任务出错。

2、问题定位

查看建表语句

show create table test_snappy;

发现前后字段不一致,spark.sql.sources.schema.part.0 缺少新增字段信息

hive shell截图.png

3、解决思路

通过修改hive 元数据表中的schema 使前后字段信息保持一直。

4、hive的元数据表mysql 关联的表

//通过 tbls 查找TBL_ID

select * from tbls where TBL_NAME='test_snappy';

//通过 table_params 查找 对应的schema 信息

select * from table_params where TBL_ID=502 and PARAM_KEY='spark.sql.sources.schema.part.0';

//通过 修改schema ,把缺少的字段按照格式添加进去即可。

UPDATE table_params

set

PARAM_VALUE='............'

where TBL_ID=502 and PARAM_KEY='spark.sql.sources.schema.part.0'

4、反思

你可能感兴趣的:(hive新增字段后连接mysql修改_【解决方案】hive新增的字段Spark.saveAsTable读不到增加字段...)