[发明专利]面向嵌入式内存数据库的非易失性内存存储方法及系统有效

专利信息
申请号: 202110200813.5 申请日: 2021-02-23
公开(公告)号: CN113050886B 公开(公告)日: 2022-09-20
发明(设计)人: 李焱;杜萍;李宪睿;张逸飞;郭书宇;任心瑜 申请(专利权)人: 山东师范大学
主分类号: G06F3/06 分类号: G06F3/06;G06F12/02;G06F9/455;G06F9/50
代理公司: 济南圣达知识产权代理有限公司 37221 代理人: 李琳
地址: 250014 山*** 国省代码: 山东;37
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 面向 嵌入式 内存 数据库 非易失性 存储 方法 系统
【权利要求书】:

1.一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:包括以下步骤:

设置页面大小上限,按照设定上限对非易失性内存空间区域进行划分,利用空间链表对空闲页面进行管理;

判断分配非易失性内存空闲空间的请求中,请求的空间是否大于设定上限,如果是,从空间链表中直接分配相对应数量的连续的空闲块,并调整空闲链表中的基本信息;

如果不是,利用分配器配合页面掩码进行分配;

NVMSQLite的体系结构分为前端解析系统和后端引擎两个部分;

前端解析系统包含三个模块,分别为分词器、解析器、代码生成器,对应用程序传递过来的字符串进行处理,对其中包含的SQL语句和命令进行分析、优化和转换,最终将其变为虚拟机能够执行的内部编码;

后引擎由虚拟机、B-Tree、页缓存和操作系统接口构成,其中虚拟机位于核心位置,为NVMSQLite的引擎,用来解释执行前端解析系统生成的内部编码;

NVMSQLite的数据库运行在非易失性内存上,操作系统接口面向非易失性内存。

2.如权利要求1所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:还包括根据存储空间释放量或定时进行空间回收,将完全空的已用页面插入空闲链表中。

3.如权利要求2所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:进行空间回收的具体方法为在页面上配置位图标志位,标志位为第一状态时,表示该位置为空,判断对应页面的所有标志位是否全为第一状态,如果是,则将该页面插入空闲链表中。

4.如权利要求1所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:所述非易失性内存空间区域包括非易失性内存元数据存储区、元数据存储区和数据库存储区。

5.如权利要求4所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:在所述元数据存储区中,划出一部分区域为日志区域,进行一步操作时,该操作作为一个条目记录在日志里面,同时存储一个日志指针,所述指针指向日志中当前操作的条目,指针所指之前地日志条目指代的操作全部失效,每完成一步操作,往后挪一步指针;当日志区域全部用完时,指针从头开始。

6.如权利要求1所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:利用分配器配合页面掩码进行分配时,首先判断分配器里面的空闲空间是否能满足要求,如果不能满足要求,从空闲页面链表中获取一个设定上限大小的物理页给分配器,然后再分配。

7.如权利要求1所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:利用分配器配合页面掩码进行分配时,设置最细粒度,所述页面掩码的结构中,每个元素对应一个物理页,存放该页面的空间使用情况,每个元素是一个位图。

8.如权利要求7所述的一种面向嵌入式内存数据库的非易失性内存存储方法,其特征是:每从一个页面分配最细粒度字节,页码掩码中对应的位置为第二状态;每从某个页面释放最细粒度字节,页面掩码中对应的位置为第一状态。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东师范大学,未经山东师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110200813.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top