[发明专利]数据库集群、数据查询方法、数据同步方法和装置有效
| 申请号: | 201410415862.0 | 申请日: | 2014-08-21 |
| 公开(公告)号: | CN104199881B | 公开(公告)日: | 2018-07-06 |
| 发明(设计)人: | 喻先兵 | 申请(专利权)人: | 广州华多网络科技有限公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 张耀光 |
| 地址: | 511446 广东省广州市番*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 分区 索引 分区集合 主键 数据库集群 数据存储 数据查询效率 方法和装置 数据查询 数据同步 数据处理技术 查询语句 全局索引 索引字段 存储 查询 | ||
本发明公开了一种数据库集群、数据查询方法、数据同步方法和装置,属于数据处理技术领域。所述数据库集群包括存储有相同数据的第一分区集合和第二分区集合;所述第一分区集合包括按照主键进行分区的至少一个主键分区,每个主键分区中按照主键进行数据存储;所述第二分区集合包括按照全局索引进行分区的至少一个索引分区,每个索引分区中按照索引进行数据存储,且具有相同索引的数据存储于同一个索引分区中。解决了现有技术中数据查询效率低的问题;达到了根据查询语句中的索引字段以及按照索引分区得到的至少一个索引分区可以直接查询到请求的数据,提高数据查询效率的效果。
技术领域
本发明涉及数据处理技术领域,特别涉及一种数据库集群、数据查询方法、数据同步方法和装置。
背景技术
为了提高数据库的存储能力,目前通常使用数据库集群来共同提供存储服务。数据库集群将原始数据表中的数据按照主键存放到数据库集群中的多个分区,也即在每个分区中存储原始数据表中的一部分数据来实现大数据量的数据存储。
为了实现对数据库集群中存储的数据进行快速查询,系统还可以在每个分区中分别创建二级索引,存储创建的二级索引。此后,当系统接收到基于索引字段的数据查询语句时,系统可以先在各个分区存储的二级索引中查询与数据查询语句中的索引字段匹配的索引,在查询到的索引所在的分区中查询与该索引对应的主键,然后在分区中查询与主键对应的数据,最后,将在各个分区中查询到的数据组合作为查询结果。
在实现本发明的过程中,发明人发现上述技术至少存在以下问题:由于二级索引是对应于分区的索引,如果有100个分区就有100个二级索引,所以在系统根据索引进行数据查询时,系统需要遍历查询所有分区中的所有索引,系统的数据查询效率较低。
发明内容
为了解决现有技术中系统的数据查询效率较低的问题,本发明实施例提供了一种数据库集群、数据查询方法、数据同步方法和装置。所述技术方案如下:
第一方面,提供了一种数据库集群,所述数据库集群包括存储有相同数据的第一分区集合和第二分区集合;
所述第一分区集合包括按照主键进行分区的至少一个主键分区,每个主键分区中按照主键进行数据存储;
所述第二分区集合包括按照全局索引进行分区的至少一个索引分区,每个索引分区中按照索引进行数据存储,且具有相同索引的数据存储于同一个索引分区中。
第二方面,提供了一种数据查询方法,所述方法用于第一方面所述的数据库集群中,所述方法包括:
获取针对所述数据库集群的查询语句;
判断所述查询语句是否是基于索引字段的查询语句;
如果所述查询语句是基于索引字段的查询语句,则在所述第二分区集合中查询与所述查询语句对应的数据。
可选地,所述在所述第二分区集合中查询与所述查询语句对应的数据,包括:
获取所述第二分区集合中的各个分区的分区描述信息;
根据所述查询语句以及所述分区描述信息确定所述第二分区集合中与所述查询语句所对应的分区;
在确定的所述分区中进行数据查询。
可选地,所述方法还包括:
如果所述查询语句是基于主键的查询语句,则在所述第一分区集合中进行数据查询。
第三方面,提供了一种数据同步方法,所述方法用于第一方面所述的数据库集群中,所述方法包括:
获取所述数据库集群中的所述第一分区集合所对应的服务器中的日志事件;
根据所述日志事件同步所述数据库集群中的所述第二分区集合中的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州华多网络科技有限公司,未经广州华多网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410415862.0/2.html,转载请声明来源钻瓜专利网。





