[发明专利]一种嵌入式数据库的检索及存储方法有效
申请号: | 201210061827.4 | 申请日: | 2012-03-09 |
公开(公告)号: | CN102629269A | 公开(公告)日: | 2012-08-08 |
发明(设计)人: | 林嘉顺;黄强 | 申请(专利权)人: | 深圳市民德电子科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳市顺天达专利商标代理有限公司 44217 | 代理人: | 易钊 |
地址: | 518057 广东省深圳市南山区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 数据库 检索 存储 方法 | ||
技术领域
本发明涉及嵌入式系统的数据处理技术,尤其涉及一种嵌入式数据库的检索及存储方法。
背景技术
随着数字信息技术的发展与嵌入式产品的广泛应用,现代办公和生活已经越来越离不开对大量信息的实时管理,嵌入式设备作为信息交互的终端载体已经成为一种趋势。
嵌入式系统是软件和硬件的综合体,也是一种以应用为中心、以计算机技术为基础,软、硬件都具有可裁剪性的专用“计算机”系统。受功能需求、系统成本、硬件尺寸大小等方面因素的影响,嵌入式系统的软硬件配置都会受到一定的限制。在条件受限的嵌入式系统中,例如一些只有几十KB或者几百KB内存的嵌入式设备,想要实现对大量数据的处理和管理,并且实现嵌入式设备实时性反应的要求,则需要根据数据来源的特点,对数据进行有效地组织和存储,来减少系统软件运行的时间开销,达到系统实时反映的要求。数据库为一种常用的技术手段。目前得到较多应用的数据管理方法包括有层次、网状和关系数据库等方式,如MS SQL、DB II和Oracle等,对于小型数据应用单位来说,建立和使用常用的商用数据库存在一定的缺陷和不足,比如,数据库使用成本较高,需要在高速系统、大容量硬盘、内存及并行机制基础上建立,显然不能将这些成熟的商用数据库很好地移植到受条件限制的嵌入式系统中。如上所述,在软硬件配置都受到一定的限制的嵌入式系统中,则需要建立一种轻量级的嵌入式数据库,并能满足系统实时反应的要求。
因此,需要根据数据本身的特点以及嵌入式系统的软硬件环境,综合评价检索与更新效率、内存和存储空间的开销等因素,选择合适的索引技术,设计一种对资源消耗少、检索效率高的轻量级嵌入式数据库,以实现数据存储及其检索的方法。
发明内容
本发明要解决的技术问题在于针对现有技术的上述缺陷,提供一种嵌入式数据库的检索及存储方法。
本发明解决其技术问题所采用的技术方案是:
一种嵌入式数据库的检索及存储方法,建立数据文件和索引文件以存储数据信息,索引文件包括头文件信息、散列表以及AVL树和索引信息,当嵌入式系统处于离线状态时,数据的存储过程包括:
S1、嵌入式设备与外部高速设备通信连接,外部高速设备对数据进行分析和组织;
S2、将记录保存到数据文件;
S3、建立索引信息并保存到索引文件中;
S4、嵌入式数据库建立后,将其下载至嵌入式设备中;当嵌入式系统处于在线状态时,数据的检索和存储过程包括:
T1、打开嵌入式数据库文件,包括数据文件和索引文件;
T2、通过关键字在索引文件中查找索引信息;
T3、获取数据文件中的记录、插入或更新数据文件中的记录。
该方法的步骤S1进一步包括:指定标识记录的数据项为关键字,规划散列表的大小,从散列函数集合中选取散列函数对关键字进行探测,确定一个待用的散列函数和索引文件的头文件信息,头文件信息包括记录总量、散列函数序号、散列表大小以及表单元长度。
在该方法中,散列函数包括:BKDRHash、DJBHash、APHash、RSHash、SDBMHash和JSHash。
该方法的步骤S3进一步包括:根据散列函数计算关键字的散列值,将该散列值映射到散列表中。
该方法的步骤S3进一步包括:获取散列表的数据,判断散列表是否为空,当散列表为空时,建立AVL树根节点,填入该根节点的索引信息,其中根节点的索引信息包括:左子树入口地址、右子树入口地址、关键字、记录在数据文件的偏移地址、记录长度,当散列表为非空时,新建一个树叶子节点插入AVL树中,填入该树叶子节点的索引信息,其中树叶子节点的索引信息包括:左子树入口地址、右子树入口地址、关键字、记录在数据文件的偏移地址、记录长度。
该方法的步骤S3进一步包括:判断上述步骤的数据存储是否结束,如果继续进行数据存储,则返回步骤S2。
在该方法中,当嵌入式系统处于在线状态时,数据的检索和存储过程还包括:
T0、判断嵌入式系统中是否存在数据库文件,如果存在,则将其打开,如果不存在,则建立一个新的数据库文件并打开。
该方法的步骤T2进一步包括:获取索引文件的头文件信息,从散列函数集合中确定一待用的散列函数,利用该散列函数计算关键字的散列值,通过散列值与散列表的映射关系,获取散列表中的数据,作为AVL树根节点入口地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市民德电子科技有限公司,未经深圳市民德电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210061827.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:逆变器
- 下一篇:可信消息存储和传输协议和系统