增量抽取选不到增量键

原因

增量抽取要求使用一个类型为int或者date的字段作为增量字段. (注意事项:如果在数据模型宽表中做了日期类型转化或int转化,对于抽取选增量字段还是会选不到,因为增量字段会按原始表或者自定义sql的原始字段类型判断)

这个增量键会在增量抽取的生成查询的sql的where条件进行使用。

特殊场景

对于HIVE的分区表,我们建议增量键和分区键一致,(分区键都以字符型的日期)。
因为一般生产库有设置hive.limit.query.max.table.partition 参数,随着时间增长,分区增多, 如果抽取生成的查询上没有用到分区键,可能会导致全表扫描,从而触发报错。

注意点:hive分区字段是string 类型,而这个字段想做增量抽取,建议大家可以写个自定义视图。

如一个表有n个字段。 分区字段是day。

select cast(day as date) day1 ,col1,col2 …… from A

day1字段一定不要和day字段同名。