[发明专利]一种统计查询方法有效
申请号: | 201110257427.6 | 申请日: | 2011-09-01 |
公开(公告)号: | CN102323942A | 公开(公告)日: | 2012-01-18 |
发明(设计)人: | 贾林;马立斌 | 申请(专利权)人: | 北京中创信测科技股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京信远达知识产权代理事务所(普通合伙) 11304 | 代理人: | 王学强 |
地址: | 100081 北京市海淀区中关*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 统计 查询 方法 | ||
技术领域
本发明涉及数据库领域,更具体地说,涉及一种统计查询方法。
背景技术
在通过分布式数据库进行统计查询时,一般的运行方式为客户端把查询请求下发到各服务器中,由各服务器上的服务进程返回满足条件并已经初步聚集的统计数据传输给客户端;客户端在收到各服务器传输到的数据后,通过进行进一步的聚集,以及动态列转置、信息扩展等处理,然后生成用户所需的数据并进行显示。
由于在分布式环境下,数据分散在多个服务器中,所以通过分布式数据库进行统计查询通常要对已存储的数据进行汇总、行列转置、数值翻译或行间合并等处理后才能生成报表,其中,再在进行数据汇总时,客户端需要将所有服务器中的所需的数据全部收集后再进行汇总。这样,需要由服务器传输大量的数据至客户端,从而使资源有限的客户端承担了大量的数据交互计算工作,从而使得统计查询任务的运行效率和性能低下。
现有技术中,为了解决统计查询任务的运行效率和性能低下的问题,有一种方式为采用数据库互联SQL技术,但是,这种方式更加适用于实现简单的查询,复杂的统计查询需要多步的处理才能完成,而且,SQL语言无法实现行间合并以及行列转置等处理,需要复杂的程序逻辑来完成,所以无法进行高效的统计查询。
发明内容
有鉴于此,本发明实施例提供一种统计查询方法,以实现高效的统计查询的目的。
本发明实施例是这样实现的:
一种统计查询方法,包括:
获取统计查询请求;
将所述统计查询请求所包括的单元模式进行模式解析,将单元模式划分为事前计算逻辑、聚合计算和事后计算逻辑;
为统计查询过程中接收数据和所述事前计算逻辑分配单独的计算线程进行运算,同时,为聚合计算分配单独的计算线程进行运算生成聚合结果集;
所有所述聚合计算完成后,所述事后计算逻辑根据所述聚合结果集生成统计查询结果。
优选的,在本发明实施例中,所述事前计算逻辑用于对数据源记录进行适配处理,以形成聚合所需的数据记录结构。
优选的,在本发明实施例中,所述事前计算逻辑包括读取原始数据、事前过滤、选择列、字段变换和字段扩展中的一种或任意组合。
优选的,在本发明实施例中,所述事后计算逻辑用于对聚合结果集的记录进行处理。
优选的,在本发明实施例中,所述事后计算逻辑包括事后过滤、字段翻译、结果排序、top-n处理。
优选的,在本发明实施例中,所述聚合计算包括多级聚合计算。
优选的,在本发明实施例中,所述聚合结果集为多个。
优选的,在本发明实施例中,所述事后计算逻辑根据所述聚合结果集生成统计查询结果具体为:
对多个聚合结果同时计算。
从上述技术方案可以看出,在本发明实施例中,通过将单元模式划分为事前计算逻辑、聚合计算和事后计算逻辑;然后,同时为统计查询过程中接收数据和事前计算逻辑,以及,聚合计算分配单独的计算线程进行运算生成聚合结果集;最后在所有聚合计算完成后,事后计算逻辑根据聚合结果集生成统计查询结果。由于在本发明实施例中,单元模式包括了所有所需的通用算法和固定的逻辑等,可以满足各种统计查询业务的需求,所以可以完成诸如行间合并和行列转置等处理;此外,通过本发明实施例,可以在作为后台的服务器端完成全部的数据处理操作,而作为前台的客户端只需要提交统计查询请求和显示最终结果即可,不但减少了前台和后台之间的数据交互,提高了高统计查询的效率,而且,还减少了前台的数据处理操作,由于作为前台的客户端一般数据处理能力较弱,所以减少前台的数据处理操作也会提高统计查询的整体效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中所述统计查询的步骤示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京中创信测科技股份有限公司,未经北京中创信测科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110257427.6/2.html,转载请声明来源钻瓜专利网。