[发明专利]一种数据存储方法有效
申请号: | 201010529143.3 | 申请日: | 2010-10-20 |
公开(公告)号: | CN101976226A | 公开(公告)日: | 2011-02-16 |
发明(设计)人: | 田友强 | 申请(专利权)人: | 青岛海信宽带多媒体技术有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02 |
代理公司: | 青岛联智专利商标事务所有限公司 37101 | 代理人: | 李升娟 |
地址: | 266100 山*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 存储 方法 | ||
技术领域
本发明涉及数据存储技术领域,具体地说,是涉及考虑数据差异存储的一种数据存储方法。
背景技术
Flash作为一种存储介质,在存储领域得到广泛的应用。Flash在物理结构上分成若干个物理区块(Block),区块之间相互独立,其自身具有以下特性:(1)由于Flash的写操作只能将数据位从1写成0,不能从0写成1,所以在对flash存储器进行写入之前必须先执行擦操作,将预写入的数据位初始化为1,且擦除操作的最小单位是一个区块,而不是单个字节;(2)Flash的擦写寿命有次数限制;(3)块擦除的时间比较长;(4)Flash在使用过程中,可能导致某些区块的损坏,而区块一旦损坏,将无法进行修复。因此,在使用传统方法对Flash进行数据存储时,存储速度较慢,且擦写频繁,降低了Flash的使用寿命。
为解决传统Flash存储方法存在的上述问题,本申请人曾提出了一种Flash的动态存储方法,即把Flash中的每个Block分为更小的虚拟逻辑块(virtualsmall sector,VSS),称为虚拟小扇区,在每个Block中从前先后依次写入数据,写满后再写下一个Block;在只剩最后一个Block时,从前面找一个最早写入的Block进行数据整理,丢弃过旧的数据。这种动态数据存储方法大大减少了Flash块的擦写次数,提高了Flash的寿命,提高了数据读写速度,从而提高了系统的整体性能。
但是,不管是Flash静态存储方法还是动态存储方法,在每次写入新数据时,均是将全部的新数据都写入至存储器中,写入的数据量较大。而实际上,在大多数情况下,新数据和以前写入的旧数据相比可能仅有很小的部分不相同,也即数据的更新仅仅是小部分数据的更新。例如,一条几百个字节长度的节目信息,如果只是调整了音量,这样就只有一个字节的更改,更新的数据还占不到数据总长度的百分之一。如果仍然是将仅有小部分变化的数据全部写入至存储器中存储,数据写入量较大,写入速度较慢,而且需要占据较大的存储空间。
基于此,如何找到一种正确处理仅有部分数据改变的数据的更新和存储,将是本发明所要解决的主要问题所在。
发明内容
本发明的目的在于提供一种数据存储方法,在存储过程中考虑数据的差异存储,以减少数据的写入量,提高写入速度,减少对存储空间的占用。
为实现上述发明目的,本发明采用下述技术方案予以实现:
一种数据存储方法,数据存储以数据记录为基本读写单元,每条数据记录占据一个虚拟小扇区存储空间,每条数据记录包括有关键字、数据及表征数据记录参数特性的虚拟扇区分配表,虚拟扇区分配表中包括有标记数据记录的数据是否为基数据的基数据标志字段;在将数据记录写入到存储空间时,将待写入的数据记录的数据与已写入的关键字相同、数据为最新基数据的数据记录的数据相比较,若需要差异写入,则根据最新基数据组装差异数据作为待写入的数据记录的数据,若不需要差异写入,则直接写入待写入的数据记录。
如上所述的数据存储方法,若所述待写入的数据记录的数据与所述最新基数据相比较,存在下述任何一种情况,则不需要差异写入:
a1、待写入的数据记录的数据的长度不超过第一设定字节数;
a2、待写入的数据记录的数据中连续与最新基数据相同的部分均不超过第二设定字节数;
a3、待写入的数据记录的数据与最新基数据不同的数据的长度超过待写入的数据记录的数据长度的一定比例。
而若所述待写入的数据记录的数据与所述最新基数据相比较,不存在上述任何一种情况,则需要差异写入。
如上所述的数据存储方法,为便于数据的管理、节省数据所占用的存储空间,根据最新基数据组装差异数据作为待写入的数据记录的数据时,差异数据根据实际情况可以包括一个或多个差异数据段,每个差异数据段包括有标记差异数据起始位置的偏移量字段、标记差异数据大小的长度字段及从偏移量开始的、大小为长度字段的差异数据字段。
如上所述的数据存储方法,可以采用下述方法判断最新基数据:所述每条数据记录的虚拟扇区分配表中包括有标记数据记录写入先后顺序的数据记录版本号字段,根据数据记录版本号及所述基数据标志判断数据记录的数据是否为最新基数据。
如上所述的数据存储方法,为及时清理存储空间中过旧的数据、节省存储空间,所述每条数据记录的虚拟扇区分配表中还包括有标记数据记录是否有效的有效标志字段;在将数据记录成功写入至存储空间后,根据所述数据记录版本号及设定的备份次数修改存储空间中的旧数据记录的有效标志为无效。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于青岛海信宽带多媒体技术有限公司,未经青岛海信宽带多媒体技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010529143.3/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置