一种数据记录存储方法

文档序号:9326618阅读:565来源:国知局
一种数据记录存储方法
【技术领域】
[0001]本发明涉及实时数据采集存储技术领域,尤其涉及一种适用于实时数据存储的数据记录存储方法。
【背景技术】
[0002]目前在实时数据采集存储中,对数据包的记录存储通常是按原内容顺序进行完全存储,如当依次接收到数据包1、数据包2、数据包3……,则最终依次存储为数据包1、数据包2、数据包3……,且各数据包即为完全的原始数据包。实时数据采集过程中,数据包之间往往存在大量的重复内容,数据包之间存在较大的相关性,若采用上述记录存储方式则会导致大量相同数据内容的记录,从而消耗过多的存储器空间,造成存储空间的浪费。
[0003]目前已有从业者提出采用重复数据判断以去除重复数据的方案,来解决相同数据重复记录的问题,但该类方案一方面重复数据的判断以及存储过程较为复杂,增加了数据存储的复杂度,影响存储效率且不易于实现数据还原;另一方面,该类方案通常是基于数据本身的重复判断,相同数据可能所表示的含义完全不同,而在实时数据采集中,数据的含义对应所需要采集的重要信息内容,因而该类方案并不适用于实时数据的采集存储。

【发明内容】

[0004]本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一种适用于实时数据采集存储的数据记录存储方法,能够减少相同内容数据的记录存储,且存储实现简单、占用存储空间少、存储效率高以及易实现数据还原。
[0005]为解决上述技术问题,本发明提出的技术方案为:
一种数据记录存储方法,步骤包括:
1)接收到待存储数据包时,为待存储数据包中表示不同含义的各项数据内容分配连续的编码;
2)判断待存储数据包是否为接收到的首个数据包,如果是,将待存储数据包中各项数据内容与对应的编码依次进行记录存储;如果不是,转入执行步骤3);
3)将待存储数据包与接收到的上一个数据包中各项数据内容按照对应的编码依次进行比较,并根据比较结果进行记录存储;其中每一项进行比较时,若比较结果在预设范围内,则不进行记录存储;否则记录存储对应的数据内容以及编码。
[0006]作为本发明的进一步改进,所述步骤I)中为待存储数据包中表示不同含义的各项数据内容分配连续的编码的具体步骤为:
1.1)将待存储数据包按照所表示的不同含义划分为多项数据内容;
1.2)按照预设的固定编码格式进行连续编码,并对应分配给待存储数据包的各项数据内容。
[0007]作为本发明的进一步改进,所述步骤2)中各项数据内容与编码对应进行记录存储的具体步骤为: 2.1)设置并存储记录开始标识、对应首个记录包的序号;
2.2)获取第一个编码以及待存储数据包的第一项数据内容,依次存储所述第一个编码、第一项数据内容;
2.3)获取下一个编码以及待存储数据包的下一项数据内容,依次存储获取得到的编码以及数据内容,返回执行步骤2.3),直至完成待存储数据包中所有数据内容的记录存储;
2.4)设置并存储记录结束标识。
[0008]作为本发明的进一步改进,所述步骤3)的具体步骤为:
3.1)设置并存储记录开始标识、对应当前记录包的序号;
3.2)分别取待存储数据包、上一个接收到的数据包中第一个编码所对应的数据内容,并计算取出的两项数据内容的差值;
3.3)若所述两项数据内容的差值大于预设阀值,则将当前编码以及待存储数据包中对应项的数据内容依次进行存储;
3.4)分别取待存储数据包、上一个接收到的数据包中下一个编码所对应的数据内容,并计算取出的两项数据内容的差值,返回执行步骤3.3);直至完成所有项数据内容的比较,完成待存储数据包的记录存储;
3.5)设置并存储记录结束标识。
[0009]作为本发明的进一步改进,所述步骤3)中还包括调整所述预设范围以调整所需要记录存储的数据内容的步骤。
[0010]作为本发明的进一步改进,还包括数据还原步骤4),具体步骤为:
4.1)定位首个数据包的记录存储位置进行还原,依次获取首个数据包记录存储的各项数据内容,还原得到首个数据包内容;
4.2)定位下一个数据包的记录存储位置进行还原,并根据编码依次获取记录存储的各项数据内容,若其中存在不连续的编码,则从上一个数据包中获取未记录的编码所对应的数据内容;返回执行步骤4.2),直至完成所有数据包的还原。
[0011]作为本发明的进一步改进,所述步骤4.2)中定位下一个数据包的记录存储位置进行还原的具体步骤为:
4.21)定位下一个数据包的位置并作为当前数据包进行还原,获取当前数据包记录存储的第一个编码并判断是否为所述固定编码格式中的首个编码,如果是,获取对应的数据内容;否则判断获取的第一个编码与所述首个编码之间的各个未记录编码,并从上一个数据包的各项内容中依次获取所述各个未记录编码所对应的数据内容;
4.22)获取记录存储的下一个编码,并按照所述固定编码格式判断与上一个编码是否连续,如果是,获取对应的数据内容;否则判断与上一个编码之间的各个未记录编码,并从上一个数据包的各项内容中依次获取所述各个未记录编码所对应的数据内容;返回执行步骤4.22 ),直至完成所有数据内容的还原,还原得到当前数据包内容。
[0012]与现有技术相比,本发明的优点在于:
I)本发明在数据包存储时,通过判断数据包与上一个数据包中各项数据内容的相似性比较来确定是否进行存储,若相似性在一定范围内则不进行存储,而只存储与上一个数据包相比产生一定变化的数据内容,从而可以有效的减少重复数据的存储,减少所需占用的存储器空间;同时通过相邻数据包之间的相同数据处理,可以有效记录数据包之间的变化过程;
2)本发明将待存储数据包按照数据内容之间的相似性,确定不进行记录存储的数据,可以有效减少含义相同的重复数据记录存储,同时保证数据内容存储的完整性,能够适用于实时数据采集存储中;
3)本发明在接收到待存储数据包时首先对不同数据内容进行编码,由不同编码标识数据包中各项数据内容,由此可以方便的结合编码来判断前后数据包之间的相似性,以确定需要存储的数据;
4)本发明结合编码从记录存储的数据中,可以方便的确定未存储的数据部分,同时可以方便的从上一个还原出的数据包中查找到该数据部分,实现快速、准确的数据还原;
5)本发明进一步通过调整判断所需要记录存储的预设阀值,来调整所需要记录的数据,从而可以根据实际需求调整记录数据的变化大小。
【附图说明】
[0013]图1是本实施例数据记录存储方法的实现流程示意图。
[0014]图2是本实施例中数据包编码方式的原理示意图。
[0015]图3是本实施例中首个数据包的记录存储原理示意图。
[0016]图4是本发明具体实施例中非首个数据包的记录存储原理示意图。
【具体实施方式】
[0017]以下结合说明书附图和具体优选的实施例对本发明作进一步描述,但并不因此而限制本发明的保护范围。
[0018]如图1所示,本实施例数据记录存储方法,步骤包括:
1)接收到待存储数据包时,为待存储数据包中表示不同含义的各项数据内容分配连续的编码;
2)判断待存储数据包是否为接收到的首个数据包,如果是,将待存储数据包中各项数据内容与对应的编码依次进行记录存储;如果不是,转入执行步骤3);
3)将待存储数据包与接收到的上一个数据包中各项数据内容按照对应的编码依次进行比较,并根据比较结果进行记录存储;其中每一项进行比较时,若比较结果在预设范围内,则不进行记录存储;否则记录存储对应的数据内容以及编码。
[0019]本实施例在数据包存储时,通过判断数据包中各项数据内容与上一个数据包的相似性比较来确定是否进行存储,若相似性在一定范围内则不进行存储,而只存储与上一个数据包相比产生一定变化的内容,从而可以有效的减少重复数据的存储,减少所需占用的存储器空间;同时通过相邻数据包之间的相同数据处理,可以有效记录数据包之间的变化过程。
[0020]本实施例中,步骤I)中为待存储数据包中表示不同含义的各项数据内容分配连续的编码的具体步骤为:
1.1)将待存储数据包按照所表示的不同含义划分为多项数据内容;
1.2)按照预设的固定编码格式进行连续编码,并对应分配给待存储数据包的各项数据内容。[0021 ] 本实施例将待存储数据包按照数据内容所对应的含义进行划分,如速度、位移等,根据相同数据内容之间的相似性来确定是否为相同数据,可以减少含义相同的重复数据的记录存储,同时保证数据内容存储的完整性,因而能够有效适用于实时数据采集存储中。
[0022]本实施例中,对于接收到的每个待存储数据包按照统一编码格式均首先分配编码,以标记数据包中各项不同的数据内容,相同内容采用相同的编码。如图2所示,本实施例按照递增的数字编码方式进行编码,在接收到待存储的数据包时,为数据包中每项数据内容对应分配一个数字编码,从而通过编码可以确定数据包中对应的数据内容。本实施例通过对不同数据内容进行编码,由不同编码标识数据包中各项数据内容,由此可以方便的结合编码来判断前后数据包之间的相似性,以确定需要存储的数据,同时由编码与数据内容之间的对应关系,也可以方便的确定未存储的数据部分,以便于实现数据还原。
[0023]本实施例中,当接收到首个数据包时,存储所有的数据内容,同时将各项存储内容按照与编码对应的方式进行存储。步骤2)中首个数据包存储时,各项数据内容与编码对应进行记录存储的具体步骤为:
2.1)设置并存储记录开始标识、对应首个记录包的序号;
2.2)获取第一个编码以及待存储数据包的第一项数据内容,依次存储所述
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1