1.Kylin#KYLIN任务调度

Kylin#KYLIN任务调度

国际油价 2021_20210401国际油价

kylin-cube在kylin页面构建完成无误的情况下,需要实现自动化调度,使用kylin提供的接口,实现自动化构建

有全量构建和增量构建

全量构建一般不适用于分区表,构建的方法直接不设置初始start时间和结束end时间即可

对于增量构建直接在接口中指定开始时间和结束时间即可(开始时间为表中数据最早的时间),对于这种full构建,如果kylin构建超过1个小时的往往不适用,构建时间太长了,这种全量构建使用与较小表的构建

这种构建的cube是始终是一个segment,等同于全量构建

对于一般的增量构建cube的构建,在接口中指定前一天和今天(不包含今天),只构建一天的数据,这种构建适用于数据量大的cube

这种构建每天都会产生一个segment,需要定期合并segment,kylin中提供了自动合并的参数,也可以手动合并

还有一种增量构建是对于动态分区表的构建,假设这张分区表每天更新最近90天的分区,那么如果cube也是构建90天的分区,那么也会造成每天都会产生一个segment,所以采取的策略是指定一个较长的时间区间更新(超过90天的数据),这样不会有segment产生,需要注意的是要定期更改初始构建时间

几个事项

关于segment的合并,对于一般的增量构建,怎么优化小segment的合并以及大segment合并的问题

关于segment的覆盖问题,假设有segment分区为20210401~20210501

kylin构建时间超过这个区间但是其他区间是没有数据的,我只想要未来三十天的数据

现在从底表中获取20210402~20210502区间的数据(底表只有未来三十天的数据),现在cube构建未来三十天数据,20210401的数据还保留吗如果还是保留着就只能全量构建了(底表无分区)

(测试结果是在kylin界面不可覆盖重复segment,使用脚本可以,脚本中带有删除segment的api)