[发明专利]内存数据库系统及实现内存数据库的方法和装置无效
申请号: | 200710105890.2 | 申请日: | 2007-06-01 |
公开(公告)号: | CN101315628A | 公开(公告)日: | 2008-12-03 |
发明(设计)人: | 周丹弟;李向东 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京同达信恒知识产权代理有限公司 | 代理人: | 黄志华 |
地址: | 518129广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 数据库 系统 实现 方法 装置 | ||
1.一种内存数据库系统,其特征在于,包括:
通信接口,用于接收请求操作数据库的各种消息和输出操作结果;
创建装置,用于在共享内存中建立存储数据库的描述信息的第一存储区、存储用于定位表记录的索引信息的第二存储区和存储表记录的第三存储区,以及将数据库的描述信息保存到所述第一存储区,其中,所述第三存储区包括与表记录大小匹配的存储单元,每个存储单元存储一条数据库表记录,相同大小并且在物理空间上连续的存储单元构成一个物理块,一个物理块或多个相同的物理块关联成一个逻辑块;
写操作装置,用于在所述操作需要向数据库表中添加表记录时,查询所述描述信息以选择包含的存储单元大小与所述表记录的大小匹配的一个逻辑块,以及将表记录写入选择的逻辑块中空闲的存储单元内和将表记录的位置信息记录到第二存储区中;
查询操作装置,用于在所述操作需要从数据库表查询表记录时,查询第二存储区的索引信息和根据查询结果从第三存储区中相应的存储单元读取表记录,并选择满足查询条件的表记录;
释放操作装置,用于在所述操作需要从数据库表删除指定的表记录时,从第三存储区释放存储所述指定的表记录的存储单元,并从第二存储区中删除所述与指定的表记录相关的索引信息。
2.如权利要求1所述的内存数据库系统,其特征在于,还包括:
扫描装置,用于扫描逻辑块中空闲的存储单元,并且在发现逻辑块中空闲的存储单元小于阈值时,产生提示信息或直接为该逻辑块分配一个物理块并将其关联到所述逻辑块。
3.如权利要求1所述的内存数据库系统,其特征在于,所述第二存储区包括与一条索引信息大小匹配的存储单元,相同大小并且在物理空间上连续的存储单元构成一个物理块,一个物理块或多个相同的物理块关联成一个逻辑块。
4.如权利要求1所述的内存数据库系统,其特征在于,所述创建装置包括:
确定单元,用于确定数据库表结构及各数据库表中表记录的大小;
创建单元,用于在共享内存中建立所述第一存储区、第二存储区和第三存储区;
保存单元,用于将数据库的描述信息保存到所述第一存储区,所述数据库的描述信息包括各数据库表的描述信息。
5.如权利要求1所述的内存数据库系统,其特征在于,所述查询操作装置包括:
索引信息查询单元,用于在所述操作需要从数据库表查询表记录时查询第一存储区中的描述信息确定索引信息;
索引单元,用于从第二存储区查询确定的索引信息和根据查询结果从第三存储区中相应的存储单元读取表记录,并选择满足所述查询条件的表记录。
6.如权利要求5所述的内存数据库系统,其特征在于,所述写操作装置包括:
逻辑块选择单元,用于在所述操作需要向数据库表中添加表记录时,根据该数据库表查询所述第一存储区中的描述信息以选择一个逻辑块,该逻辑块包含的存储单元大小与所述表记录的大小相匹配;
写操作单元,用于将需要添加的表记录写入选择的逻辑块中空闲的存储单元内,以及在第二存储区中保存表记录的位置信息。
7.如权利要求6所述的内存数据库系统,其特征在于,所述写操作单元包括:
第一存储操作模块,用于从所述一个逻辑块中获取一个空闲的存储单元,并将待存储的表记录存储到该空闲的存储单元内;
第二存储操作模块,用于在第二存储区的索引信息中记录所述表记录的位置信息。
8.如权利要求7所述的内存数据库系统,其特征在于,所述第二存储操作模块包括:
第一模块,用于根据表记录所在数据库表查询第一存储区中相应的描述信息,获得该数据库表的多个索引;其中,每个索引包含一个或多个索引字段,在每个索引下根据各表记录的键值所得到的特征值在第二存储区中分别形成与索引关联的一个特征值表,在同一索引下具有相同特征值的表记录的位置信息分别存储在与该特征值关联的一个叶子节点树的叶子节点上;
第二模块,用于从所述表记录中提取在各索引下对应的键值,并获得各键值对应的特征值;
第三模块,用于根据各特征值分别查询第二存储区中相应的特征值表,若特征值表中存在该特征值,则在该特征值关联的叶子节点树上增加包含表记录位置信息的叶子节点,否则,将特征值加入特征值表和创建与该特征值关联的包含表记录位置信息的叶子节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200710105890.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:智能式双电源自动切换装置
- 下一篇:木本花卉组培苗大批量移栽方法