一种卫星数据产品生产调度系统的制作方法

文档序号:17012345发布日期:2019-03-02 02:18阅读:251来源:国知局
一种卫星数据产品生产调度系统的制作方法

本发明涉及支持多颗卫星数据产品生产的生产调度领域,特别适合于卫星数据处理与生产等应用领域。



背景技术:

卫星数据通过地面接收站从卫星传输到地面之后,地面系统需要对接收到的数据进行大量的数据处理工作。由于数据量大、用户需求大,地面系统往往需要一套生产调度系统完成各类数据的生产协调任务。随着我国卫星种类和数量的不断增多,各卫星的数据处理系统都会自研一套生产调度系统。因此设计一套能够适用各种类卫星的产品生产调度系统能够很好节约研制成本提高研发效率。在系统中引入agent设计理念能够对卫星数据产品的生产过程实现无人值守的自动化的决策调度,并最大限度的提高系统资源的利用率和产品生产的效率,增强系统的扩展性。



技术实现要素:

本发明所要解决的技术问题在于提出了以一种能够支持多类型卫星数据产品生产的生产调度系统。

本发明解决的技术问题主要由以下技术方案实现,

一种卫星数据产品生产调度系统,采用三级调度的组织结构:包括生产请求调度模块、生产任务调度模块和生产作业调度模块;

生产请求调度模块是一级调度,用于对卫星数据产品生产请求进行分解与合并,生成生产任务队列并发送至生产任务调度模块;

生产任务调度模块是二级调度,用于根据生产任务队列以及生产作业调度模块的反馈结果创建生产流程实例,根据生产流程实例中流程的流向与分支向生产作业调度模块下达不同的生产作业;

生产作业调度模块是三级调度,采用队列管理的方式,根据生产作业的优先级、每种作业的负载要求、剩余生产资源状况和生产作业的持续时间对生产作业进行分配以及调度作业的执行,并将调度作业结果向生产任务调度模块进行反馈。

其中,生产作业调度模块包含等待队列管理agent、调度队列管理agent、处理队列管理agent、取消队列管理agent、异常队列管理agent和完成队列管理agent;

等待队列管理agent用于接收生产任务调度模块下达的生产作业,并根据剩余生产资源情况,确定进入调度队列的生产作业数量,并将该数量的生产作业发送至调度队列管理agent;

调度队列管理agent用于根据接收到的生产作业的优先级、每种生产作业的负载要求以及生产作业的持续时间确定进入处理队列的生产作业,并发送至处理队列管理agent;

处理队列管理agent用于根据接收到的生产作业内容生成作业定单并下达至下级处理设备;

取消队列管理agent用于对取消的生产作业进行管理,生成并下达取消定单至下级处理设备,并向生产任务调度模块进行反馈;

异常队列管理agent用于根据生产作业的执行结果,对异常生产作业的后续处理方式进行决策,并向生产任务调度模块进行反馈;

完成队列管理agent用于根据生产作业的执行结果,对已完成的生产作业进行管理,并向生产任务调度模块进行反馈。

其中,一级调度为业务调度agent;二级调度为流程调度agent。

其中,每级调度的agent采用与其职能相匹配的调度策略,具体如下:

业务调度agent采用先进先出调度策略;

流程调度agent对应急任务优先调度,采用优先级调度策略;

等待队列管理agent针对生产作业数量多的特点,采用资源预留调度策略;

调度队列管理agent针对应急任务优先的特点,采用短时间生产作业优先度、回填调度和抢先式调度相结合的调度策略;

处理队列管理agent具备作业立即执行的特点,采用先进先出调度策略;

取消队列管理agent具备状态立即反馈的特点,采用先进先出调度策略;

异常队列管理agent具备应急任务优先的特点,采用优先级调度策略;

完成队列管理agent具备状态立即反馈的特点,采用先进先出调度策略。

本发明与背景技术相比的优点为:

1.本发明采用三级调度组织结构,对产品生产请求逐层分类分解成若干作业,各级调度之间耦合度低,结构清晰;

2.本发明基于agent思想设计各级调度核心agent,充分发挥agent自治性、能动性等特点,自动完成卫星数据产品从生产请求的提出到完成的调度过程;

3.本发明针对不同调度agent的能力范畴与业务特点,为每个agent制定了合理的调度策略。

附图说明

图1是本发明的系统组织架构。

图2是本发明的系统运行架构。

具体实现方式

现结合附图1和附图2对本发明作进一步的说明。

产品生产调度系统是一个集流程管理和队列管理的自动化调度系统。它分为三级调度(如图1),包括生产请求调度模块、生产任务调度模块和生产作业调度模块。

生产请求调度模块是一级调度,用于对卫星数据产品生产请求进行分解与合并,包括生产请求分解算法、生产任务冲突消解算法以及区域分解算法,生成生产任务队列并发送至生产任务调度模块;

生产任务调度模块是二级调度,用于根据生产任务队列以及生产作业调度模块的反馈结果创建生产流程实例,根据生产流程实例中流程的流向与分支向生产作业调度模块下达不同的生产作业;包括遥感卫星a产品生产流程配置、侦察卫星b产品生产流程配置、科学卫星c产品生产流程配置等等。

生产作业调度模块是三级调度,采用队列管理的方式,根据生产作业的优先级、每种作业的负载要求、剩余生产资源状况和生产作业的持续时间对生产作业进行分配以及调度作业的执行,保证整体作业的效率和资源的充分利用,并将调度作业结果向生产任务调度模块进行反馈。

生产请求调度模块与生产任务调度模块之间采用生产任务标准接口,生产任务调度模块与生产作业调度模块之间采用作业调度标准接口。

其中生产作业调度模块包含等待队列管理agent、调度队列管理agent、处理队列管理agent、取消队列管理agent、异常队列管理agent和完成队列管理agent;

等待队列管理agent用于接收生产任务调度模块下达的生产作业,并根据剩余生产资源情况,确定进入调度队列的生产作业数量,并将该数量的生产作业发送至调度队列管理agent;

调度队列管理agent用于根据接收到的生产作业的优先级、每种生产作业的负载要求以及生产作业的持续时间确定进入处理队列的生产作业,并发送至处理队列管理agent;

处理队列管理agent用于根据接收到的生产作业内容生成作业定单并下达至下级处理设备;

取消队列管理agent用于对取消的生产作业进行管理,生成并下达取消定单至下级处理设备,并向生产任务调度模块进行反馈;

异常队列管理agent用于根据生产作业的执行结果,对异常生产作业的后续处理方式进行决策,并向生产任务调度模块进行反馈;

完成队列管理agent用于根据生产作业的执行结果,对已完成的生产作业进行管理,并向生产任务调度模块进行反馈。

此外,与调度系统配套使用的监控ui,完成应急生产请求的提交、生产流程、资源和队列状态的监控。包括任务管理ui负责监控生产请求调度模块,产品生产流程监控负责监控生产任务调度模块,异常处理ui负责将生产作业调度模块的异常生产作业的后续处理方式反馈给生产任务调度模块,资源监视以及队列状态监视负责监视生产作业调度模块的情况。

产品生产调度系统基于agent思想,构建通用化流程调度agent以及可扩展的队列管理agent,并结合智能的业务调度agent,共同组建支持多星多产品的通用产品生产调度系统。

系统根据三级调度的设计思想进行架构设计(如图2所示)。一级调度为业务调度agent,采用智能算法进行大量生产请求的分解与冲突合并,优化生产任务队列。

生产任务下发至二级调度,即流程调度agent。流程调度agent根据任务的要求创建各个产品的生产流程实例,为每个流程步骤创建生产作业,完成各产品各生产步骤的并行调度。生产作业下发至三级调度。

三级调度由队列管理agent组负责,一共包含6个agent,根据作业所处的阶段及状态划分为等待队列管理agent、调度队列管理agent、处理队列管理agent、取消队列管理agent、异常队列管理agent和完成队列管理agent。它们行使各自队列内作业的调度的权力,将待调度的作业依据作业流水线推至下一作业队列。

卫星产品生产调度系统有其自身特点:(1)各级产品的生产时间级别越高,处理时间可能会更长。(2)特殊时期,系统会调度大量应急任务(高优先级)。(3)低级产品生产频率高,高级产品生产频率低。

每级调度的agent采用与其职能相匹配的调度策略,如下:

业务调度agent对资源无特殊要求,采用先进先出调度策略。

流程调度agent对应急任务优先调度,采用优先级调度策略。

等待队列管理agent针对作业数量多的特点,采用资源预留调度策略。

调度队列管理agent针对应急任务优先的特点,采用短时间作业优先调度、回填调度和抢先式调度相结合的调度策略。

处理队列管理agent具备作业立即执行的特点,采用先进先出调度策略。

取消队列管理agent具备状态立即反馈的特点,采用先进先出调度策略。

异常队列管理agent具备应急优先的特点,采用优先级调度策略。

完成队列管理agent具备状态立即反馈的特点,采用先进先出调度策略。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1