[发明专利]一种基于海量数据的查询统计方法及系统在审
申请号: | 201510983031.8 | 申请日: | 2015-12-24 |
公开(公告)号: | CN106919566A | 公开(公告)日: | 2017-07-04 |
发明(设计)人: | 杨梦帆;张学军 | 申请(专利权)人: | 航天信息股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京工信联合知识产权代理有限公司11266 | 代理人: | 张荣 |
地址: | 100195 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 海量 数据 查询 统计 方法 系统 | ||
技术领域
本发明涉及数据处理技术领域,尤其是指一种基于海量数据的查询统计方法及系统。
背景技术
海量数据是指巨大的,浩瀚的数据。目前,大多数的应用都要与数据库相连接,通过查询等操作得到数据预期结果。当达到一定的数据量、符合查询条件较多或多人同时在线查询时,从数据库中查询统计通常需要花费较长时间,这意味这造成高额的时间成本;另外,数据库系统的性能以及数据组织管理能力也会因此大为减弱,甚至会造成内存溢出或系统崩溃。
目前常用的一些解决海量数据查询统计的方法有如下几种:(1)建立广泛的索引,例如针对大表的分组、排序等字段,都要建立相应索引,一般还可以建立复合索引,考虑索引的填充因子和聚集、非聚集索引等;(2)优化查询SQL语句,在对海量数据进行查询处理过程中,查询的SQL语句的性能对查询效率的影响是非常大的,编写高效优良的SQL脚本,例如减少关联,少用或不用游标,设计好高效的数据库表结构等都十分必要;(3)加大虚拟内存,如果系统资源有限,内存提示不足,则可以靠增加虚拟内存来解决。这些常用的解决海量数据的方法在一定程度上可以减少海量数据查询花费的时间,但是对于几千万甚至几亿的数据,前台界面进行查询时,运行效率仍然非常缓慢,很难达到良好的客户体验。
为了克服上述问题,公开号为( CN103761251A)中国发明专利公开了一种大数据量客户信息的存储与查找方法,包括:(1)数据存储:将所获取的客户信息数据存放于多维表结构中,为每个数据项建立唯一的数据标识信息;(2)建立索引文件:以标识信息为索引,以标识信息对应的位置参数为值生成索引文件;(3)数据查找:根据待查找数据的标识信息,在客户信息索引文件中查找该标识信息,获得该标识信息对应的位置参数;根据所述位置参数从所述多维表结构中获取数据元素。上述方法通过索引文件实现对客户信息数据非数据库方式存储和查询,虽然适当提高了查找速度,但是多人同时在线查询时,仍旧会严重影响统计查询的执行效率。
发明内容
为此,本发明所要解决的技术问题在于克服现有技术中若多人同时在线查询会导致执行效率降低的问题从而提供一种可以大幅度提高执行效率的基于海量数据的查询统计方法及系统。
为解决上述技术问题,本发明的一种基于海量数据的查询统计方法,包括如下步骤:步骤S1:将多个用户上传的原始数据存储在原始表中;步骤S2:根据用户端预测查询条件将所述原始表内所有原始数据中的相关数据存储在增量日志表中;步骤S3:对所述增量日志表中的相关数据进行归集统计,将归集统计结果写入归集表,完成对数据的归集统计;步骤S4:根据用户端查询条件从所述归集表中输出查询结果,完成数据的输出显示。
在本发明的一个实施例中,所述步骤S1之前,用户端通过上传工具完成文件的上传操作,其中所述文件包括原始数据,服务器端从接收到的文件中解密出所述原始数据后将原始数据写入原始表中。
在本发明的一个实施例中,所述步骤S2之后,若所述原始表中输入有新增数据,则所述原始表的触发器将新增数据存储在所述增量日志表中。
在本发明的一个实施例中,所述步骤S2之后,将所述原始表中已被存储在增量日志表中的相关数据标记或删除。
在本发明的一个实施例中,所述原始数据是关于商品的数据,所述关于商品的数据包括商品编码和商品明细;所述步骤S3中,对所述增量日志表中的相关数据进行归集统计的方法为:将所述增量日志表中关于商品的数据按商品编码对商品明细进行统计,将商品的归集统计信息写入数据汇总的中间表。
在本发明的一个实施例中,对所述中间表中的数据进行按天数以及月份的归集处理,完成处理结果的插入或者更新,并将处理后的数据存储在所述归集表中。
本发明还提供了一种基于海量数据的查询统计系统,包括:接收模块,用于接收多个用户端上传的原始数据,并将所述原始数据传输至定义模块;定义模块,用于根据用户端预测查询条件从所述接收模块传输来的原始数据中提取相关数据,并将提取的相关数据发送至所述归集模块;归集模块,用于对所述定义模块发送来的相关数据进行归集统计,并将归集后的数据发送至所述查询优化模块;查询优化模块,用于根据用户端查询条件从所述归集模块发送来的归集后的数据中提取出相应数据,并将提取的数据输出至所述用户端。
在本发明的一个实施例中,所述预测查询条件由用户端提供或者由系统服务器设定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于航天信息股份有限公司,未经航天信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510983031.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置