Hive SQL中有没有办法在特定时间后更新所有分区?
我根据交易时间有每小时的分区。很可能一个交易记录迟到了几个小时,它到达了一个较旧的分区。
Table1 : Hourly partitions
00
01
..
23
Table 2 : Daily partitions
After midnight above 24 partitions are aggregated into daily partition in Table2.
在创建每日分区后,一组事务迟到,并将它们添加到Table1每小时分区中。 假设它们是在小时= 20分区中添加的。
我需要以这种方式识别所有分区接收到的最新更新。因此,如果有需要,我将重新计算表2中的每日分区数据。
答案 0 :(得分:1)
我会介绍两列的中间表:日期和最后修改时间。每次延迟记录到达时,都会使用上一次更新时间的新行更新此表。
表2可以使用该表来检查上次修改时间是否>工作最后执行时间。如果是,请对当天进行计算。