增量抽取的增量键设置?增量抽取选不到增量键?

增量抽取要求使用一个类型为int或者date的字段作为增量字段,且必须数据库内的该字段类型为int或者date。

  • 注意:如果在宽表中做了日期类型转化或int转化,对于抽取选增量字段还是会选不到,因为增量字段会按原始表或者自定义sql的原始字段类型判断

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

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

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

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

select cast(day as date) day1 ,* from A

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

上面是最快捷的办法,但是最好不要写“*”。