[发明专利]一种数据查询方法有效
申请号: | 201410267074.1 | 申请日: | 2014-06-16 |
公开(公告)号: | CN104008199B | 公开(公告)日: | 2017-05-31 |
发明(设计)人: | 王锋;唐超;马丽伟;秦波;赵晓平 | 申请(专利权)人: | 北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京德琦知识产权代理有限公司11018 | 代理人: | 王一斌,王琦 |
地址: | 100080 北京市海淀区杏石口路6*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 查询 方法 | ||
技术领域
本发明涉及分布式数据库系统的数据处理技术,特别是涉及一种分布式数据库系统中的数据查询方法。
背景技术
目前,随着数据规模及其访问量对关系数据库提出了很大挑战:数十亿条的记录、数TB的数据、数千TPS、数万QPS让传统的关系数据库不堪重负,单纯的硬件升级已经无法使得问题得到解决。而目前的分布式数据库技术无法有效的支持复杂的关联查询。
针对该问题,通常是采用对先对数据表进行水平拆分,然后再把拆分后的各子表分散到多个服务器上的方式,来实现大规模数据的存储。具体为:选取数据表中的某个或若干字段作为拆分键,将记录散列到不同的数据库服务器中。当客户端需要访问某个记录时,根据拆分键找到记录所在的服务器位置;
上述方法可以实现记录规模较大的数据表的分布存储,但是,在进行表关联查询时容易出现跨机查询,即需要关联的子表分布在不同的服务器上,该情况下,一方面各数据库服务器无法进行合并查询处理,而需要应用服务器从各数据库服务器中读取子表后,才能进行相应的合并查询处理,这样就会导致应用服务器的数据处理负荷就会较大,当跨机查询的数据越多时,系统的性能就会越差;另一方面,由于需要将数据库服务器中的数据统一发送给应用服务器处理,相应地,也会造成冗余的网络数据传输。
因此,在分布式数据库系统下,传统的数据查询方法存在网络传输开销大、处理时延长等问题,无法满足对时延要求高的在线事物处理(OLTP)应用场景下的关联查询。目前尚未提出一种适用于在OLTP情况下进行关联查询的方法。
发明内容
有鉴于此,本发明的主要目的在于提供一种数据查询方法,该方法可以有效减少网络传输开销,降低处理时延,适用于OLTP应用场景。
为了达到上述目的,本发明提出的技术方案为:
一种数据查询方法,包括:
当应用服务器对数据库系统中的数据进行存储时,对于存在关联关系的两个表,根据所述关联关系的关联字段,对每个所述表进行水平拆分,得到该表的N个子表;
对于所述两个表,所述应用服务器根据子表的索引号,利用相同的散列公式,确定用于存储各自子表的数据库服务器;将各所述子表存储在所确定的数据库服务器中;对于所述两个表的每对具有相同索引号的子表,所述应用服务器根据所述关联关系,确定该对子表的关联关系;
当客户端触发根据所述两个表的关联关系进行数据查询时,对于满足查询条件的子表,将该子表对应的关联关系发送给子表所在数据库服务器,同时触发所述数据库服务器根据该关联关系,按照所述查询条件进行查询,并返回结果给所述应用服务器;
所述应用服务器根据所述查询条件,对所述返回结果进行相应的查询处理并反馈结果给所述客户端。
综上所述,本发明提出的数据查询方法,在进行数据表的分布式存储时,应用服务器将具有关联关系的两个表,按照相同的子表数进行水平拆分,并按照相同的散列公式将两个表的相同索引号的子表散列到分布式数据库服务器上,如此,可确保具有关联关系的子表存储在相同的服务器上,避免进行合并查询时跨机查询的网络传输开销,减少复杂查询的处理时延,适用于OLTP应用场景。
附图说明
图1为本发明实施例一的流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
本发明的核心思想是:对于具有关联关系的两个表,按照相同的子表数进行水平拆分,并按照相同的散列公式将两个表的相同索引号的子表散列到分布式数据库服务器上,使得具有关联关系的子表存储在相同的服务器上,使单个数据库服务器可以执行简单的查询合并处理,分担应用服务器的部分数据查询处理开销,并可避免进行合并查询时跨机查询的网络传输开销,减少复杂查询的处理时延,适用于OLTP应用场景。
图1为本发明实施例一的流程示意图,如图1所示,该实施例主要包括:
步骤101、当应用服务器对数据库系统中的数据进行存储时,对于存在关联关系的两个表,根据所述关联关系的关联字段,对每个所述表进行水平拆分,得到该表的N个子表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司,未经北京京东尚科信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410267074.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种治疗小儿肺炎的中药
- 下一篇:一种治疗哮喘的中药口服液及其制备方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置