[发明专利]一种ETL流程调度的方法和装置有效
申请号: | 202010782562.1 | 申请日: | 2020-08-06 |
公开(公告)号: | CN112148442B | 公开(公告)日: | 2023-07-21 |
发明(设计)人: | 梅纲;高东升;黄海明;陈琦 | 申请(专利权)人: | 武汉达梦数据库股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F16/25 |
代理公司: | 深圳市六加知识产权代理有限公司 44372 | 代理人: | 向彬 |
地址: | 430000 湖北省武汉市东湖新技术开*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 etl 流程 调度 方法 装置 | ||
1.一种ETL流程调度的方法,其特征在于:
创建延迟队列;
将需要定时执行的调度任务封装为调度元素,放入延迟队列中,所述调度元素包括调度时间、流程模型对象和调度模型对象;
到达调度元素的调度时间时,从延迟队列中取出调度元素,执行调度元素的流程模型对象;
根据调度元素的调度模型对象类型获取下一次调度的调度时间计算基准,在预设时间节点计算调度元素的调度时间,若下一次调度时间为有效时间,将调度元素的调度时间修改为下一次调度时间并放回延迟队列,以便于进行下一次调度;
其中,当系统调度任务发生变化时,根据流程调度模型列表和先前流程调度模型列表对延迟队列中相应的调度元素进行修改,再将调度元素的调度时间修改为下一次调度时间并放回延迟队列。
2.根据权利要求1所述的ETL流程调度的方法,其特征在于,所述根据调度元素的调度模型对象类型获取下一次调度的调度时间计算基准,具体包括:
若调度元素的调度模型对象类型为固定时间点或每间隔时间,以当前调度时间为基准计算下一次调度的调度时间;
若调度元素的调度模型对象类型为每隔间隔时间,等待流程模型对象执行完成,当流程模型对象执行完成时,以流程模型对象执行完成的时间为基准计算下一调度时间。
3.根据权利要求1所述的ETL流程调度的方法,其特征在于;
所述将调度元素的调度时间修改为下一次调度时间并放回延迟队列前,还包括:
判断需放回的调度元素是否存在于流程调度模型列表中;
若调度元素所对应的流程调度模型对象存在于流程调度模型列表中,将调度元素放回延迟队列中;
若调度元素所对应的流程调度模型对象不存在于流程调度模型列表中,调度元素不放回延迟队列中。
4.根据权利要求1所述的ETL流程调度的方法,其特征在于,所述根据流程调度模型列表和先前流程调度模型列表对延迟队列中相应的调度元素进行修改,具体包括:
刷新流程调度模型列表和先前流程调度模型列表,所述流程调度模型列表中存放系统调度任务变化后的流程调度模型对象,所述先前流程调度模型列表中存放系统调度任务变化前的流程调度模型;
比较流程调度模型列表和先前流程调度模型列表中不同的流程调度模型对象;
若流程调度模型对象存在于流程调度模型列表中,但不存在于先前流程调度模型列表中,将该流程调度模型对象对应的调度元素添加进延迟队列;
若流程调度模型对象不存在于流程调度模型列表中,但存在于先前流程调度模型列表中,将该流程调度模型对象对应的调度元素从延迟队列中删除。
5.根据权利要求4所述的ETL流程调度的方法,其特征在于:
还包括调度任务获取线程;
所述调度任务获取线程将需要定时调度的调度任务封装为调度元素,放入延迟队列中,并完成如权利要求4中的根据系统调度任务的变化对延迟队列中相应的调度元素进行修改的方法。
6.根据权利要求1所述的ETL流程调度的方法,其特征在于:
还包括延迟队列读取线程;
所述延迟队列读取线程使用循环等待读取的方式访问延迟队列,在到达调度元素的调度时间时,从延迟队列中取出调度元素。
7.根据权利要求6所述的ETL流程调度的方法,其特征在于:
所述延迟队列读取线程从延迟队列中取出调度元素后,以异步提交的方式执行调度元素对应的调度任务。
8.根据权利要求7所述的ETL流程调度的方法,其特征在于:
所述延迟队列读取线程还包括调度元素读取接口,以便于对调度元素进行读取。
9.根据权利要求7所述的ETL流程调度的方法,其特征在于:
还包括异常处理线程,异常处理线程通过调度元素读取接口获取调度元素的流程模型对象的调度状态,对出现异常的流程模型对象对应的调度元素进行处理。
10.一种ETL流程调度的装置,其特征在于:
包括至少一个处理器和存储器,所述至少一个处理器和存储器之间通过数据总线连接,所述存储器存储能被所述至少一个处理器执行的指令,所述指令在被所述处理器执行后,用于完成权利要求1-9任一所述的ETL流程调度的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉达梦数据库股份有限公司,未经武汉达梦数据库股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010782562.1/1.html,转载请声明来源钻瓜专利网。