一种任务运行状态信息获得方法及装置与流程

文档序号:11154801阅读:1059来源:国知局
一种任务运行状态信息获得方法及装置与制造工艺

本发明涉及信息技术领域,特别涉及一种任务状态信息获得方法及装置。



背景技术:

随着大数据时代的到来,数据仓库的规模不断发展扩大,数据仓库是一个面向主题、集成、时变、非易失的数据集合,是支持管理部门的决策过程。在数据仓库中,每天需要都对大量不同数据源、多种异构数据进行ETL(Extraction-Transformation-Loading,数据抽取、转换和加载)处理。上层业务需求的不断增加扩展,数据库仓库中支持ETL处理的各种任务数量会随之呈现急速增长的趋势。面对如此大数量的任务,如何能够通过安全、高效的方式对任务运行状态进行查询,以便保证上层业务全天的不间断高效运行就变得尤为重要。

现有针对任务的运行状态获得是通过“心跳检测”获得任务的运行状态,具体的方法为向所有任务所在的线程发送“心跳包”,心跳包用来检测线程是否正常运行,在一定时间内若收到任务所在线程的回应,说明该线程正常运行,则该线程所执行的任务的运行状态为正常,若没有,说明该线程处于异常状态,则该线程所执行的任务的运行状态为异常。这种方法得到的任务的运行状态的为正常或异常,不能获取任务运行状态的详细信息。



技术实现要素:

本发明实施例的目的在于提供一种任务运行状态信息获得方法及装置,以获取任务运行状态的详细信息。

为达到上述目的,本发明实施例公开了一种任务运行状态信息获得方法,所述方法包括:

确定目标数据仓库的数据库管理系统的类型,其中,所述数据库管理系统中至少存储有任务的运行状态信息;

利用与所确定的类型对应的脚本语言编写的脚本,从所述数据库管理系统中读取所存储的任务的运行状态信息,以获得任务的运行状态信息。

较佳的,所述数据库管理系统中还存储有任务的配置信息;所述方法还包括:

利用所述脚本,从所述数据库管理系统中读取所存储的任务的配置信息。

较佳的,所述方法还包括:

将所读取的任务的运行状态信息向用户展示。

较佳的,所述方法还包括:

根据所读取的任务的运行状态信息,按照预设文本内容属性,生成预设格式的文本文件。

较佳的,所述方法还包括:

保存所述文本文件。

为达到上述目的,本发明实施例还公开了一种任务运行状态信息获得装置,所述装置包括:

确定模块,用于确定目标数据仓库的数据库管理系统的类型,其中,所述数据库管理系统中至少存储有任务的运行状态信息;

第一读取模块,用于利用与所确定的类型对应的脚本语言编写的脚本,从所述数据库管理系统中读取所存储的任务的运行状态信息,以获得任务的运行状态信息。

较佳的,所述数据库管理系统中还存储有任务的配置信息;所述装置还包括:

第二读取模块,用于利用所述脚本,从所述数据库管理系统中读取所存储的任务的配置信息。

较佳的,所述装置还包括:

展示模块,用于将所读取的任务的运行状态信息向用户展示。

较佳的,所述装置还包括:

生成模块,用于根据所读取的任务的运行状态信息,按照预设文本内容属性,生成预设格式的文本文件。

较佳的,所述装置还包括:

保存模块,用于保存所述文本文件。

由上述技术方案可见,本发明实施例提供了一种任务运行状态信息获得方法及装置,方法包括:确定目标数据仓库的数据库管理系统的类型,其中,所述数据库管理系统中至少存储有任务的运行状态信息;利用与所确定的类型对应的脚本语言编写的脚本,从所述数据库管理系统中读取所存储的任务的运行状态信息,以获得任务的运行状态信息。应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行状态信息,获取到了任务运行状态的详细信息。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的任务运行状态信息获得方法的第一种流程示意图;

图2为本发明实施例提供的任务运行状态信息获得方法的第二种流程示意图;

图3为本发明实施例提供的任务运行状态信息获得方法的第三种流程示意图;

图4为本发明实施例提供的任务运行状态信息获得方法的第四种流程示意图;

图5为本发明实施例提供的任务运行状态信息获得方法的第五种流程示意图;

图6为本发明实施例提供的任务运行状态信息获得装置的第一种结构示意图;

图7为本发明实施例提供的任务运行状态信息获得装置的第二种结构示意图;

图8为本发明实施例提供的任务运行状态信息获得装置的第三种结构示意图;

图9为本发明实施例提供的任务运行状态信息获得装置的第四种结构示意图;

图10为本发明实施例提供的任务运行状态信息获得装置的第五种结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为了解决现有技术问题,本发明实施例提供了一种任务运行状态获得方法及装置。下面首先对本发明实施例所提供的一种任务运行状态获得方法进行介绍。

图1为本发明实施例提供的任务运行状态信息获得方法的第一种流程示意图,方法可以包括:

S101:确定目标数据仓库的数据库管理系统的类型,其中,所述数据库管理系统中至少存储有任务的运行状态信息。

数据仓库(Data Warehouse,DW或DWH)是一个面向主题、集成、时变、非易失的数据集合。数据仓库的目的是为了建立一种体系化的数据存储环境,将分析决策所需的大量数据从传统的操作环境中分离处理,使分散、不一致的操作数据转换为集成、统一的信息。数据仓库的关键是从许多来自不同数据源的数据中,提取有用的数据,进行清洗以保证数据的正确性,然后经过抽取(Extraction)、转换(Transformation)和加载(Loading),即ETL过程,合并到一个数据仓库中,从而得到一个全局视图,在此基础上利用合适的查询、分析、挖掘工具对数据进行分析处理,最后将会结呈现给管理者,为管理者提供决策支持。

数据库管理系统(Database Management System)是一种操纵和管理数据库或数据仓库的大型软件,用于建立、使用和维护数据库或数据仓库,简称DBMS。它对数据库或数据仓库进行统一的管理和控制,以保证数据库或数据仓库的安全性和完整性。在实际应用中,可以根据数据库管理系统的版本号确定数据库管理系统的类型。示例性的,假设版本号为25对应的是2008版的微软关系型数据库管理系统,如果确定目标数据库的数据库管理系统类型为2008版的微软关系型数据库管理系统。

需要说明的是,数据库管理系统中存储了任务的实时运行状态信息,一旦任务状态信息发生变化,将会自动更新该任务的状态信息。在实际应用中,数据库管理系统可以将任务的运行状态信息存储在表中,进一步地,可以将任务的运行信息存储在多张表中,例如,可以将部分运行状态信息存储在任务表,一部分存储在数据库管理系统架构表中,另一部分存储在数据库管理系统属性表中。

S102:利用与所确定的类型对应的脚本语言编写的脚本,从所述数据库管理系统中读取所存储的任务的运行状态信息,以获得任务的运行状态信息。

脚本,是使用一种特定的描述性语言,依据一定的格式编写的可执行文件,又称作宏或批处理文件。当数据库管理系统为关系型数据库管理系统时,这里所说的脚本语言可以为SQL,SQL(Structured Query Language,结构化查询语言)是一种特殊目的的编程语言,用于存取数据以及查询、更新和管理关系数据库系统。在本发明实施例中,SQL是数据仓库中使用频率最高、成本最低的查询语言,使用SQL,不需要任何程序开发,不需要购买昂贵的数据仓库配套工具软件,不依赖于任何第三方相关工具,而且,大幅降低了使用者门槛,使得大部分人可以根据自身所需要获得的任务的运行状态编写SQL脚本。

在实际应用中,脚本中可以根据实际情况定义需要获得任务的一种或多种运行状态信息,例如,需要获得的任务的运行状态信息可以为CPU占用信息,磁盘占用信息、当前任务的进度、内存的占用信息、任务的开始时间和任务预计处理时间、占用的带宽等等。

如果运行状态信息存储在任务表,一部分存储在数据库管理系统架构表中,另一部分存储在数据库管理系统属性表中。在实际应用中,可以根据任务表、数据库管理系统架构表及数据库管理系统属性表的连接关系,读取任务的运行状态信息。在实际应用中,根据任务的标识信息建立任务表、数据库管理系统架构表及数据库管理系统属性表的连接关系,具体的建立过程是现有技术,在这里不进行赘述。

利用脚本,从数据库管理系统读取的任务的运行状态是当前任务的详细信息,而不是和现有技术一样,只获得任务的运行状态的结果信息,本发明实施例能够得到在获得任务运行状态时刻,任务的具体运行状态。

在实际应用中,可以设置获得任务的运行状态的步骤定时启动。具体的,设置定时启动的方法,可以根据现有技术进行设置,在此不进行赘述。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行状态信息,获取到了任务运行状态的详细信息。

图2为本发明实施例提供的任务运行状态信息获得方法的第二种流程示意图,本发明图2所示实施例在图1所示实施例的基础上,增加S103。

在本发明实施例中,数据库管理系统中还存储有任务的配置信息。

S103:利用所述脚本,从所述数据库管理系统中读取所存储的任务的配置信息。

在现有技术中,通过Wiki(超文本系统)等各种文档平台为载体,记录、更新任务的配置信息。需要获得任务的配置信息的时候,可以在记载任务的配置信息的文档平台获得。在这种方法中,如果任务的配置信息发生变化,需要相关人员在文档平台上更新相应的信息,由于需要人工更改任务的配置信息,可能存在滞后或者忘记更新等问题,这样,获得任务的配置信息出错的可能性大幅增加。另外,数据库管理系统与文档平台是两个不同的场景,当进行更新、补充任务的配置信息的时候,需要在两个场景之间进行切换,增加了操作时间,进一步的,增加了人工成本。在本发明实施例中,既可以获得任务的运行状态信息,也可以获得任务的配置信息。

在本发明实施例中,如果需要获得任务的配置信息,只需要在脚本中定义需要获得具体哪些配置信息即可,例如,可以获得任务的版本等等。在实际获得任务的配置信息时,利用自定义的脚本,即可一次性获得所有需要的配置信息。相较于现有技术,提高了获得的配置信息的准确定率和效率,同时,因为不需要在文档平台维护任务的配置信息,降低了人工成本。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。通过利用脚本读取数据库管理系统中的任务的配置信息,相较于现有技术,提高了获得的配置信息的准确定率和效率,同时,因为不需要在文档平台维护任务的配置信息,降低了人工成本。

图3为本发明实施例提供的任务运行状态信息获得方法的第三种流程示意图,本发明图3所示实施例在图1所示实施例的基础上,增加S104。

S104:将所读取的任务的运行状态信息向用户展示。

在实际应用中,如果提前设置了针对关键的运行状态信息设置了预警阈值,在向用户展示时,超过预警阈值的运行状态信息与没有超过预警阈值的运行状态信息区分出来,例如,可以以字体进行区分,也可以以字体的大小进行区分,也可以以字体的颜色进行区分,当然,并不仅限于此。这样能做到事前预警,相对于现有技术中的事后响应,对上层业务的影响降低。当发现超过预警阈值的运行状态信息,用户可以采用措施,使得上层业务可以全天的不间断的高效运行。现有技术只有当上层业务出现问题时,才会采取措施,这样影响上层业务的正常运行。脚本中包含待读取的任务的配置信息时,还可以将所读取的任务的配置信息向用户展示。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。同时,用户可以根据展示的任务运行状态信息,采用措施保证上层业务可以全天的不间断的高效运行。

图4为本发明实施例提供的任务运行状态信息获得方法的第四种流程示意图,本发明图4所示实施例在图1所示实施例的基础上,增加S105。

S105:根据所读取的任务的运行状态信息,按照预设文本内容属性,生成预设格式的文本文件。

需要说明的是,预设文本内容属性中所有有关文本内容的属性都可以由用户自定义,可以是有关字体、段落、样式等内容的设置。例如,在文本内容属性中可以将一级标题的字体设置为宋体、二号字;二级标题设置的字体设置为宋体、三号;可以将三级标题的字体设置为宋体、四号字;正文文本可以设置为宋体、小四号字,针对段落的设置可以为:间距为段前0行,段后0.5行,首行缩进2字符,行距为22磅,对齐方式为两端对齐。文本文件中的除中文之外的英文字母、希腊字母、数字等的字体设置为Times New Roman,Times New Roman是一种字体,在字体设计上属于过渡型衬线。

该文本文件还可以包括索引目录,此时预设文本内容属性还包含针对索引目录的样式的内容,索引目录记录了任务的标识信息与该任务对应的运行状态信息所在文本文件中的页码,如果任务的标识信息为中文,可以将任务的标识信息设置为宋体、小四号字,如果任务的标识信息为除中文之外的其他字符,可以设置为Times New Roman,小四号字。该任务对应的运行状态信息所在文本文件中的页码可以设置为宋体、小四号字。当然,在这里还可以设置文本中页面的颜色,具体的颜色可以根据个人的喜好进行设置。上述的设置中,如果没有对字体的颜色进行特别说明,以上设置中字体的颜色为同一种颜色。这里所说的预设文本内容属性与Word文档内容的属性类似。

在实际应用中,还可以根据实际需要,针对同一个运行状态信息,可以设置不同的文本属性,例如,在对任务的运行状态中的CPU的占用率设置了预警阈值的情况下,可以将超过预警阈值的CPU占用率设置为宋体、三号字、加粗,没有超过预警阈值的CPU占用率设置为宋体、小四号字;还可以将超过预警阈值的CPU占用率设置为宋体、小四号字、字体颜色为红色,将没有超过预警阈值的CPU占用率设置为宋体、小四号字、字体颜色为黑色。当然上述设置如果生成的文件中的索引目录中体现,则文本内容属性中针对索引目录的部分也包括上述设置的内容。

预设文本属性中可以包括对正文中表格的样式的设置,表格的具体样式可以根据获取的任务状态种类和配置种类确定。例如,可以将表格的设置为两行五列,表格中待存储的运行状态信息和配置信息的格式可以设置与正文其他内容的格式相同,当然,也可以设置为不相同。

预设文本内容属性包含了数量繁多的组合,在这里不进行一一列举,只通过上面的设置举例说明文本内容属性可以哪些内容而已。

在脚本中包含待读取的任务的配置信息时,也可以根据所读取的任务的配置信息,按照预设文本内容属性,生成预设格式的文本文件。

在实际应用中,可以根据待读取的任务的运行状态信息和配置信息,建立一个数据表,用于临时存储读到的任务的运行状态信息和配置信息。当读取到一个任务的运行状态信息和配置信息后,可以将读取到的信息存储在数据表中,再读取下一个任务的运行状态信息和配置信息。当需要获取的任务的运行状态信息和配置信息读取完成之后,可以按照预设文本属性,将同一个任务的运行状态信息和配置信息拼接在一起。拼接完成后会出现由Print函数打印出的展示任务的运行状态信息和配置信息的文本文件。

生成的文本文件为Html(Hyper Text Markup Language,超级文本标记语言)格式的文本文件,该文本文件中的索引目录、标题、正文及正文中表格等内容均可按照用户自定义的格式显示。利用本发明实施例生成的Html格式的文件相较于简单文件,提高了可阅读性,进而,提高了用户体验。

在实际应用中,根据生成的文本文件及任务的标识信息,可以快速查询到任务获得的全部信息。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。在按照预设文本内容属性生成的文本文件中,可以快速查询到任务获得的全部信息。

图5为本发明实施例提供的任务运行状态信息获得方法的第五种流程示意图,本发明图5所示实施例在图4所示实施例的基础上,增加S106。

S106:保存所述文本文件。

将文本文件进行保存,可以作为一个历史记录,以便后期后任务的历史运行状态信息进行查询。通过保存的文件确定是否采用措施保证上层业务的正常运行,减少了对在线资源的浪费。保存的方法可以为:拷贝文件,并以Html格式保存。在保存的文件中,不需要进行任何加工就可以获得任务的运行状态信息和配置信息,实现了所见即所得功能。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。

图6为本发明实施例提供的任务运行状态信息获得装置的第一种结构示意图,装置可以包括确定模块601和第一读取模块602。

确定模块601,用于确定目标数据仓库的数据库管理系统的类型,其中,所述数据库管理系统中至少存储有任务的运行状态信息;

第一读取模块602,用于利用与所确定的类型对应的脚本语言编写的脚本,从所述数据库管理系统中读取所存储的任务的运行状态信息,以获得任务的运行状态信息。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行状态信息,获取到了任务运行状态的详细信息。

图7为本发明实施例提供的任务运行状态信息获得装置的第二种结构示意图,本发明图7所示实施例在图6所示实施例的基础上,增加第二读取模块。

具体的,所述数据库管理系统中还存储有任务的配置信息;

第二读取模块603,用于利用所述脚本,从所述数据库管理系统中读取所存储的任务的配置信息。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。通过利用脚本读取数据库管理系统中的任务的配置信息,相较于现有技术,提高了获得的配置信息的准确定率和效率,同时,因为不需要在文档平台维护任务的配置信息,降低了人工成本。

图8为本发明实施例提供的任务运行状态信息获得装置的第三种结构示意图,本发明图8所示实施例在图6所示实施例的基础上,增加展示模块604。

展示模块604,用于将所读取的任务的运行状态信息向用户展示。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。同时,用户可以根据展示的任务运行状态信息,采用措施保证上层业务可以全天的不间断的高效运行。

图9为本发明实施例提供的任务运行状态获得信息装置的第四种结构示意图,本发明图9所示实施例在图6所示实施例的基础上,增加生成模块605。

生成模块605,用于根据所读取的任务的运行状态信息,按照预设文本内容属性,生成预设格式的文本文件。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。在按照预设文本内容属性生成的文本文件中,可以快速查询到任务获得的全部信息。

图10为本发明实施例提供的任务运行状态信息获得装置的第五种结构示意图,本发明图10所示实施例在图9所示实施例的基础上,增加保存模块606。

保存模块606,用于保存所述文本文件。

应用本发明实施例,通过利用脚本读取数据库管理系统中的任务运行信息,获取到了任务运行状态的详细信息。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中,这里所称得的存储介质,如:ROM/RAM、磁碟、光盘等。

以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

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