[发明专利]数据库分区方法与系统有效
申请号: | 200910136968.6 | 申请日: | 2009-04-30 |
公开(公告)号: | CN101876983A | 公开(公告)日: | 2010-11-03 |
发明(设计)人: | 张剑鸣;高波;郭常杰;段宁 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京市中咨律师事务所 11247 | 代理人: | 于静;李峥 |
地址: | 美国*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 分区 方法 系统 | ||
1.一种对数据库中的数据进行分区的方法,所述方法包括:
获取数据分区规则,所述数据分区规则用于指示数据分区条件与分区的对应关系;
基于所述数据分区规则以及分区与数据分区键值的对应关系,建立数据分区条件与数据分区键值的对应关系;
按照数据分区条件与数据分区键值的对应关系对数据库中的数据条目添加对应的数据分区键值;以及
根据数据条目的数据分区键值将数据条目存储到数据库中的对应分区。
2.如前述权利要求1所述的方法,其中建立数据分区条件与数据分区键值的对应关系的步骤进一步包括将所述数据分区条件与数据分区键值的对应关系记录在匹配表中。
3.如前述权利要求2所述的方法,其中所述添加对应的数据分区键值的步骤进一步包括:
按照所述数据分区条件制定数据查询语句;
获得与所述数据分区条件对应的数据条目;
查询所述匹配表以获得所述数据分区条件对应的数据分区键值;以及
对所获得的与所述数据分区条件对应的数据条目添加数据分区键值。
4.如前述权利要求2所述的方法,其中所述添加对应的数据分区键值的步骤进一步包括:
逐一读取数据库中的数据条目;
分析所述数据条目所对应的数据分区条件;
查询所述匹配表以获得所述数据条目对应的数据分区键值;以及
将所述数据分区键值添加到数据条目中。
5.如前述权利要求2所述的方法,其中所述匹配表被存储在高速缓存中。
6.如前述权利要求1-5之一所述的方法,其中所述数据库为支持分区的数据库,所述方法进一步还包括:
预先计算数据分区键值,其中每个数据分区键值与一个分区号相对应,所述预先计算数据分区键值的步骤进一步包括:
在数据库中创建一张表;
将至少一个数据分区键值插入到所述表中;
查询与所插入的数据分区键值对应的分区号,以确定所述数据分区键值与所述分区号的对应关系。
7.如前述权利要求1-5之一所述的方法,其中所述数据库为不支持分区的数据库,所述方法还包括:
为多个数据库定义多个分区号,以将一个数据库作为一个分区,以及
定义数据分区键值,使得所述每个数据分区键值与一个分区号相对应。
8.如前述权利要求1-7之一所述的方法,还包括:
获得新的要被加入到数据库中的数据条目;
按照数据分区条件对数据库中的数据条目添加对应的数据分区键值;以及
将添加了对应的数据分区键值的数据条目存储到数据库中的对应分区。
9.一种数据库查询方法,所述数据库中的数据按照权利要求1所述的方法进行了分区,该数据库查询方法包括:
获得数据查询请求;
解析数据查询请求;
判断所述数据查询请求是否与至少一个分区相匹配;
响应于所述数据查询请求与至少一个分区相匹配的判断,查找与所述数据查询请求对应的数据分区键值;
对数据查询请求进行处理以将将该分区键值添加到所述数据查询请求中;以及
向数据库发送处理过的数据查询请求。
10.如前述权利要求9所述的方法,还包括:
响应于所述数据查询请求与任何一个分区都不相匹配的判断,向数据库发送没有添加数据分区键值的数据查询请求。
11.如前述权利要求9或10所述的方法,还包括:
记录数据库查询的相关信息作为反馈信息,所述反馈信息至少包含下列各项之一:
数据查询语句中的数据查询条件,
按照所述数据查询条件从数据库返回的数据条目的数量,
返回所述数据条目的响应时间,
实际查询的分区。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910136968.6/1.html,转载请声明来源钻瓜专利网。