专利名称:批量作业集中管理和调度的系统及方法
技术领域:
本发明涉及批量作业管理和调度技术领域,特别是涉及一种分布式、跨平台批量作业集中管理和调度的系统和方法。
背景技术:
在当前业务应用的软件产品中,很多产品要求在当日业务终了后,对业务数据进行批量的处理,随着业务应用的增多,这种批量处理的监控和管理工作量日益增大。
当前主流的操作系统平台主要有Solaris系统、AIX系统、Windows2000Server。在批量作业实现方面,主要包括C、PL/SQL、SQL Loader、SAS编程语言和JAVA语言编码实现等方式。在操作方式上,有使用HTML页面、字符菜单界面、图形化控制台界面方式人工交互操作,也有通过计划任务等方式实现定时启动。在监控要求方面,则根据批量作业工作是否涉及账务、对外接口等方面,要求各有不同。
由于各个应用的系统平台、实现技术、操作方式和监控要求都不同,导致相关操作工作分散,操作要求不一致,操作员工作烦琐,容易出现差错,管理效率低,增加了企业的管理和使用成本。因此存在对分布式、跨平台批量作业集中管理和调度的技术的需求。
发明内容
鉴于上述问题,提出了本发明。本发明的目的是提供一种分布式、跨平台批量作业集中管理和调度的系统和方法,能够规范开放平台批量作业相关流程,实现开放平台应用批量作业的集中监控和管理。
在本发明的第一方面,提出了一种集中监控和管理作业的系统,包括存储装置,用于存储数据;多个客户终端,用于进行作业流定义、作业监控和作业手工调度至少之一;服务管理装置,用于针对作业流中不同的作业发送作业监控和管理信息,并接收该作业的运行状态和监控结果信息;与具有不同操作系统的应用服务器相对应的多个作业控制装置,分别根据服务管理装置发送的作业监控和管理信息,运行相关的作业,监控该作业的运行情况,并将该作业的运行状态和监控结果信息返回给服务管理装置;以及连接存储装置、多个客户终端、服务管理装置和多个作业控制装置的网络。
在本发明的另一方面,提出了一种应用于包括连接在网络上的存储装置、服务管理装置、多个客户终端和多个作业控制装置的系统中集中监控和管理作业的方法,所述多个作业管理装置分别适用于基于不同操作系统的应用服务器,该方法包括步骤通过用户终端在服务管理装置中定义作业流;将定义的作业流存储在存储装置中;服务管理装置从存储装置中读取包括至少一个作业的作业流,并向与该作业相对应的作业控制装置发送启动命令;作业控制装置启动该作业,并监控该作业的运行状态;以及将与运行状态相关的信息发送给服务管理装置。
通过本发明的系统和方法,能够实现分布式作业的集中管理和对跨平台的作业管理,并实现作业的自动化管理,减少人工干预和差错,提高了作业的管理效率。
图1是根据本发明实施例的分布式、跨平台批量作业集中管理和调度的系统的方框图;图2是如图1所示的服务管理器的构成框图;图3是如图1所示的第一作业管理器的构成框图;图4示出了在服务管理器和客户终端之间进行作业流定义的流程图;图5示出了应用本发明的系统来进行对作业进行集中监控和管理的流程图。
具体实施例方式
下面将对照附图,对本发明的具体实施例进行详细说明。
如图1所示,本发明的系统包括内部网络3;连接在内部网络3上的存储器,例如数据库系统;服务管理器2;第一和第二客户终端4-1和4-2;第一和第二作业控制器5-1和5-2;以及第一和第二应用服务器6-1和6-2。
如图1所示,存储器1是网络化的数据库管理系统,例如运行在服务器上的数据库管理系统,用于存放作业定义、作业运行日志等信息和数据。
服务管理器2是J2EE服务器,用来提供作业定义、手工作业调度等服务的用户界面和逻辑处理。并且它通过内部网3与第一和第二作业控制器5-1和5-2连接,向其发送相关的作业监控和管理信息,接收相关作业运行状态和监控结果信息。
内部网络3为企业的局域网,可以是以太网(Ethernet),也可以是其它局域网络,如光纤分布式数据接口(FDDI)网、令牌环(Token-Ring)网等。
第一客户终端4-1和第二客户终端4-2是Web浏览器,客户例如通过第一客户终端4-1进行作业流定义、作业监控、作业手工调度等操作。
第一作业控制器5-1和第二作业控制器5-2与第一应用服务器6-1和第二应用服务器6-2连接,分别与第一和第二应用服务器6-1和6-2的操作系统相适应,根据不同的操作系统平台来实现作业的跨平台调度。第一作业控制器5-1和第二作业控制器5-2通过内部网络3与服务管理器2连接,根据服务管理装置2传输的作业定义和手工作业调度信息,运行相关作业,并监控作业的运行情况,将状态信息和监控结果信息返回给服务管理装置2。
第一应用服务器6-1和第二应用服务器6-2可以分别是Windows、Solaris、HP-Unix、AIX等平台下的应用服务器,用来运行各个用户终端所定义的作业。作为另一种实现方式,第一应用服务器6-1可以与第一作业控制器5-1集成在一起,而第二应用服务器6-2可以与第二作业控制器集成在一起。
图2是如图1所示的服务管理器的构成框图。如图2所示,服务管理器2包括如下各个部分。
服务管理通讯单元21,其通过内部网络3与第一和第二作业控制器5-1和5-2建立连接,传输作业流、作业命令以及作业完成后的返回信息。
用户界面提供单元22,其为用户提供相关的操作界面,主要包括用于作业流定义和手工调度之类的操作界面。
作业流定义单元23,当用户在第一客户终端4-1或第二客户终端4-2上进行作业流定义操作时,作业流定义单元23用于允许用户输入作业流名称,选择作业流中涉及的作业,定义各个作业的执行顺序、启动条件以及各作业之间的依赖关系,并通过内部网络3将其存储在存储器1中。此外,当用户在第一客户终端4-1或第二客户终端4-2上进行作业流修改操作时,作业流定义单元23从存储器1中选择一个已有的作业流,对作业流相关信息进行修改,并将其存储在存储器1中。
手工调度单元24,当用户在第一客户终端4-1或第二客户终端4-2上进行作业的手工调用操作时,手工调度单元允许用户输入相关作业调用命令,并检查作业命令。在作业命令检查通过后,手工调度单元24通过服务管理通讯单元21传送到对应的第一作业控制器5-1或第二作业控制器5-2,在那里,根据作业命令,启动相关的作业。
自动调度单元25,根据存储器1中定义的作业流信息,检查第一作业控制器5-1或第二作业控制器5-2中的作业流版本,若版本与预定的版本不一致,则向第一作业控制器5-1和第二作业控制器5-2发送相关的作业流信息。若当前符合作业流启动条件,根据作业流信息向相关的作业控制器,例如第一作业控制器5-1发送作业启动信息(启动命令),接收第一作业控制器5-1返回的与作业运行相关的监控结果信息。然后,自动调度单元25收到第一作业控制器5-1返回的作业成功完成信息后,根据作业流的定义继续进行下一作业处理,并把相关作业运行情况保存到存储器1中,提供给用户进行查询。
图3是如图1所示的第一作业控制器5-1的构成框图。由于第一作业控制器5-1与第二作业控制器5-2的构成相同,不同之处在于它们分别是针对不同的操作系统的。因此在这里不再对第二作业控制器5-2进行描述。如图3所示,第一作业控制器5-1包括如下各个部分。
作业控制通讯单元51,其与服务管理器2的服务管理通讯单元21对应,通过内部网络3建立连接,传输作业流、作业命令以及作业完成后的返回信息。
作业流处理单元52,其接收服务管理器2发送的作业流信息、自动作业调度信息以及手工作业调度信息,将调度信息传送给作业控制单元53和作业监控单元54进行作业的运行和监控。若第一作业控制器5-1和服务管理器2失去网络连接,则根据本地的作业流信息进行自动的管理和调度,完成作业流中只涉及相应的应用服务器的作业。
作业控制单元53,其根据作业调度信息,对作业进行启动、中断等操作。
作业监控单元54,其对本机运行的作业进行监控,记录作业的启动日期、启动时间、运行情况、出错信息、结束日期及结束时间,将其返回给服务管理器2。
如上所述,客户通过客户终端定义相关作业流启动时间和启动条件,存放到存储器中,并能输出作业处理命令进行作业的手工调用处理。服务管理器读取存储器中定义的相关作业流信息或接收客户终端传送的作业处理命令,向作业控制器发送作业控制信息,作业控制器根据作业控制信息进行作业的启动、中断,监控作业运行情况,将相关状态返回给服务管理器。
图4示出了在服务管理器和客户终端之间进行作业流定义的流程图。图5示出了应用本发明的系统来进行对作业进行集中监控和管理的流程图。
如图4和5所示,以两台应用服务器的批量作业为例,对本发明的工作过程进行讲解,其中第一应用服务器(Solaris平台)6-1将业务数据导出为文件,第二应用服务器(Windows平台)6-2下载该文件并导入相关数据。
第一应用服务器6-1,基于Solarise平台,与第一作业控制器(对应于Solarise操作系统)5-1连接或者包括第一作业控制器,并且包括作业1(数据生成)。
第二应用服务器6-2,基于Windows平台,与第二作业控制器(对应于Windows操作系统)5-2连接或者包括第二作业控制器5-2,并且包括作业2(数据传输)和作业3(数据导入)。
作业流定义步骤S400,用户通过第一客户终端装置4-1(浏览器)发出请求,以登录系统。
步骤S401,服务管理器2响应来自第一客户终端的请求,向用户界面提供单元22返回相关信息。
步骤S402,用户界面提供单元22在第一客户终端4-1显示相关的交易画面。
步骤S403,用户在第一客户终端4-1选择作业流定义操作,进入作业流定义单元23的功能界面,选择新增作业流,输入作业流名称(作业流A)。定义作业1,选择第一应用服务器(Solarise平台),输入作业启动条件(作业启动时间)、完成条件(返回完成标志)和相关命令。定义作业2,选择第二应用服务器(Windows平台)6-2,输入作业启动条件(作业1完成),完成条件(返回完成标志)和相关作业命令。定义作业3,选择第二应用服务器(Windows平台)6-2,输入作业启动条件(作业2完成),完成条件(返回完成标志)和相关作业命令。最后将作业流A置启用状态。
步骤S404,用户在第一客户终端4-1确认要保存作业流A。
步骤S405,服务管理器2响应来自第一客户终端4-1的保存请求,将作业流A保存到存储器1中。
步骤S406,在第一客户终端4-1上显示保存结果。
作业流调度
如图5所示,在步骤S200,服务管理器2的自动调度单元25从存储器1中读取待处理的作业流信息,例如作业流A。
步骤S201,根据作业流A的作业信息,通过服务管理通讯单元21与第一作业控制装置器5-1和第二作业控制器5-2各自的作业控制通讯单元51建立连接。
步骤S202,检查第一作业控制器和第二作业控制器5-1和5-2上的作业流A的版本和当前版本是否一致,若一致,将作业流A传给第一和第二作业控制,否则返回失败信息。
步骤S203,自动调度单元25检查作业流A中作业1的启动条件(当前时间)。若满足启动条件,向第一应用服务器(Solarise平台)6-1上的第一作业控制器5-1发送作业1的启动命令。
步骤S204,第一作业控制器5-1的作业流处理单元52接收到作业1的启动命令后,通过作业控制单元53,启动作业1。
步骤S205,第一作业控制器5-1的作业流处理单元52通过作业监控单元54,对作业1的运行状态进行监控。
步骤S206,第一作业控制器5-1的作业监控单元54检查作业1是否成功完成。若成功完成,向作业流处理单元52发送成功完成信息。
步骤S207,第一作业控制器5-1的作业流处理单元52通过作业控制通信单元51将作业1成功完成信息发送给服务管理器2中的自动调度单元25。
步骤S208,自动调度单元25将作业1置成功完成标志。
步骤S209,自动调度单元25检查作业2的启动条件,满足启动条件,向第二作业控制器5-2发送作业2的启动命令。
步骤S210,第二作业控制器5-2的作业流处理单元52接收到作业2的启动命令后,通过作业控制单元53,启动作业2。
步骤S211,第二作业控制器5-2的作业流处理单元52通过作业监控单元54,对作业2的运行状态进行监控。
步骤S212,第二作业控制器5-2的作业监控单元54检查作业2是否成功完成,若成功完成,向作业流处理单元52发送成功完成信息。
步骤S213,第二作业控制器5-2的作业流处理单元52通过相应的作业控制通信单元51将作业2成功完成信息发送给服务管理器2的自动调度单元25。
步骤S214,自动调度单元25将作业2置成功完成标志。
步骤S215,自动调度单元25检查作业3的启动条件,满足启动条件,向第二作业控制器5-2发送作业3的启动命令。
步骤S216,第二作业控制器5-2的作业流处理单元52接收到作业3的启动命令后,通过作业控制单元53,启动作业3。
步骤S217,第二作业流控制器5-2的作业流处理单元52通过作业监控单元54,对作业3的运行状态进行监控。
步骤S218,第二作业控制器5-2的作业监控单元54检查作业3是否成功完成,若成功完成,向作业流处理单元52发送成功完成信息。
步骤S219,第二作业控制器5-2的作业流处理单元52将作业3成功完成信息发送给服务管理器2的自动调度单元25。
步骤S220,自动调度单元25将作业3置成功完成标志。
步骤S221,自动调度单元25将作业流A置成功完成标志。
虽然上面以两种不同操作系统的应用服务器为例说明了本发明的操作过程,但是本发明决不限于上述的实施例,本领域的普通技术人员能够理解在实际中,可能出现多于两种的不同操作系统的应用服务器被用于批量操作。
以上所述,仅为本发明中的一种具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变换或替换,都应涵盖在本发明的包含范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
权利要求
1.一种集中监控和管理作业的系统,包括存储装置,用于存储数据;多个客户终端,用于进行作业流定义、作业监控和作业手工调度至少之一;服务管理装置,用于针对作业流中不同的作业发送作业调度和管理信息,并接收该作业的运行状态和监控结果信息;与具有不同操作系统的应用服务器相对应的多个作业控制装置,分别根据服务管理装置发送的作业调度和管理信息,运行相关的作业,监控该作业的运行情况,并将该作业的运行状态和监控结果信息返回给服务管理装置;以及连接存储装置、多个客户终端、服务管理装置和多个作业控制装置的网络。
2.如权利要求1所述的系统,其特征在于,所述服务管理装置包括服务管理通讯单元,通过网络多个作业控制装置建立连接,传输作业流、作业命令以及作业完成后的返回信息;用户界面提供单元,为用户提供相关的操作界面;作业流定义单元,当用户在相应的客户终端上进行作业流定义操作时,所述作业流定义单元用于允许用户输入作业流名称,选择作业流中涉及的作业,定义各个作业的执行顺序、启动条件以及各作业之间的依赖关系,并通过网络将其存储在存储装置中;手工调度单元,当用户在相应的客户终端上进行作业的手工调用操作时,该手工调度单元允许用户输入相关作业调用命令,并检查作业命令,向作业控制装置发送作业命令;以及自动调度单元,根据定义的作业流信息,检查作业控制装置中的作业流版本是否与预定的版本一致,如果一致,则向作业控制装置发送相关的作业流信息。
3.如权利要求2所述的系统,其特征在于,当用户在相应的客户终端上进行作业流修改操作时,作业流定义单元从存储装置中选择一个已有的作业流,对作业流相关信息进行修改,并将其存储在存储装置中。
4.如权利要求1所述的系统,其特征在于,所述多个作业管理装置的每一个都包括作业控制通讯单元,通过网络与服务管理装置建立连接,传输作业流、作业命令以及作业完成后的返回信息;作业流处理单元,接收服务管理装置发送的作业流信息、自动作业调度信息以及手工作业调度信息,将调度信息传送给作业控制装置进行作业的运行和监控;作业控制单元,根据作业调度信息,对作业进行启动和中断操作;以及作业监控单元,对相关应用服务器上运行的作业进行监控,记录作业的启动日期、启动时间、运行情况、出错信息、结束日期及结束时间,将其返回给服务管理装置。
5.如权利要求4所述的系统,其特征在于,若作业控制装置和服务管理装置失去网络连接,根据本地的作业流信息进行自动的管理和调度,完成作业流中只涉及相应的应用服务器的相关作业。
6.如权利要求1所述的系统,其特征在于,所述网络是局域网。
7.如权利要求6所述的系统,其特征在于,所述局域网是以太网、光纤分布式数据接口网或令牌环网。
8.如权利要求1所述的系统,其特征在于,所述多个客户终端是浏览器。
9.一种应用于包括连接在网络上的存储装置、服务管理装置、多个客户终端和多个作业控制装置的系统中集中监控和管理作业的方法,所述多个作业管理装置分别适用于基于不同操作系统的应用服务器,该方法包括步骤通过用户终端在服务管理装置中定义作业流;将定义的作业流存储在存储装置中;服务管理装置从存储装置中读取包括至少一个作业的作业流,并向与该作业相对应的作业控制装置发送启动命令;作业控制装置启动该作业,并监控该作业的运行状态;以及将与运行状态相关的信息发送给服务管理装置。
10.如权利要求9所述的方法,其特征在于,还包括在定义作业流之前,从服务管理装置向用户终端提供用户界面的步骤。
11.如权利要求9所述的方法,其特征在于,还包括在读取作业流之后,在服务管理装置和作业控制装置之间建立连接的步骤。
12.如权利要求9所述的方法,其特征在于,还包括在启动作业流中的作业之前,检查作业流的版本是否与预定的版本一致的步骤。
13.如权利要求9所述的方法,其特征在于,所述网络是局域网。
14.如权利要求13所述的方法,其特征在于,所述局域网是以太网、光纤分布式数据接口网或令牌环网。
15.如权利要求9所述的方法,其特征在于,所述多个客户终端是浏览器。
全文摘要
公开了批量作业集中管理和调度的系统及方法,该系统包括存储数据的存储装置;多个客户终端,进行作业流定义、作业监控和作业手工调度之一;服务管理装置,针对作业流中不同的作业发送作业调度和管理信息,并接收该作业的运行状态和监控结果信息;与具有不同操作系统的应用服务器相对应的多个作业控制装置,分别根据服务管理装置发送的作业管理和调度信息,运行相关的作业,监控该作业的运行情况,并将该作业的运行状态和监控结果信息返回给服务管理装置;以及连接存储装置、多个客户终端、服务管理装置和多个作业控制装置的网络。这样能够实现分布式作业的集中管理和跨平台的作业管理,并实现作业的自动化调度和处理,减少人工干预和差错,提高了作业的管理效率。
文档编号G06Q10/00GK1787000SQ200510123210
公开日2006年6月14日 申请日期2005年11月15日 优先权日2005年11月15日
发明者沈力, 郑均强, 孙洪阁, 黄思颖 申请人:中国工商银行股份有限公司