一种通用统计方法和装置制造方法及图纸

技术编号:6673132 阅读:179 留言:0更新日期:2012-04-11 18:40
本发明专利技术实施例提供一种通用统计方法和装置,该方法包括:读取配置文件,所述配置文件中指定了存储待统计分析的文本数据源的路径与文件名匹配字符串;解析统计任务的脚本,并将其转换成执行计划;根据所述形成的执行计划,对配置文件中指定的待统计分析的数据源进行统计处理,形成统计结果。本发明专利技术实施例提供的通用统计方法和装置不需要占用繁忙的数据库资源,而且整个统计过程可以对脚本进行自动分析,不需要复杂的编程,通用性高。

【技术实现步骤摘要】

本专利技术属于通信
,尤其涉及一种对信令数据与业务数据进行统计分析的 通用统计方法和装置
技术介绍
3G通信网络是电信史上的一块里程碑,标志着新一代电信网络时代的到来。随着 3G业务的发展,运营商提供的各种特色应用不断出现,为了提高服务质量,并对运维部分和 市场营销提供具体的参考数据,对各种信令数据与业务数据进行深入的分析已经成为电信 运营商的重要目标。由于通信业务种类繁多,通讯协议多样,如何保证数据分析统计的快速 开发和部署,并能够保证较高的统计效率避免占用过多的数据库资源就显得非常重要。现有的基于数据库的统计工具需要使用较多的数据库资源,由于数据库资源有 限,大量的统计对数据造成沉重的负担。而基于特定数据的专用统计工具,在用于不同的数 据统计时,还需要根据情况来修改统计程序,开发效率较低。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种通用统计方法和装置,能够避免占用复杂 的数据库资源,并且通用性更高。为实现上述目的,本专利技术提供一种通用统计方法,包括读取配置文件,所述配置文件中指定了存储待统计分析的文本数据源的路径与文 件名匹配字符串;解析统计任务的脚本,并将其转换成执行计划;根据所述形成的执行计划,对配置文件中指定的待统计分析的数据源进行统计处 理,形成统计结果。优选地,所述解析统计任务的脚本包括在解析的过程中,根据统计任务的脚本中的节点类型生成不同的节点类,由此生 成统计任务的脚本的分析树。优选地,所述将解析后的任务的脚本转换成执行计划包括根据节点类型的不同,将分析树中的标识符节点转换为变量节点、常量节点、数据 源节点或静态表字段节点;将分析树中的聚集函数进行转换;确定分析树中的各字段的偏移和操作类型;确定执行操作函数。优选地,所述方法还包括将所述形成的统计结果根据数据库静态数据或者文本 文件中包含的静态数据进行级联统计。优选地,所述将形成的统计结果根据数据库静态数据或者文本文件中包含的静态 数据进行级联统计包括根据由数据库静态数据或者文本文件中包含的静态数据而设定的过滤门限,对所述统计结果进行过滤再进行统计。优选地,所述配置文件中还指定存储统计结果的文件名;所述方法还包括将最终的统计结果存储入配置文件中指定的存储统计结果的文 件名标识的文件中。优选地,所述将最终的统计结果存储入配置文件中指定的存储统计结果的文件名 标识的文件中包括当以天为统计周期时,所述存储单元暂存每小时的统计结果,当全天统计结束时, 将全天最终的统计结果存储到配置文件指定的目录下,文件名包含配置文件中配置的表 名、表ID、数据库类型、数据库名称、数据的日期时间、进程号、机器名信息。另一方面,本专利技术还提供一种通用统计工具,包括配置文件读取单元,用于读取配置文件,所述配置文件中指定了存储待统计分析 的文本数据源的路径与文件名匹配字符串;脚本解析单元,用于解析统计任务的脚本;执行计划形成单元,用于将经过脚本解析单元解析后的脚本转换成执行计划;统计处理单元,用于根据所述形成的执行计划,对配置文件中指定的待统计分析 的数据源进行统计处理,形成统计结果。优选地,所述执行计划形成单元包括标识符节点转换单元,用于根据节点类型的不同,将分析树中的标识符节点转换 为变量节点、常量节点、数据源节点或静态表字段节点;聚集函数转换单元,用于将分析树中的聚集函数进行转换;偏移和操作类型确定单元,用于确定所述分析树中的各字段的偏移和操作类型;操作函数确定单元,用于确定执行操作函数。优选地,还包括级联统计单元,所述级联统计单元用于将所述形成的统计结果根 据数据库静态数据或者文本文件中包含的静态数据进行级联统计。优选地,所述配置文件中还指定存储统计结果的文件名;所述通用统计工具还包 括存储单元,用于将最终的统计结果存储入配置文件中指定的存储统计结果的文件名标识 的文件中。优选地,当以天为统计周期时,所述存储单元暂存每小时的统计结果,当全天统计 结束时,将全天最终的统计结果存储到配置文件指定的目录下,文件名包含配置文件中配 置的表名、表ID、数据库类型、数据库名称、数据的日期时间、进程号、机器名信息。由于本专利技术实施例提供的通用统计方法和装置的数据源来源于文本文件,不需要 占用繁忙的数据库资源,而且整个统计过程可以对脚本进行自动分析,不需要复杂的编程, 通用性高。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术 的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据 这些附图获得其他的附图。图1是本专利技术提供的一种通用统计方法的示意图;图2是对一个脚本语句进行解析形成分析树的过程的示意图;图3是对图2中的分析树进行转换形成执行计划的过程的示意图;图4是本专利技术提供的通用统计方法的级联统计过程的示意图;图5是本专利技术提供的一种通用统计装置的示意图。具体实施例方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例 中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是 本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员 在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1示出了本专利技术提供的通用统计方法的示意图,该方法包括步骤SlOl 读取配置文件,该配置文件中指定了存储待统计分析的文本数据源与 文件名匹配字符串。在本实施例中,数据源存储入文本文件中,该文本文件中的数据可以采用逗号等 分隔符隔开,从而方便从文本文件中导入数据进行统计分析。另外,配置文件用来指定数据 库配置、静态数据来源、源数据来源,还可以指定统计结果存储的文件名或表ID。步骤S102 解析统计任务的脚本。在对统计任务的脚本进行解析时,根据统计任务的脚本中的节点类型生成不同的 节点类,由此生成统计任务的脚本的分析树。以下以对脚本语句 “select time/300*300,caller, sum(call_duration), count (*) into test from bdr where call_duration > 0” 的解析为例详细说明。图 2 示 出了对该脚本语句进行解析形成分析树的过程。在实际中可以使用UNIX操作系统中的词 法解析工具LEX与语法解析工具YACC完成对统计脚本的解析。在解析过程中,根据节点类型生成不同的节点类,例如查询语句节点类表示整个 查询语句,常量节点类包括整型常量节点类、字符串常量节点类、浮点常量节点类和空指针 常量节点类等,源数据或关联表类表示源数据或其他关联表的字段。另外还可以包含数据 或逻辑表达式节点类、函数节点类、聚集函数节点类等。步骤S103 将经过步骤S102解析后的脚本转换成执行计划。由步骤S102解析后的脚本只是一个原始和粗略的脚本语句的分析树,不能够被 机器直接执行,需要经过一些转换形成执行计划后才可以被执行。转换成执行计划可以分成以下几个步骤实现。步骤a 根据节点类型的不同,将分析树中的标识符节点转换为变量节点、常量节 点、数据源节点或静态表字段节点。步骤b 将分析树中的聚集函数进行转本文档来自技高网...

【技术保护点】
1.一种通用统计方法,其特征在于,包括:读取配置文件,所述配置文件中指定了存储待统计分析的文本数据源的路径与文件名匹配字符串;解析统计任务的脚本,并将其转换成执行计划;根据所述形成的执行计划,对配置文件中指定的待统计分析的数据源进行统计处理,形成统计结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:耿海斌袁大勇贾林
申请(专利权)人:北京中创信测科技股份有限公司
类型:发明
国别省市:11

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

1