一种基于配置文件的流式统计定义及运行方法技术

技术编号:14677099 阅读:68 留言:0更新日期:2017-02-19 03:24
本发明专利技术公开了一种基于配置文件的流式统计定义及运行方法,包括以下步骤:创建配置文件,配置文件的内容包括任务信息和计算模型;编辑任务信息,任务信息包括属性:任务名称、任务类型和任务描述;编辑计算模型,计算模型描述统计过程所需组成元素包含:数据源定义、模式定义、统计操作定义和动作定义;验证配置文件合法性;配置文件生效管理,所有流式统计配置文件由单独的任务配置文件统一管理,只有增加到任务配置文件中的合法的流式统计配置文件才能生效;运行流式统计任务,统计服务启动时带启动参数:任务编号;统计任务执行过程中,所有数据均是JSON格式,通过属性名访问。本发明专利技术免代码维护、可灵活定义、适用于调度自动化系统。

【技术实现步骤摘要】

本专利技术涉及一种基于配置文件的流式统计定义及运行方法,属于电力系统自动化

技术介绍
随着云计算、大数据技术的发展,运用大数据技术从海量数据中获取潜在的有用信息已得到了各方面的广泛关注。日志数据作为原始大数据,其价值也越来越受到重视。在调度自动化系统中,目前日志数据只停留在事后故障诊断单一用途上,其主要分析方法仍停留在人工配合简单脚本进行日志过滤及检索的阶段。为了充分挖掘调度自动化系统中日志的价值,对调度自动化系统关键指标进行数据统计,为以量化方式考核系统健康状况提供数据基础,需要一种以日志数据为数据源的流式统计框架。借助开源流式计算框架,实现对日志数据的流式统计是普遍采用的方案,目前业内常用的流式计算框架有Storm和SparkStreaming。无论是Storm还是SparkStreaming,其本身是一个分布式系统,提供了一个编程模型及相应的接口。这种设计方式的灵活度高、适应面广,但是其代价是增加新的统计任务需要调用相应的接口完成代码编辑和编译,使用比较复杂,学习成本高。对于调度自动化系统而言,基于开源流式计算框架实现流式统计功能一方面在部署上对原系统的侵入性大,另一方面不利于用户的使用。
技术实现思路
针对现有技术存在的不足,本专利技术目的是提供一种免代码维护的、可灵活定义的、适用于调度自动化系统的基于配置文件的流式统计定义及运行方法。为了实现上述目的,本专利技术是通过如下的技术方案来实现:本专利技术的一种基于配置文件的流式统计定义及运行方法,包括以下几个步骤:(1)创建配置文件,所述配置文件的内容包括任务信息和计算模型;所述配置文件的名称格式为:名称_任务编号.conf,所述任务编号按自然顺序递增;(2)编辑所述任务信息,所述任务信息包括属性:任务名称、任务类型和任务描述;所述任务名称用于标识任务,所述任务类型用于描述任务执行方式,所述任务描述用于说明任务实现功能;(3)编辑计算模型,所述计算模型描述统计过程所需组成元素包含:数据源定义、模式定义、统计操作定义和动作定义;其中,所述数据源定义用于描述任务需要的数据集;所述模式定义用于描述数据集投影及投影产生的方式;所述统计操作定义用于描述统计过程;所述动作定义用于描述对计算结果的处理;所述模式定义、统计操作定义和动作定义均可省略,省略动作定义表示采取默认动作定义即本地文件存储;所述数据源定义、模式定义、统计操作定义和动作定义在执行过程中具备顺序关系,即数据按如下顺序流转:数据源定义处理、模型定义处理、统计操作定义处理、动作定义处理。(4)验证所述配置文件合法性:新创建或被修改过的流式统计配置文件,需要通过定义检查工具来确定配置文件的合法性;(5)配置文件生效管理,所有流式统计配置文件由单独的任务配置文件统一管理,只有增加到任务配置文件中的合法的流式统计配置文件才能生效;所述流式统计配置文件与统计服务一一对应;统计服务监控进程监视任务配置文件的更新,把缓存的任务配置文件内容与新的任务配置文件进行比较生成任务差异,根据任务差异执行任务启动、任务终止、任务重启操作;一个流式统计任务对应一个配置文件;所有的流式统计配置文件由任务配置文件统一管理,由于表明该流式统配置文件生效。(6)运行流式统计任务,统计服务启动时带启动参数:任务编号;统计服务首先根据任务编号获取流式统计配置文件,根据配置文件解析任务信息和计算模型,最终生成相应的处理逻辑;统计任务执行过程中,所有数据均是JSON格式,通过属性名访问。步骤(1)中,所述配置文件分段定义,所述配置文件以KeyName=Value格式定义段内的各种属性。步骤(2)中,支持两种任务执行方式:普通任务和周期定时任务;所述普通任务在进程启动后即开始计算;所述周期定时任务在设定时间段内或者设定时刻执行计算,可周期执行,可执行一次或者多次。与普通任务相比,周期定时任务具有额外的属性值,包含时段定义、周期定义、次数定义。时段定义描述任务执行的时间,周期定义描述任务执行的周期,次数定义限制任务执行次数。步骤(3)中,所述计算模型通过数据源定义、模式定义、统计操作定义、动作定义4个组成元素,描述了一种链式数据处理过程:统计服务以消息总线为数据源,消息总线以通道来划分数据集;统计服务向消息总线订阅数据源定义中配置的通道即完成源数据接入;数据源可配置过滤属性,接收到的数据如果不满足过滤属性条件,数据将被丢弃;数据源过滤属性条件,从数据源接收到的数据。源数据接入后,根据模式定义描述的数据投影及投影生成方式,对数据进行抽取、转换形成中间数据集;模式定义可配置过滤属性,如果中间数据集数据不满足过滤属性条件,数据将被丢弃;模式定义过滤属性,讲过模式定义计算的中间结果集数据。统计操作定义包含属性:时间窗口、统计函数、分组、结果属性名以及过滤属性;统计窗口描述统计周期,统计结果按统计周期导出;统计函数支持最大值、最小值、平均值、总加值、排名和计数;分组描述了对中间结果数据的分组条件;结果属性名定义统计结果属性名,用于方便后续通过属性名访问数据;中间数据集按照统计操作定义完成数据计算,执行一个统计周期后,根据过滤属性配置确定统计结果是否导出,只有满足过滤属性条件的结果才是最终的统计结果;最终统计结果根据动作定义配置确定处理方式,处理方式包含:本地保存、实时告警、数据库存储;一个统计任务中可配置多组处理方式,每种处理方式可以设置过滤属性,根据过滤属性配置,满足过滤属性条件的数据执行对应处理。步骤(3)中,在数据源定义、模式定义、统计操作定义、动作定义中均可配置过滤属性;所述过滤属性的值为操作表达式;所述操作表达式由操作组成,并由符号||或者&&链接,符号||和&&表示操作间的关系(“或者”和“并且”),表达式按从左到右的顺序执行;操作是定义表达式的最小单元,不同的数据类型支持不同的操作,具体内容如下表所示:步骤(4)中,所述配置文件需要经过检查工具检查,通过检查的文件会被打上合法性标签,只有具有合法标签的文件才会被统计服务监控程序调度;合法性检查采用静态验证方式即逐一匹配预定义的规则,只要有一条规则不满足则认为定义文件非法。步骤(5)中,统计任务由统计服务监控进程统一调度,统计服务监控进程定期读取任务配置文件,根据前后两次任务配置文件差异,使统计任务自动生效;统计服务监控进程接收统计任务心跳报文,对于超过心跳周期的统计任务,统计服务监控进程尝试重新启动。步骤(6)中,配置文件被解析成一个处理过程,该处理过程对接入的数据逐条处理,每条数据按链式处理方式逐一通过数据源定义处理、模式定义处理、统计操作定义处理和动作定义处理;在每一个处理环节中,数据均以JSON格式封装,均按属性名访问。本专利技术所达到的有益效果如下:(1)本专利技术以自定义的配置文件描述一个统计过程,通过分段定义和属性定义两级定义实现流式统计定义,保障了配置的灵活性;(2)本专利技术具备把流式统计定义文件解析为流式统计任务的能力,实现新增统计任务免代码维护;(3)本专利技术采用统一任务调度的方式自动生效统计任务,支持任务全生命周期监控;统计任务与统计配置文件一一对应,避免了任务间的相互影响;(4)本专利技术以数据记录为单位,按照数据源定义处理、模式定义处理、统计操本文档来自技高网...
一种基于配置文件的流式统计定义及运行方法

【技术保护点】
一种基于配置文件的流式统计定义及运行方法,其特征在于,包括以下几个步骤:(1)创建配置文件,所述配置文件的内容包括任务信息和计算模型;所述配置文件的名称格式为:名称_任务编号.conf,所述任务编号按自然顺序递增;(2)编辑所述任务信息,所述任务信息包括属性:任务名称、任务类型和任务描述;所述任务名称用于标识任务,所述任务类型用于描述任务执行方式,所述任务描述用于说明任务实现功能;(3)编辑计算模型,所述计算模型描述统计过程所需组成元素包含:数据源定义、模式定义、统计操作定义和动作定义;其中,所述数据源定义用于描述任务需要的数据集;所述模式定义用于描述数据集投影及投影产生的方式;所述统计操作定义用于描述统计过程;所述动作定义用于描述对计算结果的处理;所述模式定义、统计操作定义和动作定义均可省略,省略动作定义表示采取默认动作定义即本地文件存储;所述数据源定义、模式定义、统计操作定义和动作定义在执行过程中具备顺序关系,即数据按如下顺序流转:数据源定义处理、模型定义处理、统计操作定义处理、动作定义处理。(4)验证所述配置文件合法性:新创建或被修改过的流式统计配置文件,需要通过定义检查工具来确定配置文件的合法性;(5)配置文件生效管理,所有流式统计配置文件由单独的任务配置文件统一管理,只有增加到任务配置文件中的合法的流式统计配置文件才能生效;所述流式统计配置文件与统计服务一一对应;统计服务监控进程监视任务配置文件的更新,把缓存的任务配置文件内容与新的任务配置文件进行比较生成任务差异,根据任务差异执行任务启动、任务终止、任务重启操作;(6)运行流式统计任务,统计服务启动时带启动参数:任务编号;统计服务首先根据任务编号获取流式统计配置文件,根据配置文件解析任务信息和计算模型,最终生成相应的处理逻辑;统计任务执行过程中,所有数据均是JSON格式,通过属性名访问。...

【技术特征摘要】
1.一种基于配置文件的流式统计定义及运行方法,其特征在于,包括以下几个步骤:(1)创建配置文件,所述配置文件的内容包括任务信息和计算模型;所述配置文件的名称格式为:名称_任务编号.conf,所述任务编号按自然顺序递增;(2)编辑所述任务信息,所述任务信息包括属性:任务名称、任务类型和任务描述;所述任务名称用于标识任务,所述任务类型用于描述任务执行方式,所述任务描述用于说明任务实现功能;(3)编辑计算模型,所述计算模型描述统计过程所需组成元素包含:数据源定义、模式定义、统计操作定义和动作定义;其中,所述数据源定义用于描述任务需要的数据集;所述模式定义用于描述数据集投影及投影产生的方式;所述统计操作定义用于描述统计过程;所述动作定义用于描述对计算结果的处理;所述模式定义、统计操作定义和动作定义均可省略,省略动作定义表示采取默认动作定义即本地文件存储;所述数据源定义、模式定义、统计操作定义和动作定义在执行过程中具备顺序关系,即数据按如下顺序流转:数据源定义处理、模型定义处理、统计操作定义处理、动作定义处理。(4)验证所述配置文件合法性:新创建或被修改过的流式统计配置文件,需要通过定义检查工具来确定配置文件的合法性;(5)配置文件生效管理,所有流式统计配置文件由单独的任务配置文件统一管理,只有增加到任务配置文件中的合法的流式统计配置文件才能生效;所述流式统计配置文件与统计服务一一对应;统计服务监控进程监视任务配置文件的更新,把缓存的任务配置文件内容与新的任务配置文件进行比较生成任务差异,根据任务差异执行任务启动、任务终止、任务重启操作;(6)运行流式统计任务,统计服务启动时带启动参数:任务编号;统计服务首先根据任务编号获取流式统计配置文件,根据配置文件解析任务信息和计算模型,最终生成相应的处理逻辑;统计任务执行过程中,所有数据均是JSON格式,通过属性名访问。2.根据权利要求1所述的基于配置文件的流式统计定义及运行方法,其特征在于,步骤(1)中,所述配置文件分段定义,所述配置文件以KeyName=Value格式定义段内的各种属性。3.根据权利要求1所述的基于配置文件的流式统计定义及运行方法,其特征在于,步骤(2)中,支持两种任务执行方式:普通任务和周期定时任务;所述普通任务在进程启动后即开始计算;所述周期定时任务在设定时间段内或者设定时刻执行计算,可周期执行,可执行一次或者多次。4.根据权利要求1所述的基于配置文件的流式统计定义及运行方法,其特征在于,步骤(3)中,所述计算模型通过数据源定义、模式定义、统计操作定义、动作定义4个组成元素,描述了一种链式数据处理过程:统计服务以消息总线为数据源,消息总线以通道来划分...

【专利技术属性】
技术研发人员:季惠英周坚葛敏辉葛朝强季学纯王兴志李昊史浩秋王昌频王玉军张瑞崔伟业卞月峰
申请(专利权)人:国电南瑞科技股份有限公司国电南瑞南京控制系统有限公司国家电网公司华东分部
类型:发明
国别省市:江苏;32

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

1