数据存储方法、读取方法、装置、存储介质及程序产品

文档序号:36804057发布日期:2024-01-23 12:31阅读:25来源:国知局
数据存储方法、读取方法、装置、存储介质及程序产品

本技术涉及数据处理领域,尤其涉及一种数据存储方法、读取方法、装置、存储介质及程序产品。


背景技术:

1、事件相机(event camera)是近几年出现的新型相机,是一种基于事件驱动的方式来捕捉场景中的动态变化的相机。其成像原理是,当现实场景中物体或者光照发生变化时,事件相机会产生一些像素级的输出(即事件),生成由一系列事件构成的时空数据流,即事件流。

2、由于事件数据的时间分辨率非常高,因此事件相机输出的数据量相比传统的色彩相机输出的大很多,通常需要压缩后存储,在解压后读取再使用。同时,事件数据形式为流式数据,因此读取事件数据的形式为取出一个时间段内的数据。在普通压缩算法基础上读取数据,需要将数据整体解压缩之后再进行数据读取操作,效率很低,急需一种数据存储方案,使得在读取数据时,不必将数据整体解压缩也能读取数据,以提高数据读取效率。


技术实现思路

1、有鉴于此,提出了一种数据存储方法、读取方法、装置、存储介质及程序产品,根据本技术实施例的数据存储方法,在读取事件数据时可以不必解压所有的数据块就能够读取需读取的事件数据,从而能够支持有选择地读取数据,能够提高数据读取效率。

2、第一方面,本技术的实施例提供了一种数据存储方法,所述方法应用于处理器,所述方法包括:获取事件数据;对所述事件数据进行处理,得到多个数据块和对应的多个元数据块,其中每一数据块包括处理后的一部分事件数据,每一元数据块包括该元数据块对应的数据块中的事件数据的开始时间、结束时间、数目、压缩方式以及数据块的存储地址;将所述多个数据块存储至第一存储区域,将所述多个元数据块存储至第二存储区域。

3、根据本技术实施例的数据存储方法,通过获取事件数据,对事件数据进行处理得到多个数据块和对应的多个元数据块,其中每一数据块包括处理后的一部分事件数据,使得事件数据可以被分块压缩;每一元数据块包括该元数据块对应的数据块中的事件数据的开始时间、结束时间、数目、压缩方式以及数据块的存储地址,使得元数据块可指示该元数据块对应的数据块中的事件数据信息;通过将多个数据块存储至第一存储区域,将多个元数据块存储至第二存储区域的分区存储方式,使得元数据块和数据块可以分别读取,因此在读取事件数据时,根据需读取的事件数据的时间区间即可通过元数据块中包括的时间信息找到满足要求的数据块,即支持时间区间的查询;根据满足要求的数据块的压缩方式对应解压该数据块即可得到需读取的事件数据,可以不必解压所有的数据块,即能够支持按需读取,只需要读取相关的数据,不需要读取全部数据;因此,根据本技术实施例的数据存储方法,在读取事件数据时可以不必解压所有的数据块就能够读取需读取的事件数据,从而能够支持有选择地读取数据,能够提高数据读取效率。

4、根据第一方面,在所述数据存储方法的第一种可能的实现方式中,所述对所述事件数据进行处理,得到多个数据块和对应的多个元数据块,包括:按照所述事件数据中的时间信息和/或空间信息对所述事件数据进行分块,得到多个事件块;针对每一事件块,对该事件块进行处理得到多个序列,所述多个序列包括该事件块中的事件数据的时间信息、空间信息和事件内容信息,每个序列中的元素数目等于该事件块中的事件数据数目,每个序列中的元素数值均为大于或等于0的整数、且元素数值大于第一阈值的元素个数大于元素数值小于或等于第一阈值的元素个数;针对每一序列,从预设的压缩方式中选择与该序列相适应的压缩方式,并基于选择的压缩方式对该序列进行压缩,得到压缩后的数据;根据每一事件块对应的多个序列得到的多个压缩后的数据,得到一个数据块;根据每一事件块所包括的事件数据中的时间信息、事件数据数目、选择的压缩方式以及数据块的存储地址,得到该一个数据块对应的一个元数据块。

5、通过这种方式,使得原本冗余的事件数据,可以转变为大部分数据数值很小、小部分数据数值较大的便于压缩的形式,使得在压缩时能够节省数据存储成本。

6、根据第一方面的第一种可能的实现方式,在所述数据存储方法的第二种可能的实现方式中,所述多个序列包括第一序列,所述第一序列包括事件块中的事件数据的时间信息,所述针对每一事件块,对该事件块进行处理得到多个序列,包括:按照时间信息的先后顺序对该事件块中的事件数据排序,对每一事件数据的时间信息与前一事件数据的时间信息作差,得到第一组差值;将排序最前的事件数据的时间信息以及所述第一组差值中的每一差值分别作为所述第一序列中的元素,得到所述第一序列。

7、通过这种方式,可以提高事件数据的存储效率,降低了对第一存储区域容量要求。

8、根据第一方面的第二种可能的实现方式,在所述数据存储方法的第三种可能的实现方式中,所述多个序列还包括第二序列、第三序列、第四序列,所述第二序列包括事件块中的事件数据的第一维度空间信息,所述第三序列包括事件块中的事件数据的第二维度空间信息,所述第四序列包括事件块中的事件数据的事件内容信息,所述针对每一事件块,对该事件块进行处理得到多个序列,还包括:对每一事件数据的第一维度空间信息与前一事件数据的第一维度空间信息作差,得到第二组差值;使用预设的第一函数,将排序最前的事件数据的第一维度空间信息以及所述第二组差值中的负数转换为正数;根据转换后的排序最前的事件数据的第一维度空间信息,以及转换后的第二组差值中的每一差值,得到所述第二序列;对每一事件数据的第二维度空间信息与前一事件数据的第二维度空间信息作差,得到第三组差值;使用预设的第一函数,将排序最前的事件数据的第二维度空间信息以及所述第三组差值中的负数转换为正数;根据转换后的排序最前的事件数据的第二维度空间信息,以及转换后的第三组差值中的每一差值,得到所述第三序列;对每一事件数据的事件内容信息与前一事件数据的事件内容信息作差,得到第四组差值;使用预设的第一函数,将排序最前的事件数据的事件内容信息以及所述第四组差值中的负数转换为正数;根据转换后的排序最前的事件数据的事件内容信息,以及转换后的第四组差值中的每一差值,得到所述第四序列。

9、通过这种方式,使得由事件块处理得到的多个序列能够以更少的数据量指示事件块中的数据量较大的事件数据的信息,降低数据的冗余程度。

10、根据第一方面的第二种可能的实现方式,在所述数据存储方法的第四种可能的实现方式中,所述多个序列还包括第五序列、第六序列,所述第五序列和第六序列包括事件块中的事件数据的空间信息,所述第五序列还包括事件块中的事件数据的事件内容信息,所述针对每一事件块,对该事件块进行处理得到多个序列,还包括:使用预设的第二函数,对每一事件数据的事件内容信息以及该事件数据的第一维度空间信息或第二维度空间信息进行处理,得到合成信息;对每一事件数据的合成信息与前一事件数据的合成信息作差,得到第五组差值;使用预设的第一函数,将排序最前的事件数据的合成信息以及所述第五组差值中的负数转换为正数;根据转换后的排序最前的事件数据的合成信息,以及转换后的第五组差值中的每一差值,得到所述第五序列;对每一事件数据的第二维度空间信息与前一事件数据的第二维度空间信息作差,或对每一事件数据的第一维度空间信息与前一事件数据的第一维度空间信息作差,得到第六组差值;使用预设的第一函数,将排序最前的事件数据的第二维度信息或第一维度信息,以及第六组差值中的负数转换为正数;根据转换后的排序最前的事件数据的第二维度信息或第一维度信息,以及转换后的第六组差值中的每一差值,得到所述第六序列。

11、通过这种方式,使得处理得到多个序列的方式更灵活,并且能够避免现代编程语言中对比特级别的操作不友好的问题,降低后续对多个序列进一步处理的复杂程度。

12、根据第一方面的第一种可能的实现方式,在所述数据存储方法的第五种可能的实现方式中,在序列中的每个元素的数值相同且位宽均为b时,所述预设的压缩方式包括第一压缩方式,所述第一压缩方式下,该序列中的全部元素的数值用一个b位二进制数来记录,b的数值用一个b位二进制数来记录,其中b和b均为正整数。

13、通过这种方式,使得以第一压缩方式对每个元素的数值相同且位宽均为b的常数序列进行压缩时,压缩后的数据的数据量很低,以实现降低数据存储成本的效果。

14、根据第一方面的第一种可能的实现方式,在所述数据存储方法的第六种可能的实现方式中,在序列中元素的最大位宽为b时,所述预设的压缩方式包括第二压缩方式,所述第二压缩方式下,序列中的每个元素的数值分别用一个b位二进制数记录,b的数值用一个b位二进制数来记录,其中b和b均为正整数。

15、通过这种方式,使得以第二压缩方式对非常数序列进行压缩时,压缩后的数据的数据量很低,以实现降低数据存储成本的效果,并可以使得压缩方式具备更多选择,提升对序列进行压缩的灵活性。

16、根据第一方面的第一种可能的实现方式,在所述数据存储方法的第七种可能的实现方式中,在序列中至少有两个元素的位宽不同,且序列中元素的最大位宽为b时,所述预设的压缩方式包括第三压缩方式,所述第三压缩方式下,设置一个小于b的a,b和a的数值分别用一个b位二进制数记录,序列中的每个元素的二进制形式的低a位数据分别用一个位宽等于 a的二进制数记录,序列中的元素的二进制形式的高b-a位数据用一个位宽等于b-a的二进制数记录,每个元素是否包括高b-a位数据用一个位宽等于序列中的元素个数的二进制数来记录,其中b、b、a均为正整数。

17、通过这种方式,使得以第三压缩方式对非常数序列进行压缩时,压缩后的数据的数据量很低,以实现降低数据存储成本的效果,并可以使得压缩方式具备更多选择,提升对序列进行压缩的灵活性。

18、第二方面,本技术的实施例提供了一种数据读取方法,所述方法应用于处理器,所述方法包括:从第二存储区域获取多个元数据块,所述多个元数据块对应多个数据块,其中每一数据块包括处理后的一部分事件数据,每一元数据块包括该元数据块对应的数据块中的事件数据的开始时间、结束时间、数目、压缩方式以及数据块的存储地址;在所述多个元数据块中,找到开始时间到结束时间之间的任意时间点在目标时间区间内的至少一个元数据块;根据找到的至少一个元数据块中的存储地址,从第一存储区域处获取找到的至少一个元数据块对应的至少一个数据块,并根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行处理,得到待读取的事件数据。

19、根据本技术实施例的数据读取方法,通过从第二存储区域获取多个元数据块,在多个元数据块中,找到开始时间和/或结束时间在目标时间区间内的至少一个元数据块,使得找到的至少一个元数据块可以是与目标时间区间有交集的元数据块。且元数据块对应数据块,每一数据块包括处理后的一部分事件数据,每一元数据块包括该元数据块对应的数据块中的事件数据的开始时间、结束时间、数目、压缩方式以及数据块的存储地址,因此该至少一个元数据块对应的数据块所包括的处理后的一部分事件数据包括待读取的事件数据,即支持时间区间的查询;根据找到的至少一个元数据块中的存储地址,可以从第一存储区域处获取找到的至少一个元数据块对应的至少一个数据块,避免了获取全部的数据块,可以减少获取数据块所需的数据处理成本以及处理器存储获取到的数据块所需的数据存储成本;根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行处理,可以得到待读取的事件数据,因此可以不必解压所有的数据块,即能够支持按需读取,只需要读取相关的数据,不需要读取全部数据;因此,根据本技术实施例的数据读取方法,在读取事件数据时可以不必获取和解压所有的数据块就能够读取需读取的事件数据,从而能够支持有选择地读取数据,能够降低数据处理成本和数据存储成本,提高数据读取效率。

20、根据第二方面,在所述数据读取方法的第一种可能的实现方式中,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行处理,得到待读取的事件数据,包括:根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,所述多个序列包括该数据块对应的一个事件块中的事件数据的时间信息、空间信息和事件内容信息,每个序列中的元素数目等于该事件块中的事件数据数目,每个序列中的元素数值均为大于或等于0的整数、且元素数值大于第一阈值的元素个数大于元素数值小于或等于第一阈值的元素个数;根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块;以全部的事件块包括的事件数据中,时间信息在目标时间区间内的事件数据,作为读取到的事件数据。

21、通过这种方式,针对每一数据块可以解压缩得到多个序列,再基于多个序列可还原出原本的事件块,因此以数据块的形式存储事件数据并不会对后续使用解压得到的事件块中的事件数据的准确度造成影响,使得既能保证数据存储成本和数据读取成本均较低,又可以保证数据的准确度。

22、根据第二方面的第一种可能的实现方式,在所述数据读取方法的第二种可能的实现方式中,所述多个序列包括第一序列,所述第一序列包括事件块中的事件数据的时间信息,所述根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块,包括:针对任意一个第一序列,对该第一序列中的每一元素和该元素之前的所有的元素求和,得到第一组和值;将该第一序列中的第一个元素以及所述第一组和值中的每一和值,分别作为该第一序列对应的事件块中的事件数据的时间信息。

23、通过这种方式,针对每一第一序列,都可以处理得到该第一序列对应的事件块中的时间信息,结合该第一序列对应的事件块中的空间信息、事件内容信息,即可得到该第一序列对应的事件块。

24、根据第二方面的第二种可能的实现方式,在所述数据读取方法的第三种可能的实现方式中,所述多个序列还包括第二序列、第三序列、第四序列,所述第二序列包括事件块中的事件数据的第一维度空间信息,所述第三序列包括事件块中的事件数据的第二维度空间信息,所述第四序列包括事件块中的事件数据的事件内容信息,所述根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块,还包括:针对任意一个第二序列或第三序列或第四序列,使用预设的第一函数的反函数对该第二序列或该第三序列或第四序列中的每一元素进行转换,得到转换后的元素;分别对转换后的每一元素和该元素之前的所有的元素求和,得到第二组和值或第三组和值或第四组和值;将转换后的第一个元素以及转换后的第二组和值中的每一和值,分别作为该第二序列对应的事件块中的事件数据的第一维度的空间信息,或将转换后的第一个元素以及转换后的第三组和值中的每一和值,分别作为该第三序列对应的事件块中的事件数据的第二维度的空间信息,或将转换后的第一个元素以及转换后的第四组和值中的每一和值,分别作为该第四序列对应的事件块中的事件数据的事件内容信息。

25、通过这种方式,针对每一第二序列/第三序列/第四序列,都可以处理得到该第二序列/ 第三序列/第四序列对应的事件块中的空间信息/事件内容信息,结合该第二序列/第三序列/ 第四序列对应的事件块中的时间信息,即可得到该第二序列/第三序列/第四序列对应的事件块,使得数据读取方法的应用更为灵活。

26、根据第二方面的第二种可能的实现方式,在所述数据读取方法的第四种可能的实现方式中,所述多个序列还包括第五序列、第六序列,所述第五序列和第六序列包括事件块中的事件数据的空间信息,所述第五序列还包括事件块中的事件数据的事件内容信息,所述根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块,还包括:针对任意一个第五序列,使用预设的第一函数的反函数对该第五序列中的每一元素进行转换,得到转换后的元素;分别对转换后的每一元素和该元素之前的所有的元素求和,得到第五组和值;使用预设的第二函数的反函数,对转换后的第一个元素以及所述第五组和值中的每一和值进行处理,得到每一事件数据的事件内容信息以及该事件数据的第一维度空间信息或第二维度空间信息;针对任意一个第六序列,使用预设的第一函数的反函数对该第六序列中的每一元素进行转换,得到转换后的元素;分别对转换后的每一元素和该元素之前的所有的元素求和,得到第六组和值;将转换后的第一个元素以及转换后的第六组和值中的每一和值,分别作为该第六序列对应的事件块中的事件数据的第二维度空间信息或第一维度空间信息。

27、通过这种方式,针对每一第五序列,都可以处理得到该第五序列对应的事件块中的空间信息和事件内容信息,针对每一第六序列,都可以处理得到该第六序列对应的事件块中的空间信息,结合该第五序列/第六序列对应的事件块中的时间信息,即可得到该第五序列/第六序列对应的事件块,使得数据读取方法的应用更为灵活。

28、根据第二方面的第一种可能的实现方式,在所述数据读取方法的第五种可能的实现方式中,所述数据块包括多个压缩后的数据,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,包括:在所述元数据块对应的压缩方式指示任意压缩后的数据的压缩方式为第一压缩方式时,从该压缩后的数据中读取b位二进制数;根据该b位二进制数的十进制形式确定b的数值,继续从该压缩后的数据中读取b位二进制数;以该b位二进制数的十进制形式作为该序列中的每个元素的数值,得到解压缩后的该序列,其中b和b均为正整数。

29、通过这种方式,可以实现以第一压缩方式压缩的数据的解压,并能够使得解压后的序列与压缩前的序列相同,保证了解压的准确度。

30、根据第二方面的第一种可能的实现方式,在所述数据读取方法的第六种可能的实现方式中,所述数据块包括多个压缩后的数据,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,包括:在所述元数据块对应的压缩方式指示任意压缩后的数据的压缩方式为第二压缩方式时,从该压缩后的数据中读取b位二进制数;根据该b位二进制数的十进制形式确定b的数值;继续从该压缩后的数据中依次读取b位二进制数,直到读取的b位二进制数的个数等于元数据块指示的事件数据数目;以依次读取的b位二进制数的十进制形式分别作为该序列中的每个元素的数值,得到解压缩后的该序列,其中b和b均为正整数。

31、通过这种方式,可以实现以第二压缩方式压缩的数据的解压,并能够使得解压后的序列与压缩前的序列相同,保证了解压的准确度。

32、根据第二方面的第一种可能的实现方式,在所述数据读取方法的第七种可能的实现方式中,所述数据块包括多个压缩后的数据,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,包括:在所述元数据块对应的压缩方式指示任意压缩后的数据的压缩方式为第三压缩方式时,从该压缩后的数据中依次读取两个b位二进制数;根据该两个b位二进制数的十进制形式分别确定b的数值和a的数值;继续从该压缩后的数据中依次读取a位二进制数,直到读取的a位二进制数的个数等于元数据块指示的事件数据数目;以依次读取的a位二进制数分别作为该序列中的每个元素的低a位;继续从该压缩后的数据中读取位宽等于元数据块指示的事件数据数目的二进制数,根据该二进制数的每一位确定序列中的每个元素是否包括高b-a位数据;继续从该压缩后的数据中依次读取b-a位二进制数,直到读取的b-a位二进制数的个数等于确定的包括高b-a 位数据的元素个数;将读取的b-a位二进制数分别作为该序列中的包括高b-a位数据的元素的高b-a位,其中b、b、a均为正整数。

33、通过这种方式,可以实现以第三压缩方式压缩的数据的解压,并能够使得解压后的序列与压缩前的序列相同,保证了解压的准确度。

34、第三方面,本技术的实施例提供了一种数据存储装置,所述装置应用于处理器,所述装置包括:第一获取模块,用于获取事件数据;第一处理模块,用于对所述事件数据进行处理,得到多个数据块和对应的多个元数据块,其中每一数据块包括处理后的一部分事件数据,每一元数据块包括该元数据块对应的数据块中的事件数据的开始时间、结束时间、数目、压缩方式以及数据块的存储地址;第一存储模块,用于将所述多个数据块存储至第一存储区域,将所述多个元数据块存储至第二存储区域。

35、根据第三方面,在所述数据存储装置的第一种可能的实现方式中,所述对所述事件数据进行处理,得到多个数据块和对应的多个元数据块,包括:按照所述事件数据中的时间信息和/或空间信息对所述事件数据进行分块,得到多个事件块;针对每一事件块,对该事件块进行处理得到多个序列,所述多个序列包括该事件块中的事件数据的时间信息、空间信息和事件内容信息,每个序列中的元素数目等于该事件块中的事件数据数目,每个序列中的元素数值均为大于或等于0的整数、且元素数值大于第一阈值的元素个数大于元素数值小于或等于第一阈值的元素个数;针对每一序列,从预设的压缩方式中选择与该序列相适应的压缩方式,并基于选择的压缩方式对该序列进行压缩,得到压缩后的数据;根据每一事件块对应的多个序列得到的多个压缩后的数据,得到一个数据块;根据每一事件块所包括的事件数据中的时间信息、事件数据数目、选择的压缩方式以及数据块的存储地址,得到该一个数据块对应的一个元数据块。

36、根据第三方面的第一种可能的实现方式,在所述数据存储装置的第二种可能的实现方式中,所述多个序列包括第一序列,所述第一序列包括事件块中的事件数据的时间信息,所述针对每一事件块,对该事件块进行处理得到多个序列,包括:按照时间信息的先后顺序对该事件块中的事件数据排序,对每一事件数据的时间信息与前一事件数据的时间信息作差,得到第一组差值;将排序最前的事件数据的时间信息以及所述第一组差值中的每一差值分别作为所述第一序列中的元素,得到所述第一序列。

37、根据第三方面的第二种可能的实现方式,在所述数据存储装置的第三种可能的实现方式中,所述多个序列还包括第二序列、第三序列、第四序列,所述第二序列包括事件块中的事件数据的第一维度空间信息,所述第三序列包括事件块中的事件数据的第二维度空间信息,所述第四序列包括事件块中的事件数据的事件内容信息,所述针对每一事件块,对该事件块进行处理得到多个序列,还包括:对每一事件数据的第一维度空间信息与前一事件数据的第一维度空间信息作差,得到第二组差值;使用预设的第一函数,将排序最前的事件数据的第一维度空间信息以及所述第二组差值中的负数转换为正数;根据转换后的排序最前的事件数据的第一维度空间信息,以及转换后的第二组差值中的每一差值,得到所述第二序列;对每一事件数据的第二维度空间信息与前一事件数据的第二维度空间信息作差,得到第三组差值;使用预设的第一函数,将排序最前的事件数据的第二维度空间信息以及所述第三组差值中的负数转换为正数;根据转换后的排序最前的事件数据的第二维度空间信息,以及转换后的第三组差值中的每一差值,得到所述第三序列;对每一事件数据的事件内容信息与前一事件数据的事件内容信息作差,得到第四组差值;使用预设的第一函数,将排序最前的事件数据的事件内容信息以及所述第四组差值中的负数转换为正数;根据转换后的排序最前的事件数据的事件内容信息,以及转换后的第四组差值中的每一差值,得到所述第四序列。

38、根据第三方面的第二种可能的实现方式,在所述数据存储装置的第四种可能的实现方式中,所述多个序列还包括第五序列、第六序列,所述第五序列和第六序列包括事件块中的事件数据的空间信息,所述第五序列还包括事件块中的事件数据的事件内容信息,所述针对每一事件块,对该事件块进行处理得到多个序列,还包括:使用预设的第二函数,对每一事件数据的事件内容信息以及该事件数据的第一维度空间信息或第二维度空间信息进行处理,得到合成信息;对每一事件数据的合成信息与前一事件数据的合成信息作差,得到第五组差值;使用预设的第一函数,将排序最前的事件数据的合成信息以及所述第五组差值中的负数转换为正数;根据转换后的排序最前的事件数据的合成信息,以及转换后的第五组差值中的每一差值,得到所述第五序列;对每一事件数据的第二维度空间信息与前一事件数据的第二维度空间信息作差,或对每一事件数据的第一维度空间信息与前一事件数据的第一维度空间信息作差,得到第六组差值;使用预设的第一函数,将排序最前的事件数据的第二维度信息或第一维度信息,以及第六组差值中的负数转换为正数;根据转换后的排序最前的事件数据的第二维度信息或第一维度信息,以及转换后的第六组差值中的每一差值,得到所述第六序列。

39、根据第三方面的第一种可能的实现方式,在所述数据存储装置的第五种可能的实现方式中,在序列中的每个元素的数值相同且位宽均为b时,所述预设的压缩方式包括第一压缩方式,所述第一压缩方式下,该序列中的全部元素的数值用一个b位二进制数来记录,b的数值用一个b位二进制数来记录,其中b和b均为正整数。

40、根据第三方面的第一种可能的实现方式,在所述数据存储装置的第六种可能的实现方式中,在序列中元素的最大位宽为b时,所述预设的压缩方式包括第二压缩方式,所述第二压缩方式下,序列中的每个元素的数值分别用一个b位二进制数记录,b的数值用一个b位二进制数来记录,其中b和b均为正整数。

41、根据第三方面的第一种可能的实现方式,在所述数据存储装置的第七种可能的实现方式中,在序列中至少有两个元素的位宽不同,且序列中元素的最大位宽为b时,所述预设的压缩方式包括第三压缩方式,所述第三压缩方式下,设置一个小于b的a,b和a的数值分别用一个b位二进制数记录,序列中的每个元素的二进制形式的低a位数据分别用一个位宽等于 a的二进制数记录,序列中的元素的二进制形式的高b-a位数据用一个位宽等于b-a的二进制数记录,每个元素是否包括高b-a位数据用一个位宽等于序列中的元素个数的二进制数来记录,其中b、b、a均为正整数。

42、第四方面,本技术的实施例提供了一种数据读取装置,所述装置应用于处理器,所述装置包括:第二获取模块,用于从第二存储区域获取多个元数据块,所述多个元数据块对应多个数据块,其中每一数据块包括处理后的一部分事件数据,每一元数据块包括该元数据块对应的数据块中的事件数据的开始时间、结束时间、数目、压缩方式以及数据块的存储地址;第一筛选模块,用于在所述多个元数据块中,找到开始时间到结束时间之间的任意时间点在目标时间区间内的至少一个元数据块;第二处理模块,用于根据找到的至少一个元数据块中的存储地址,从第一存储区域处获取找到的至少一个元数据块对应的至少一个数据块,并根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行处理,得到待读取的事件数据。

43、根据第四方面,在所述数据读取装置的第一种可能的实现方式中,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行处理,得到待读取的事件数据,包括:根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,所述多个序列包括该数据块对应的一个事件块中的事件数据的时间信息、空间信息和事件内容信息,每个序列中的元素数目等于该事件块中的事件数据数目,每个序列中的元素数值均为大于或等于0的整数、且元素数值大于第一阈值的元素个数大于元素数值小于或等于第一阈值的元素个数;根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块;以全部的事件块包括的事件数据中,时间信息在目标时间区间内的事件数据,作为读取到的事件数据。

44、根据第四方面的第一种可能的实现方式,在所述数据读取装置的第二种可能的实现方式中,所述多个序列包括第一序列,所述第一序列包括事件块中的事件数据的时间信息,所述根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块,包括:针对任意一个第一序列,对该第一序列中的每一元素和该元素之前的所有的元素求和,得到第一组和值;将该第一序列中的第一个元素以及所述第一组和值中的每一和值,分别作为该第一序列对应的事件块中的事件数据的时间信息。

45、根据第四方面的第二种可能的实现方式,在所述数据读取装置的第三种可能的实现方式中,所述多个序列还包括第二序列、第三序列、第四序列,所述第二序列包括事件块中的事件数据的第一维度空间信息,所述第三序列包括事件块中的事件数据的第二维度空间信息,所述第四序列包括事件块中的事件数据的事件内容信息,所述根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块,还包括:针对任意一个第二序列或第三序列或第四序列,使用预设的第一函数的反函数对该第二序列或该第三序列或第四序列中的每一元素进行转换,得到转换后的元素;分别对转换后的每一元素和该元素之前的所有的元素求和,得到第二组和值或第三组和值或第四组和值;将转换后的第一个元素以及转换后的第二组和值中的每一和值,分别作为该第二序列对应的事件块中的事件数据的第一维度的空间信息,或将转换后的第一个元素以及转换后的第三组和值中的每一和值,分别作为该第三序列对应的事件块中的事件数据的第二维度的空间信息,或将转换后的第一个元素以及转换后的第四组和值中的每一和值,分别作为该第四序列对应的事件块中的事件数据的事件内容信息。

46、根据第四方面的第二种可能的实现方式,在所述数据读取装置的第四种可能的实现方式中,所述多个序列还包括第五序列、第六序列,所述第五序列和第六序列包括事件块中的事件数据的空间信息,所述第五序列还包括事件块中的事件数据的事件内容信息,所述根据对每一数据块进行解压缩处理得到的解压缩后的多个序列,处理得到每一数据块对应的一个事件块,还包括:针对任意一个第五序列,使用预设的第一函数的反函数对该第五序列中的每一元素进行转换,得到转换后的元素;分别对转换后的每一元素和该元素之前的所有的元素求和,得到第五组和值;使用预设的第二函数的反函数,对转换后的第一个元素以及所述第五组和值中的每一和值进行处理,得到每一事件数据的事件内容信息以及该事件数据的第一维度空间信息或第二维度空间信息;针对任意一个第六序列,使用预设的第一函数的反函数对该第六序列中的每一元素进行转换,得到转换后的元素;分别对转换后的每一元素和该元素之前的所有的元素求和,得到第六组和值;将转换后的第一个元素以及转换后的第六组和值中的每一和值,分别作为该第六序列对应的事件块中的事件数据的第二维度空间信息或第一维度空间信息。

47、根据第四方面的第一种可能的实现方式,在所述数据读取装置的第五种可能的实现方式中,所述数据块包括多个压缩后的数据,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,包括:在所述元数据块对应的压缩方式指示任意压缩后的数据的压缩方式为第一压缩方式时,从该压缩后的数据中读取b位二进制数;根据该b位二进制数的十进制形式确定b的数值,继续从该压缩后的数据中读取b位二进制数;以该b位二进制数的十进制形式作为该序列中的每个元素的数值,得到解压缩后的该序列,其中b和b均为正整数。

48、根据第四方面的第一种可能的实现方式,在所述数据读取装置的第六种可能的实现方式中,所述数据块包括多个压缩后的数据,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,包括:在所述元数据块对应的压缩方式指示任意压缩后的数据的压缩方式为第二压缩方式时,从该压缩后的数据中读取b位二进制数;根据该b位二进制数的十进制形式确定b的数值;继续从该压缩后的数据中依次读取b位二进制数,直到读取的b位二进制数的个数等于元数据块指示的事件数据数目;以依次读取的b位二进制数的十进制形式分别作为该序列中的每个元素的数值,得到解压缩后的该序列,其中b和b均为正整数。

49、根据第四方面的第一种可能的实现方式,在所述数据读取装置的第七种可能的实现方式中,所述数据块包括多个压缩后的数据,所述根据找到的每一数据块对应的元数据块中的压缩方式,对该数据块进行解压缩处理,得到解压缩后的多个序列,包括:在所述元数据块对应的压缩方式指示任意压缩后的数据的压缩方式为第三压缩方式时,从该压缩后的数据中依次读取两个b位二进制数;根据该两个b位二进制数的十进制形式分别确定b的数值和a的数值;继续从该压缩后的数据中依次读取a位二进制数,直到读取的a位二进制数的个数等于元数据块指示的事件数据数目;以依次读取的a位二进制数分别作为该序列中的每个元素的低a位;继续从该压缩后的数据中读取位宽等于元数据块指示的事件数据数目的二进制数,根据该二进制数的每一位确定序列中的每个元素是否包括高b-a位数据;继续从该压缩后的数据中依次读取b-a位二进制数,直到读取的b-a位二进制数的个数等于确定的包括高b-a 位数据的元素个数;将读取的b-a位二进制数分别作为该序列中的包括高b-a位数据的元素的高b-a位,其中b、b、a均为正整数。

50、第五方面,本技术的实施例提供了一种数据存储装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的数据存储方法。

51、第六方面,本技术的实施例提供了一种数据读取装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的数据读取方法。

52、第七方面,本技术的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的数据存储方法,或者,实现上述第二方面或者第二方面的多种可能的实现方式中的一种或几种的数据读取方法。

53、第八方面,本技术的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的数据存储方法,或者,执行上述第二方面或者第二方面的多种可能的实现方式中的一种或几种的数据读取方法。

54、本技术的这些和其他方面在以下(多个)实施例的描述中会更加简明易懂。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1