一种业务运行方法及装置制造方法及图纸

技术编号:8387040 阅读:159 留言:0更新日期:2013-03-07 07:44
本发明专利技术公开了一种业务运行方法及装置,主要内容包括:按照执行语句之间的条件关系确定的扫描优先级作为扫描顺序,并在扫描执行语句时,对当前扫描的执行语句的执行条件是否全部满足进行判断,以克服由于执行语句的执行条件不满足,导致执行语句运行失败的问题。另外,由于描优先级能够反映出执行语句之间的条件关系,可避免当前扫描的执行语句在执行时,其所依赖的执行语句还未执行,导致当前扫描的执行语句运行失败的问题,提高执行语句运行成功率。

【技术实现步骤摘要】

本专利技术涉及计算机
,尤其涉及一种业务运行方法及装置
技术介绍
业务的运行过程可以是根据预先确定的程序执行语句,将待运行的业务数据进行相应的操作,得到最终的运行结果的过程。以业务数据的统计过程为例,一般情况下,完成一项业务数据统计任务需要按删除数据库中的旧基础数据、生成新基础数据、执行数据统计等步骤来完成。以统计指定用户群当月通用分组无线服务(General Packet Radio Service, GPRS)业务流量为例,实现所述统计任务需要执行的步骤为删除数据库中已有的GPRS业务量表;重新对当月GPRS详细清单汇总,生成新的GPRS业务量表;创建基于所述指定用户群的手机号码的索引并依据所述新的GPRS业务量表和所述索引统计出指定用户群当月GPRS业务量数据。现有技术是通过对上述各步骤执行语句的静态脚本依照预先指定顺序串行读取并执行来完成整个统计任务的。如遇统计任务增加、变更等情况,可通过人为判断来组织各执行语句的执行顺序,并以手工方式逐字修改程序脚本来达到完成统计任务目的。但手工方式修改程序脚本易出现错误、不易重用且效率低,导致了统计任务执行成功率降低的问题。为解决手工修改执行语句的静态脚本易出现错误、不易重用且效率低的问题,最常用的方法是用程序方式对任务执行语句进行模板化管理。例如可调用根据用户行为数据类型创建的自定义变量和常用统计函数形成的自定义表达式模板来完成统计任务。这种方式虽然解决了所述手工修改执行语句易出现错误、不易重用且效率低的问题,但仍存在以下问题I、基于静态脚本式的执行语句只能依照预先指定的顺序执行,不具备自动调整执行顺序以适应执行环境(如数据库应用环境)的能力,这将导致具备执行条件的执行语句得不到执行,而正在执行的执行语句却可能因条件不具备而执行失败,造成任务执行成功率降低的问题。2、以串行方式读取并执行静态脚本式的执行语句,一方面使执行效率较低,另一方面会扩大单条执行语句的执行结果对整个脚本的影响(如先执行的执行语句运行失败时,可能会使全部任务中断执行,或对于包含多个子任务的情况,若一个子任务中执行的某一执行语句运行失败时,可能会使其他子任务运行后生成错误数据甚至运行失败),进而导致任务运行成功率降低。综上所述,现有的业务数据运行的方法,由于是对执行语句的静态脚本依照预先指定的顺序读取、运行,使得当前运行的执行语句所需的执行条件不满足以及运行顺序与执行语句之间的相关关系不匹配,导致执行语句运行的成功率较低
技术实现思路
有鉴于此,本专利技术实施例提供一种业务运行方法及装置,以解决现有技术中存在的执行语句运行成功率较低的问题。一种业务运行方法,该方法包括根据待运行业务所需的执行语句之间的条件关系,为所述执行语句确定扫描优先级;在按照扫描优先级顺序对执行语句进行扫描时,对当前扫描的执行语句执行判断当前扫描的执行语句的执行条件是否全部满足;若是,则运行当前扫描的执行语句后,继续扫描下一条执行语句;若否,则暂停或终止当前扫描的执行语句后,继续扫描下一条执行语句。一种业务运行装置,所述装置包括优先级确定模块,用于根据待运行业务所需的执行语句之间的条件关系,为所述执行语句确定扫描优先级;扫描模块,用于按照扫描优先级顺序对执行语句进行扫描;判断模块,用于判断当前扫描的执行语句的执行条件是否全部满足,若是,则触发运行模块,否则,暂停或终止当前扫描的执行语句后,触发扫描模块扫描下一条执行语句;运行模块,用于运行当前扫描的执行语句,并触发扫描模块扫描下一条执行语句。本专利技术的有益效果如下本专利技术实施例按照执行语句之间的条件关系确定的扫描优先级作为扫描顺序,并在扫描执行语句时,对当前扫描的执行语句的执行条件是否全部满足进行判断,以克服由于执行语句的执行条件不满足,导致执行语句运行失败的问题。另外,由于描优先级能够反映出执行语句之间的条件关系,可避免当前扫描的执行语句在执行时,其所依赖的执行语句还未执行,导致当前扫描的执行语句运行失败的问题,提高执行语句运行成功率。附图说明图I为本专利技术实施例一中业务运行方法的示意图;图2为本专利技术实施例二中业务运行方法的示意图;图3为本专利技术实施例三中业务运行装置的结构示意图。具体实施例方式下面结合具体实施例详细描述本专利技术方案。实施例一如图I所示,为本专利技术实施例一中一种业务运行方法步骤示意图,所述方法包括以下步骤步骤101 :确定当前待执行业务执行所需的执行语句。具体地,本步骤中,可将确定的执行语句置于任务列表中,例如,若当前待执行的业务是业务数据的统计,则本步骤确定的执行语句为删除数据库中的旧基础数据、生成新基础数据、对业务数据进行统计。所述执行语句可以是SQL语句或是其他类型的语句。步骤102 :读取配置信息中执行语句之间的条件关系参数,生成确定的所述执行语句之间的条件关系。所述条件关系参数是表示任意两个执行语句之间执行顺序的参数值,例如,执行语句a与执行语句b的条件关系参数为执行语句b需要依赖执行语句a的执行结果,也就是说,执行语句a的正确执行是执行语句b的执行条件,执行语句a是执行语句b的父节点,只有在执行语句a正确执行后才能执行执行语句b。步骤103 :根据执行语句之间的条件关系,为确定的所述执行语句确定扫描优先级。在本步骤中,可将作为父节点的执行语句的扫描优先级设置较高,将依赖该父节点的其他执行语句的扫描优先级设置较低,即将具有父子关系的多个执行语句中,父节点的扫描优先级设置高于子节点的扫描优先级。仍以执行语句a是执行语句b的父节点为例,可将执行语句a的扫描优先级设置为高于执行语句b的扫描优先级,该扫描优先级可通过扫描顺序值表示,如执行语句a的扫描顺序值为n,执行语句b的扫描顺序值为n+1,表示在后续步骤对各执行语句进行扫描时,相对执行语句b,优先扫描执行语句a。步骤104 :在对确定的执行语句按照扫描优先级顺序进行扫描时,判断当前扫描的执行语句的执行条件是否全部满足,若是,则运行当前扫描的执行语句后,继续扫描下一条执行语句;若否,则暂停或终止当前扫描的执行语句后,继续扫描下一条执行语句。在本步骤的方案中,若当前扫描的执行语句的执行条件没有全部满足(包括所有执行条件都不满足或部分执行条件不满足的情况),则可以将当前扫描的执行语句进入等待状态,在其他执行语句都扫描一遍后再重复扫描该执行语句。在本步骤的方案中,可以采用以下两种方式对确定的执行语句按照扫描优先级顺序进行扫描I、串行扫描方式在串行扫描方式下,可以按照扫描优先级由高至低的顺序,依次读取并扫描具有条件关系的执行语句。具体方式为首先读取扫描优先级最高的一个执行语句,并将该执行语句执行步骤104后,再读取与该执行语句具有父子关系的其他执行语句来重复执行上述步骤104。例如执行语句a是执行语句b的父节点,可先读取执行语句a执行步骤104,不论执行语句a在步骤104的执行结果如何,在执行语句a执行步骤104后,继续读取执行语句b来执行步骤104。例如假设执行语句cl,dl,el是具有条件关系的三条执行语句,cl的扫描优先级较高,dl的扫描优先级次高,el的扫描优先级最低;c2,d2, e2是具有条件关系的三条执行语句且都与cl,dl,el没有条件关系,c2的扫描优先级较高且与cl有相同的扫描优先级本文档来自技高网
...

【技术保护点】
一种业务运行方法,其特征在于,该方法包括:根据待运行业务所需的执行语句之间的条件关系,为所述执行语句确定扫描优先级;在按照扫描优先级顺序对执行语句进行扫描时,对当前扫描的执行语句执行:判断当前扫描的执行语句的执行条件是否全部满足;若是,则运行当前扫描的执行语句后,继续扫描下一条执行语句;若否,则暂停或终止当前扫描的执行语句后,继续扫描下一条执行语句。

【技术特征摘要】

【专利技术属性】
技术研发人员:田力曹璐
申请(专利权)人:中国移动通信集团山东有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1