[发明专利]一种sqlite的自由空间的删除记录挖掘方法和系统无效

专利信息
申请号: 201210001682.9 申请日: 2012-01-05
公开(公告)号: CN102591979A 公开(公告)日: 2012-07-18
发明(设计)人: 陈明辉;方均滩;吴世雄 申请(专利权)人: 厦门市美亚柏科信息股份有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京恒都律师事务所 11395 代理人: 何自刚
地址: 361008 福建省厦门*** 国省代码: 福建;35
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 sqlite 自由空间 删除 记录 挖掘 方法 系统
【说明书】:

技术领域

发明涉及数据库处理系统,尤其涉及sqlite的自由空间的删除记录挖掘方法和系统。

背景技术

传统的sqlite删除数据解析方法是根据记录数据的特征来识别记录关键数据的起始和终止标志,从而解析某些关键数据,但是这种方法的弊端是只能针对某一类数据库文件的某些关键数据,而无法提取全部数据,并且对于其他的数据库文件则需要重新提取数据特征并重新解析,无法保证通用性。

目前市场上的sqlite数据库删除数据的通用解析产品具有很大的局限性,其B+tree自由空间删除记录挖掘,由于对于记录特征提取不够精确,而且对于多数据表删除数据交叉的考虑不够充分,所以解析效果不尽如人意。测试发现对于B+tree自由空间删除记录挖掘,往往只能解析一小部分的删除记录,甚至无法解析任何一条记录,而且解析结果经常由于记录划分的不准确存在乱码现象,这样影响了删除记录解析的准确性和全面性。

发明内容

本发明的目的在于提供一种sqlite的自由空间的删除记录挖掘方法,可以通用、全面地解决sqlite的自由空间上删除记录的挖掘。

本发明是这样实现的,一种sqlite的自由空间的删除记录挖掘方法,所述方法包括下述步骤:读取sqlite页的自由空间,从sqlite的多重通用特征中抽象出多元组用以描述自由空间的记录的关键点信息;通过页面交叉方法遍历上述关键点信息以挖掘删除记录。

本发明的另一目的在于提供一种sqlite的自由空间的删除记录挖掘系统,所述系统包括:关键点信息抽象单元,用于从sqlite的多重通用特征中抽象出多元组用以描述自由空间的记录的关键点信息;页面交叉遍历单元,用于通过页面交叉方法遍历上述关键点信息以挖掘删除记录。

作为优选的,所述多重通用特征包括五元组,为:当前页面的完整的记录数据块中的记录总长度的值、头部索引总长度的值、头部索引总长度所占用空间的大小,以及当前页面的空闲链表节点的前两个字节指向下一个空闲节点的指针的值、后两个字节表示该空闲节点的大小的值。

作为优选的,根据所述五元组抽象出的所述多元组用以描述自由空间上记录的关键点信息,所述多元组包括三元组,为:在当前页面的完整的记录数据块的或者当前页面的空闲链表节点的记录的所在的地址偏移、在当前页面的完整的记录数据块的或者当前页面的空闲链表节点的记录的所占用空间的大小,以及数据类型。

作为优选的,所述页面交叉遍历单元,包括:第一次遍历单元,用于根据节点的类型依次处理各个节点;第二次遍历单元,用于对于不满足重组条件的节点采用节点合并和拆分方式,再次尝试重组判断;第三次遍历单元,用于判断是否有不属于当前数据表的记录存在,如果有,采用交叉方法挖掘删除记录。

本发明的实施例在研究sqlite格式和B+tree页面空间分配和释放的基础上,提出了基于多重通用特征的Sqlite的B+tree自由空间删除记录挖掘方法,并且利用多数据表删除数据交叉挖掘技术,充分挖掘其他数据表残留的删除记录,以提高自由空间删除记录挖掘的准确性和全面性。

附图说明

图1为本发明的sqlite页面结构示意图;

图2为本发明的sqlite页面的自由空间上WRN的sqlite记录结构图;

图3为本发明的sqlite页面的自由空间上FRN的sqlite记录结构图;

图4为本发明的sqlite页面的自由空间的删除记录挖掘流程图。

具体实施方式

(一)sqlite的B+tree自由空间的简单介绍

Sqlite数据库的页面组织是由B+tree来管理的,每个B+tree节点对应一个sqlite页面,其中存放数据的叶子节点称为叶子页,而存放索引的内部节点称为内部页。每个页面的数据组织分别有页面头部(记为PH)的管理部分和页面尾部(记为PT)的数据部分组成,这样就形成了PH和PT之间的自由空间(记为FSN)部分,如图1所示。

sqlite页面转换(比如叶子页转换为内部页)或者申请已有的空闲页的时候,原有页面的内容不会清空,从而导致了自由空间的记录数据残留,与sqlite的空闲链表节点不同的是,残留的记录呈现多样化趋势:

当前数据表的完整的记录数据块(记为WRN);

当前数据表的空闲链表节点(记为FRN);

其他数据表的删除记录(记为ORN);

其中,

WRN是因为整表数据全部清空的时候,sqlite只会修改相应页面PH部分的前8个字节,而不会对所有记录执行逐条删除;

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

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于厦门市美亚柏科信息股份有限公司,未经厦门市美亚柏科信息股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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