利索能及
我要发布
收藏
专利号: 2018113236608
申请人: 杭州海康威视数字技术股份有限公司
专利类型:发明专利
专利状态:已下证
更新日期:2025-11-27
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种数据的存储方法,其特征在于,存储所述数据的存储介质包括:一级索引区、二级索引区、多个三级索引区和与多个三级索引区一一对应的多个数据存储区;

所述一级索引区用于存储已存储数据的描述信息和对应的一级索引,所述一级索引用于标识已存储数据所在的存储块在数据存储区的存储位置信息,及该数据存储区在所述存储介质中的存储位置信息;

所述二级索引区用于存储预设的每个数据存储区在所述存储介质中的存储位置信息;

所述三级索引区用于存储每个已存储数据的存储块在所述数据存储区的位置信息;

所述方法包括:

获得当前待存储数据的数据量及当前待存储数据的描述信息;

基于所述当前待存储数据的数据量,从所述多个数据存储区中选择用于存储所述当前待存储数据的当前数据存储区,并在当前数据存储区中为所述当前待存储数据分配当前存储块;

获得所述当前存储块在所述当前数据存储区的位置信息;

将所述当前存储块在所述当前数据存储区的位置信息,存储至与所述当前数据存储区对应的三级索引区中;

从所述二级索引区中,获取所述当前数据存储区在所述存储介质的位置信息;

根据所述当前存储块在所述当前数据存储区的位置信息,及所述当前数据存储区在所述存储介质的位置信息,生成用于标识所述当前存储块在所述当前数据存储区的位置及所述当前数据存储区在所述存储介质的位置的一级索引;

将生成的一级索引及所述当前待存储数据的描述信息,对应存储至一级索引区中;

将所述当前待存储数据存储至所述当前存储块中。

2.根据权利要求1所述的方法,其特征在于,所述二级索引区进一步用于存储标识每个数据存储区在所述存储介质的位置的索引;所述每个数据存储区在所述存储介质的位置的索引,为预先按预设第一数据处理算法,对每个数据存储区在所述存储介质中的存储位置信息进行数据处理获得的;

在所述将所述当前存储块在所述当前数据存储区的位置信息,存储至与所述当前数据存储区对应的三级索引区中的步骤之前,还包括:按所述预设第一数据处理算法,对所述当前存储块在所述当前数据存储区的位置信息进行数据处理,获得所述当前存储块在所述当前数据存储区的索引;

所述将所述当前存储块在当前数据存储区的位置信息存储至当前数据存储区对应的三级索引区中的步骤,包括:将获得的所述当前存储块在所述当前数据存储区的索引,和所述当前存储块在所述当前数据存储区的位置信息对应存储至与所述当前数据存储区对应的三级索引区中;

所述从所述二级索引区中,获取所述当前数据存储区在所述存储介质的位置信息的步骤,包括:从所述二级索引区中,获取所述当前数据存储区的索引及所述当前数据存储区在所述存储介质的位置信息;

所述根据所述当前存储块在所述当前数据存储区的位置信息,及所述当前数据存储区在所述存储介质的位置信息,生成用于标识所述当前存储块在所述当前数据存储区的位置及所述当前数据存储区在所述存储介质的位置的一级索引的步骤,包括:按所述预设第二数据处理算法,对所述当前存储块在所述当前数据存储区的索引和所述当前数据存储区的索引进行数据处理,生成用于标识所述当前存储块在所述当前数据存储区的位置及所述当前数据存储区在所述存储介质的位置的一级索引。

3.根据权利要求2所述的方法,其特征在于,预先按预设第一数据处理算法,对每个数据存储区在所述存储介质中的存储位置信息进行数据处理,获得每个数据存储区的索引,包括:采用哈希算法,对所述每个数据存储区在所述存储介质中的存储位置信息进行计算,获得所述每个数据存储区的索引;

所述按所述预设第一数据处理算法,对所述当前存储块在所述当前数据存储区的位置信息进行数据处理,获得所述当前存储块在所述当前数据存储区的索引的步骤,包括:采用哈希算法,对所述当前存储块在所述当前数据存储区的位置信息进行计算,获得所述当前存储块在所述当前数据存储区的索引;

所述按所述预设第二数据处理算法,对所述当前存储块在所述当前数据存储区的索引和所述当前数据存储区的索引进行数据处理,生成用于标识所述当前存储块在所述当前数据存储区的位置及所述当前数据存储区在所述存储介质的位置的一级索引的步骤,包括:将所述当前存储块在所述当前数据存储区的索引和所述当前数据存储区的索引进行合并,获得合并后的索引数据,并将所述合并后的索引数据作为所述一级索引,所述一级索引用于标识所述当前存储块在所述当前数据存储区的位置及所述当前数据存储区在所述存储介质的存储位置。

4.根据权利要求1所述的方法,其特征在于,所述基于所述当前待存储数据的数据量,从所述多个数据存储区中选择用于存储所述当前待存储数据的当前数据存储区,并在当前数据存储区中为所述当前待存储数据分配当前存储块的步骤,包括:从所述多个数据存储区中选择剩余存储量大于所述当前待存储数据的数据量的数据存储区为当前数据存储区;

按照当前待存储数据的数据量,在所述当前数据存储区中分配大于或等于所述当前待存储数据的数据量的存储块,作为当前存储块。

5.根据权利要求1所述的方法,其特征在于,在所述将所述当前待存储数据存储至所述当前存储块中的步骤后,还包括:判断当前数据存储区已存储的数据量是否达到预设阈值;

如果是,则将该当前数据存储区标识为已用;

所述基于所述当前待存储数据的数据量,从所述多个数据存储区中选择用于存储所述当前待存储数据的当前数据存储区,并在当前数据存储区中为所述当前待存储数据分配当前存储块的步骤,包括:从所述多个数据存储区中选择未被标识为已用的数据存储区中,选择剩余存储量大于所述当前待存储数据的数据量的数据存储区为当前数据存储区;

按照当前待存储数据的数据量,在所述当前数据存储区中分配大于或等于所述当前待存储数据的数据量的存储块,作为当前存储块。

6.根据权利要求1所述的方法,其特征在于,所述基于所述当前待存储数据的数据量,从所述多个数据存储区中选择用于存储所述当前待存储数据的当前数据存储区,并在当前数据存储区中为所述当前待存储数据分配当前存储块的步骤,包括:选择多个数据存储区作为多个当前数据存储区;

基于所述当前待存储数据的数据量,在多个当前数据存储区中,分别分配用于存储部分当前待存储数据的当前存储块。

7.一种数据的检索方法,其特征在于,存储所述数据的存储介质包括:一级索引区、二级索引区、多个三级索引区和与多个三级索引区一一对应的多个数据存储区;

所述一级索引区用于存储已存储数据的描述信息和对应的一级索引,所述一级索引用于标识已存储数据所在的存储块在数据存储区的存储位置信息,及该数据存储区在所述存储介质中的存储位置信息;

所述二级索引区用于存储预设的每个数据存储区在所述存储介质中的存储位置信息;

所述三级索引区用于存储每个已存储数据的存储块在数据存储区的位置信息;所述检索方法包括:获得当前检索条件;

在所述一级索引区查询符合所述当前检索条件的目标数据的当前描述信息;

针对每个目标数据,获得与所述目标数据的当前描述信息对应的一级索引;

根据所述一级索引,从所述二级索引区获得目标数据所在的数据存储区在所述存储介质的位置信息,从所述三级索引区获得存储目标数据的存储块在所述数据存储区的位置信息;

按照目标数据所在数据存储区在所述存储介质的位置信息和存储目标数据的存储块在所述数据存储区的位置信息,读取目标数据。

8.根据权利要求7所述的方法,其特征在于,所述二级索引区进一步用于存储标识每个数据存储区在所述存储介质的位置的索引;所述每个数据存储区在所述存储介质的位置的索引,为预先按预设第一数据处理算法,对每个数据存储区在所述存储介质中的存储位置信息进行数据处理获得的;

所述每个三级索引区,还用于存储每个存储块在与该三级索引区对应的数据存储区的位置的索引;所述每个存储块在与该三级索引区对应的数据存储区的位置的索引,为:在数据存储过程中,按所述预设第一数据处理算法,对所述当前存储数据的存储块在所述当前数据存储区的位置信息进行数据处理获得的;

所述一级索引为:按预设第二数据处理算法,对存储块在数据存储区的索引和该数据存储区在所述存储介质的索引进行数据处理获得;

所述根据所述一级索引,从所述二级索引区获得目标数据所在的数据存储区在所述存储介质的位置,从所述三级索引区获得存储目标数据的存储块在所述数据存储区的位置的步骤,包括:采用与所述第二数据处理算法对应的第二数据恢复算法,对所述一级索引进行数据恢复,获得所述目标数据所在存储块在所述数据存储区的索引和该数据存储区在所述存储介质的索引;

采用与所述第一数据处理算法对应的第一数据恢复算法,分别对所述目标数据所在存储块在所述数据存储区的索引和该数据存储区在所述存储介质的索引进行数据恢复,获得所述目标数据所在存储块在所述数据存储区的位置信息和该数据存储区在所述存储介质的位置信息。

9.根据权利要求8所述的方法,其特征在于,预先按预设第一数据处理算法,对每个数据存储区在所述存储介质中的存储位置信息进行数据处理,获得每个数据存储区在所述存储介质的位置的索引,包括:采用哈希算法,对所述每个数据存储区在所述存储介质中的存储位置信息进行计算,获得所述每个数据存储区在所述存储介质的位置的索引;

按所述预设第一数据处理算法,对所述当前存储块在所述当前数据存储区的位置信息进行数据处理,获得所述每个存储块在与该三级索引区对应的数据存储区的位置的索引的步骤,包括:采用哈希算法,对所述当前存储块在所述当前数据存储区的位置信息进行计算,获得所述每个存储块在与该三级索引区对应的数据存储区的位置的索引;

按所述预设第二数据处理算法,对存储块在数据存储区的索引和该数据存储区在所述存储介质的索引进行数据处理,获得所述一级索引的步骤,包括:将所述存储块在所述数据存储区的索引和该数据存储区在所述存储介质的索引进行合并,获得合并后的索引数据,并将所述合并后的索引数据作为所述一级索引,所述一级索引用于标识所述存储块在所述数据存储区的位置及所述数据存储区在所述存储介质的位置的一级索引。

10.一种数据的存储方法,其特征在于,应用于存储所述数据的存储介质,所述存储所述数据的存储介质包括:一级索引区、二级索引区、多个三级索引区和与多个三级索引区一一对应的多个数据存储区;

所述一级索引区用于存储已存储数据的描述信息和对应的一级索引,所述一级索引用于标识已存储数据所在的存储块在数据存储区的存储位置,及该数据存储区在所述存储介质中的存储位置;

所述二级索引区用于存储预设的每个数据存储区在所述存储介质中的存储位置信息;

所述三级索引区用于存储每个已存储数据的存储块在数据存储区的位置信息;

所述方法包括:

获得当前待存储数据;

从所述多个数据存储区中选择用于存储所述当前待存储数据的当前数据存储区,并在所述当前数据存储区中为所述当前待存储数据分配当前存储块;

将所述当前待存储数据存入所述当前存储块。

11.根据权利要求10所述的方法,其特征在于,所述二级索引区进一步用于存储每个数据存储区在所述存储介质的位置的索引;所述每个数据存储区在所述存储介质的位置的索引为预先按预设第一数据处理算法,对每个数据存储区在所述存储介质中的存储位置信息进行数据处理获得的;

所述第三索引区进一步用于存储每个存储块在数据存储区的索引;所述每个存储块在其所述数据存储区的位置的索引,为:在数据存储过程中,按所述预设第一数据处理算法,对当前存储数据的存储块在当前数据存储区的位置信息进行数据处理获得的。

12.一种电子设备,其特征在于,包括处理器、程序存储器和数据存储器;

所述程序存储器,用于存放计算机程序;

所述数据存储器,包括:一级索引区、二级索引区、多个三级索引区和与多个三级索引区一一对应的多个数据存储区;

所述一级索引区用于存储已存储数据的描述信息和对应的一级索引,所述一级索引用于标识已存储数据所在的存储块在数据存储区的存储位置,及该数据存储区在所述存储介质中的存储位置;

所述二级索引区用于存储预设的每个数据存储区在所述存储介质中的存储位置信息;

所述三级索引区用于存储每个已存储数据的存储块在数据存储区的位置信息;

处理器,用于执行程序存储器上所存放的程序时,实现权利要求1~11任一所述的方法步骤。

13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1~11任一所述的方法步骤。