[发明专利]嵌入式系统数据库创建表、存记录、删记录的方法和装置有效
申请号: | 201210151801.9 | 申请日: | 2012-05-16 |
公开(公告)号: | CN103425663B | 公开(公告)日: | 2017-11-28 |
发明(设计)人: | 潘奇银 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京安信方达知识产权代理有限公司11262 | 代理人: | 解婷婷,龙洪 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 系统 数据库 创建 记录 方法 装置 | ||
技术领域
本发明涉及嵌入式系统,具体涉及一种嵌入式系统数据库数据处理方法(包括创建表、存储记录、删除记录)和相应装置。
背景技术
随着计算机技术的不断发展,人们生活水平的日益提高,越来越多的工业控制、医疗、通讯、消费等电子产品日趋智能化,以微处理器为核心的嵌入式监控系统得到日益广泛应用。为了更好地了解设备的运行状况,监控系统需要采集大量的运行参数数据,并将这些数据呈现给用户,同时监控系统还需要为用户提供大量的历史数据,以便用户更好地了解设备的运行规律,从而对设备的运行策略进行调整,使设备的工作效率更高,能耗更低。因此,嵌入式监控系统要在有限的存储空间条件下为用户提供较大容量的历史记录存储,并提供相应的查询功能。
为了解决存储空间有限的问题,通常的做法是数据循环覆盖保存,即当存储空间所剩不多时,最新的数据要覆盖最老的数据。具体做法是:根据历史数据存储空间M和一条记录的最大数据量m,将存储空间划分为N个存储单元(N=M/m),每个单元存储一条记录,至少建立一个写游标Q,指向要写入的单元,每新增一条记录,游标就指向下一个存储单元,当游标值Q>=N时,将游标归0(即指向第一个存储单元),在保存历史记录的同时,也要将写游标保存到掉电不丢失的存储介质中,上电时先读取写游标,然后再读写历史记录。为了保证数据的正确性,在读写历史记录时都需要对数据进行校验,比如单条记录进行CRC校验。如果数据都是顺序读取,那么这种做法简单高效,但如果需要记录查询服务(比如用户要查询某个时间段的记录),而且数据量比较大的时候,只能通过复杂的算法来实现查询。简而言之,这种做法说需要复杂的算法才能实现查询功能,而且每个存储单元都根据最大的数据量设定的,不可变长,存储空间利用较低。
虽然目前很多数据库是支持可变长数据存储并都具备强大的查询功能,然而不幸的是目前大多数的数据库系统不能直接实现数据循环覆盖保存功能。
发明内容
本发明所要解决的技术问题是提供一种嵌入式系统数据库创建表、存记录、删记录的方法和装置,提高嵌入式系统数据库的数据处理效率。
为解决上述技术问题,本发明提供了一种创建嵌入式系统数据库表的方法,包括:
为每一类记录创建一个记录表,每个记录表包括新旧程度标识字段,所述新旧程度标识用于标识各条记录的新旧程度;
为每个记录表分配最大记录数量;
创建索引表,所述索引表中保存一个或多个记录表的记录信息,所述记录信息包括:记录表标识,记录表的新旧记录信息,以及记录表的当前记录数量。
为解决上述技术问题,本发明还提供了一种在嵌入式系统数据库表中存储记录的方法,包括:
将待存入记录存入记录表时,从该记录表对应的索引表中读取该记录表的当前记录数量;
根据当前记录数量判断该记录表是否已存满,如果未存满,则将该待存入记录作为一条新纪录写入记录表,更新索引表中该记录表的新旧记录信息和当前记录数量,如果已存满,则根据索引表中该记录表的新旧记录信息找到旧记录,用待存入记录覆盖旧记录,更新索引表中该记录表的新旧记录信息。
进一步地,所述根据当前记录数量判断该记录表是否已存满,包括:判断当前记录数量是否大于等于该记录表的最大记录数量,如果是,表示已存满,如果不是,表示未存满。
进一步地,所述记录表的新旧记录信息包括最旧记录标识和最新记录标识;
所述更新索引表中该记录表的新旧记录信息和当前记录数量,包括:更新索引表中该记录表的最新记录标识和当前记录数量;
所述根据索引表中该记录表的新旧记录信息找到旧记录,包括:根据最旧记录标识找到最旧记录;
所述更新索引表中该记录表的新旧记录信息,包括:更新索引表中该记录表的最旧记录标识和最新记录标识。
进一步地,所述用待存入记录覆盖旧记录,包括:用待存入记录覆盖最旧记录。
为解决上述技术问题,本发明还提供了一种在嵌入式系统数据库表中删除记录的方法,包括:
删除记录表中记录,所述记录表为如权利要求1方法创建的记录表;
更新索引表中的当前记录数量,所述索引表为如权利要求1方法创建的索引表。
进一步地,所述方法还包括:当删除的记录包括记录表中的最旧记录和/或最新记录时,更新索引表中的新旧记录信息。
进一步地,所述新旧记录信息包括最旧记录标识和最新记录标识;
所述删除的记录包括记录表中的最旧记录时,更新索引表中的新旧记录信息,包括:更新索引表中的最旧记录标识;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210151801.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:矿用隔爆兼本质安全型真空交流软起动器
- 下一篇:太阳灶用球型光伏发电装置