数据的存储方法及装置的制造方法

文档序号:9708341阅读:542来源:国知局
数据的存储方法及装置的制造方法
【技术领域】
[0001]本发明涉及数据存储领域,具体而言,涉及一种数据的存储方法及装置。
【背景技术】
[0002]目前,现有实现大容量数据的搜索方式通常是基于数据库或者较为复杂的算法,实现时占用的FLASH以及内存资源大,其并不适用于单片机这种资源受限的使用环境。
[0003]相关技术中通常使用的大容量数据的搜索方式主要包括以下四种:
[0004]方案一、面向海量数据检索的多级桶哈希索引方法,其主要包括:(I)提供桶映射表,用于减小哈希索引文件在磁盘上的占用空间;(2)哈希索引采用了多级桶,磁盘块的大小是扇区大小的整数倍,每个磁盘块有一个或多个基本桶,可以有块内溢出桶,具有全局溢出桶;(3)提供索引文件的数据缓存结构,提供了数据缓存映射表,数据缓存的管理使用缓存映射表上的双向链表实现。
[0005]该方案的缺陷在于:所使用的算法过于复杂,不适合在微控制器单元(MicroControl Unit,简称为MCU,其内部集成CPU、RAM、ROM、定时器等多种外设)上使用。
[0006]方案二、提供了一种海量数据的处理方法及处理装置,该方案包括:设置一数据文件及索引文件,数据文件包括至少一个文件数据块,每个文件数据块的长度相等;索引文件与数据文件相对应,包括各数据对象在数据文件中的地址偏移;在存入数据对象时,如果游标当前指向的文件数据块的剩余空间不够存储待存储的数据对象,则在待存储的数据对象将剩余空间填满后,数据文件向系统申请一块或多块新文件数据块,并将待存储数据对象中还未存入的剩余数据存入到新文件数据块中,并在索引文件中记录新存入数据对象的地址偏移;通过将游标指向欲读取的数据对象的地址偏移来读取数据文件中存储的数据对象。
[0007]然而,该方案的缺陷在于:数据文件需要动态申请并划分。
[0008]方案三、涉及一种实时数据库检索方法及检索系统,该方案包括:建立多级索引,依据检索区间从上一级索引的节点链接至下一级索引的节点,直到链接至私有索引;从最上级索引开始检索,从与目标区间存在交集的节点开始,向下一级的索引进行检索,直到检索到私有索引的数据块。
[0009]该方案的缺陷在于:使用了数据库管理,其不适用于嵌入式系统上资源受限的场合使用。
[0010]方案四、涉及一种大数量图片的存储与检索方法,包括在硬盘上划分分区,使该分区包含一级索引,二级索引,三级索引和图片数据包;三级索引中存放的内容包括:图片数据包地址和图片在图片数据包中的偏移,图片的长度和图片的拍摄时间,该方法包括以下存储步骤:获取图片;提取图片的信息,将图片的信息匹配至一级索引;若匹配成功,通过一级索引定位到二级索引;再根据二级索引定位到三级索引;以及通过三级索引定位到图片数据包,将图片存储到图片数据包,并将图片在图片数据包中的偏移,图片的长度和图片的拍摄时间记录到三级索引,并更新该图片所属的一级索引和二级索引的最晚图片时间;以及继续获取图片。
[0011]该方案的缺陷在于:由于图片数据存在一定特性,故而此方案局限性较大,仅能适用于图片的存储及检索。
[0012]综上所述,相关技术中并没有提出简便易行的大容量数据的存储方式,S卩如何通过将大容量数据细分成多个存储容量较小的文件进而存入存储介质当中。

【发明内容】

[0013]本发明提供了一种数据的存储方法及装置,以至少解决相关技术中缺乏简便易行的大容量数据的存储方式的问题。
[0014]根据本发明的一个方面,提供了一种数据的存储方法。
[0015]根据本发明实施例的数据的存储方法包括:将预设存储器件划分为第一存储区域和第二存储区域,其中,第一存储区域用于存储数据文件的索引,第二存储区域用于存储数据文件,数据文件是将待存储数据按照文件的形式进行存储;将第二存储区域划分为N个存储空间,其中,N为正整数且每个存储空间的存储容量相同;按照待存储数据生成的先后顺序依次存储至N个存储空间。
[0016]优选地,按照待存储数据生成的先后顺序依次存储至N个存储空间包括:按照数据生成的先后顺序确定M由小到大取值,并在第M个存储空间中创建文件,其中,M为正整数且I < M < N-1 ;在确定第M个存储空间内的文件中存储的数据量已经达到预设存储容量阈值的情况下,对第M个存储空间内的文件进行存储,并在相邻的第M+1个存储空间内新建下一个文件,继续向新建的下一个文件中写入数据,直至将待存储数据全部写入N个存储空间。
[0017]优选地,按照待存储数据生成的先后顺序依次存储至N个存储空间还包括:在每个存储空间内获取当前存储的数据所归属的类型以及每种类型数据在当前存储空间内首次出现的位置信息,其中,将每个存储空间内的文件中属于同种类型的数据采用链表的形式进行链接;对数据类型的数量和位置信息进行记录。
[0018]优选地,按照待存储数据生成的先后顺序依次存储至N个存储空间还包括:将每个存储空间内的文件中存储的数据划分为T个数据段,其中,T为正整数;分别对每个数据段的起始存储时间、结束存储时间以及对该数据段的操作信息进行记录。
[0019]优选地,在将预设存储器件划分为第一存储区域和第二存储区域之后,还包括:在第一存储区域记录每个存储空间内文件的起始存储时间、结束存储时间以及对该文件的操作信息。
[0020]根据本发明的另一方面,提供了一种数据的存储装置。
[0021]根据本发明实施例的数据的存储装置包括:第一划分模块,用于将预设存储器件划分为第一存储区域和第二存储区域,其中,第一存储区域用于存储数据文件的索引,第二存储区域用于存储数据文件,数据文件是将待存储数据按照文件的形式进行存储;第二划分模块,用于将第二存储区域划分为N个存储空间,其中,N为正整数且每个存储空间的存储容量相同;存储模块,用于按照待存储数据生成的先后顺序依次存储至N个存储空间。
[0022]优选地,存储模块包括:创建单元,用于按照数据生成的先后顺序确定M由小到大取值,并在第M个存储空间中创建文件,其中,M为正整数且I彡M彡N-1 ;存储单元,用于在确定第M个存储空间内的文件中存储的数据量已经达到预设存储容量阈值的情况下,对第M个存储空间内的文件进行存储,并在相邻的第M+1个存储空间内新建下一个文件,继续向新建的下一个文件中写入数据,直至将待存储数据全部写入N个存储空间。
[0023]优选地,存储模块还包括:获取单元,用于在每个存储空间内获取当前存储的数据所归属的类型以及每种类型数据在当前存储空间内首次出现的位置信息,其中,将每个存储空间内的文件中属于同种类型的数据采用链表的形式进行链接;第一记录单元,用于对数据类型的数量和位置信息进行记录。
[0024]优选地,存储模块还包括:划分单元,用于将每个存储空间内的文件中存储的数据划分为T个数据段,其中,T为正整数;第二记录单元,用于分别对每个数据段的起始存储时间、结束存储时间以及对该数据段的操作信息进行记录。
[0025]优选地,上述装置还包括:记录模块,用于在第一存储区域记录每个存储空间内文件的起始存储时间、结束存储时间以及对该文件的操作信息。
[0026]通过本发明实施例,采用将预设存储器件划分为第一存储区域和第二存储区域,其中,第一存储区域用于存储数据文件的索引,第二存储区域用于存储数据文件,数据文件是将待存储数据按照文件的形式进行存储;将第二存储区域划分为N个存储空间,其中,N为正整数且每个存储空间的存储容量相同;按照待存储数据生成的先后顺序依次存储至N个存储空间,解决了相关技术中缺乏简便易行的大容量数据的存储方式的问题,进而实现了对大容量数据的存储方式简便、易行,并且能够有效地提高数据搜索效率。
【附图说明】
[0027]此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0028]图1是根据本发明实施例的数据的存储方法的流程图;
[0029]图2是根据本发明优选实施例的在整个SD卡中文件分布的示意图;
[0030]图3是根据本发明优选实施例的索引文件结构中的段索引记录的示意图;
[0031]图4是根据本发明优
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1