[发明专利]一种提升嵌入式数据库实时性的数据存储方法有效
申请号: | 201110445187.2 | 申请日: | 2011-12-27 |
公开(公告)号: | CN102411634A | 公开(公告)日: | 2012-04-11 |
发明(设计)人: | 杨经正;陈东;刘建立;李恒;寇立涛 | 申请(专利权)人: | 北京人大金仓信息技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京汲智翼成知识产权代理事务所(普通合伙) 11381 | 代理人: | 陈曦;郭亚芳 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 提升 嵌入式 数据库 实时 数据 存储 方法 | ||
技术领域
本发明涉及一种数据库数据存储方法,尤其涉及一种提升嵌入式数据库实时性的数据存储方法,属于嵌入式实时数据库技术领域。
背景技术
随着嵌入式系统的广泛应用及嵌入式实时操作系统的不断普及,嵌入式环境下的数据管理问题成为系统中的重要环节,构建嵌入式实时数据库系统成为嵌入式开发中必须解决的问题。这里所说的嵌入式是指可在嵌入式设备中独立运行的一种数据库系统,用以处理大量的、时效性强且有严格时序的数据,它以高可靠性、高实时性和高信息吞吐量为目标,其数据的正确性不仅依赖于逻辑结果,而且依赖于逻辑结果产生的时间。
目前嵌入式环境下的数据库系统多数采用了关系模型结构,这也是商用数据库系统的数据模型,该模型结构是利用二维关系表来实现数据存储,利用索引访问和查询数据,这种模型结构是建立在严格的数学基础上的,结构简单灵活,独立性好,但在嵌入式环境下的内存开销和数据冗余较大,用户必须对其进行优化,增加了开发数据库系统的难度;有些嵌入式数据库则采用了网状模型结构,该模型通过指针来确定数据间的显式连接关系,它比关系模型中利用冗余数据和索引文件要节约大量的存储空间,具有一定的数据独立性和共享特性,运行效率较高,而且由于它避免了索引操作,比关系型数据库模式要节省存储空间,数据操作速度也更快。但是这种模型结构比较复杂,尤其当嵌入式系统规模增大时,其数据库的结构变得非常庞大,会影响到系统的实时性能。
ORACLE提供了以下几种索引:B-Tree、哈希(hash)、位图(bitmap)等索引类型,基于原始表的索引,基于函数的索引,域(Domain)索引。实际应用中主要是B-Tree索引和位图索引。位图索引主要用于决策支持系统或静态数据。位图索引可以是简单的(单列)也可以是连接的(多列),但在实践中绝大多数是简单的。位图索引最好用于低到中群集(cardinality)列,在这些列上多位图索引可以与AND或OR操作符结合使用。位图索引使用位图作为键值,对于表中的每一数据行位图包含了TRUE(1)、FALSE(0)、或NULL值。位图索引的位图存放在B-Tree结构的页节点中。B-Tree结构使查找位图非常方便和快速。另外,位图以一种压缩格式存放,因此占用的磁盘空间比B-Tree索引要小得多。
甲骨文公司推出的FastDB内存数据库是一个高效率的内存数据库系统,在磁盘上的数据库文件和使用该数据库的每一个应用程序占用的虚拟内存空间相映射,这样取消了数据文件和缓冲池中的数据传输。再将整个文件数据读入内存,并且使用了高性能的锁工具实现了只读模式线程间、单个更改模式线程和多个只读模式线程间的并发执行。通过位图实现对内存进行分配,最小单位块是分配量子(字节)。如此大大提高了数据引用的局部性(对象数据尽可能分配在连续的内存区域),最小化了修改页的数目和减少了事务提交时间。事务提交协议基于一个影子根页算法,对数据库执行原子更新操作,恢复效率很高,在存储数据结构上可以采用结构(和相似,只是中每个节点中顺序存储了多个值),对于大量相似重复性数据的查询性能相当高。fastdb事务提交是影子根页算法,有两个数组current index和shadow index,当前数组和影子数组,里面存放的是对象的地址偏移。当对象被修改时,内存中的对象被拷贝,位图bitmap也被拷贝了一份,影子数组依然存放原对象的地址偏移,指向原位图的页面,而当前数组指向新的拷贝的地址偏移,新的位图页,所有的修改也在拷贝的地址中进行。当事务成功提交后,就把当前数组的内容复制到影子数组,这样它们就都指向新的偏移了,而原来指向的内存空间可以释放掉,而且修改页的内容被刷新到磁盘上。如果事务提交失败,需要回滚,就把影子数组的内容复制到当前数组。
发明内容
本发明所要解决的技术问题在于提供一种提升嵌入式数据库实时性的数据存储方法。该方法可以明显提升嵌入式实时数据库的实时性,满足嵌入式数据库应用的实时性要求。
为实现上述目的,本发明提供一种提升嵌入式数据库实时性的数据存储方法,其特征在于:数据库文件存储空间分为四部分,依次包含数据库头信息、对象索引、位图页和其它对象占用空间,其中,对象索引是以对象标识为下标的对象数组。
较优选的,所述对象索引是将对象的OID映射为对象的存储位置的数组,对象索引的值为该对象在所述数据库文件存储空间中的偏移量,所述偏移量将该对象的内存映像定位到数据库文件存储空间中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京人大金仓信息技术股份有限公司,未经北京人大金仓信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110445187.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于净化空气或气体的过滤材料
- 下一篇:光传感器