修改Hudi表结构无效 ( 数据列丢失 ) 问题
Posted Laurence
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了修改Hudi表结构无效 ( 数据列丢失 ) 问题相关的知识,希望对你有一定的参考价值。
最近一次使用Hudi SQL向一个Hudi数据表插入数据时,遇到如下错误:
HoodieException: Expected table’s schema: … query’s output (including static partition values): …
经过仔细核查发现插入的目标表中少了一个刚刚修改过的列product_category
,但让人费解的是,这个列明明在建表语句中有,但是执行建表语句后查询表结构,确实没有该列:
经过排查发现原因是:product_category
列是后来新增的,在添加该列前,已经前一个版本的reviews_cow表truncate并drop掉了,但是这些操作都不会删除hudi表的元数据目录.hoodie
,导致部分的元数据残存在原来的地方,如果使用同一位置重建该表,就会使用到旧的Hudi元数据。
所以解决方法就是: 删除.hoodie
元数据目录。
以上是关于修改Hudi表结构无效 ( 数据列丢失 ) 问题的主要内容,如果未能解决你的问题,请参考以下文章
数据湖(二十):Flink兼容Iceberg目前不足和Iceberg与Hudi对比