一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据校验方法、装置、计算机设备和存储介质与流程

2022-02-22 18:12:11 来源:中国专利 TAG:


1.本发明涉及计算机技术领域,尤其涉及一种数据校验方法、装置、计算机设备和存储介质。


背景技术:

2.现有的网点的数据交互方法存在如下缺点,时效较低,通过每日报表的形式提供数据,无法精准反映出快件业务实时动态变化。安全级别较低,通过无加密的方式进行数据交互,容易出现数据泄露的风险,且白名单发送存在接收方错误情况,没有校验功能,没有校验的数据导致系统运行异常。


技术实现要素:

3.有鉴于此,有必要针对现有技术在网点数据传输中缺乏数据校验的问题,提供一种数据校验方法、装置、计算机设备和存储介质。
4.一种数据校验方法,所述数据校验方法,包括以下步骤:维护一个校验列表,所述校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值;对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算所述数据段的校验值;将所述校验值存储在所述校验列表中的一个条目中;将所述数据段存储在所述缓冲存储器中;将数据包输出到所述缓冲存储器,根据所述校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值;使用所述校验值对需要读取的数据包进行校验;在校验的结果为校验通过的情况下,根据数据读取指令将所述需要读取的数据包复制到目标地址。
5.在其中一个实施例中,所述维护一个校验列表,包括:
6.根据不同省份开通白名单网点,对不同省份数据进行存储;
7.数据回传时根据存储的数据判断是否满足相对应的省份编码;
8.若满足,则正常上传至所述校验列表,若不满足,则不上传至所述校验列表。
9.在其中一个实施例中,所述将所述数据段存储在所述缓冲存储器中,包括:
10.构建数据包输出到缓冲存储器;
11.根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值。
12.在其中一个实施例中,所述根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值,包括:
13.从所述校验列表中的相应条目中检索所述数据包中每个数据段的校验值;
14.根据检索到的校验值计算所述数据包的校验值。
15.在其中一个实施例中,所述根据检索到的校验值计算所述数据包的校验值,包括:
16.从所述校验列表中的相应条目中检索该分组中的每个完整数据段的校验值;
17.对于所述数据包中的每个数据段片段,计算所述数据段片段中数据的校验值;
18.确定所述数据包中所有数据的校验值,作为检索和计算的校验值的函数。
19.在其中一个实施例中,数据的传输通过非对称式加密方式进行。
20.一种数据校验装置,所述数据校验装置包括:
21.维护模块,用于维护一个校验列表,所述校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值;
22.计算模块,用于对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算所述数据段的校验值;
23.第一存储模块,用于将所述校验值存储在所述校验列表中的一个条目中;
24.第二存储模块,用于将所述数据段存储在所述缓冲存储器中;
25.输出模块,用于将数据包输出到所述缓冲存储器,根据所述校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值;
26.校验模块,用于使用所述校验值对需要读取的数据包进行校验;
27.读取复制模块,用于在校验的结果为校验通过的情况下,根据数据读取指令将所述需要读取的数据包复制到目标地址。
28.在其中一个实施例中,所述第二存储模块还包括:
29.构建子模块,用于构建数据包输出到缓冲存储器;
30.提供子模块,用于根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值。
31.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行上述数据校验方法的步骤。
32.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行上述数据校验方法的步骤。
33.上述数据校验方法、装置、计算机设备和存储介质,维护一个校验列表,所述校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值,对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算所述数据段的校验值,将所述校验值存储在所述校验列表中的一个条目中,将所述数据段存储在所述缓冲存储器中,将数据包输出到所述缓冲存储器,根据所述校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值,使用所述校验值对需要读取的数据包进行校验,在校验的结果为校验通过的情况下,根据数据读取指令将所述需要读取的数据包复制到目标地址。本发明采用上述技术方案后,提高数据校验的灵活性,安全性和网点数据校验效率。
附图说明
34.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。
35.图1为本发明实施例中数据校验方法的一个实施例示意图;
36.图2为本发明实施例中数据校验方法的一个实施例示意图;
37.图3为本发明实施例中数据校验装置的一个实施例示意图;
38.图4为本发明实施例中第二存储模块的一个实施例示意图;
39.图5为本发明实施例中数据校验计算机设备的一个实施例示意图。
具体实施方式
40.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
41.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
42.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
43.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、
“”
和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
44.作为一个较好的实施例,如图1所示,提出了一种数据校验方法,该数据校验方法包括如下步骤:
45.步骤s101,维护一个校验列表,校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值;
46.该校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储在缓冲存储器中的相应数据段的校验值。校验列表具有相同的唯一标识列,且至少具有一个数据类型相同的校验列时,即使两者的数据来源不同,也可以进行数据一致性校验,唯一标识列可以唯一标识两表的数据,相同的唯一标识列保证了两者每一元素的排列顺序,校验列为需要检查的字段,查询条件可根据需要进行设置,至少一个可比较的校验列保证了两者进行数据校验时的校验内容,适用于不完全一致的数据校验场景,实现一个源表对应一个目标表或多个目标表时对指定数据的校验。
47.步骤s102,对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算数据段的校验值;
48.对于从存储设备检索的每个数据段,使用校验计算该数据段的校和值,在对应于该数据段的校验列表中提供一个条目,将校验值存储在校验列表中的选定条目中,并将该数据段存储在缓冲存储器中。计算校验的步骤还包括在将数据段传送到缓冲存储器时使用校验计算该数据段的校验值。
49.步骤s103,将校验值存储在校验列表中的一个条目中;
50.为了将数据包输出到缓冲存储器,可以基于校验列表中存储的一个或多个校验值来计算每个包中的数据的校验值。为每个数据包提供校验值包括根据存储在校验列表中的至少一个校验值来计算该数据包的校验值。一组数据包中的每个数据包包括一个或多个数
据段,为该组数据包中的每个数据包提供校验值的步骤还包括从校验表中的相应条目中检索该数据包中每个数据段的校验值,并根据检索到的校验值计算该数据包的校验值。
51.步骤s104,将数据段存储在缓冲存储器中;
52.从pc接收的数据段存储在缓冲存储器中,然后才能传输到存储卡。
53.步骤s105,将数据包输出到缓冲存储器,根据校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值;
54.一组数据包中的每个数据包包括一个或多个完整的数据段,一个或多个数据段中的每一个的片段。为每个数据包提供校验值还包括从校验和列表中的相应条目中检索该数据包中的一个或多个完整数据段中的每一个的校验值,计算作为检索到的校验值的函数的中间校验值,对于该数据包中数据段的每个片段,计算该数据段片段中数据的校验值,并且使用一个或多个数据段片段的校验值来调整中间校验值以提供该分组中的所有数据的校验值。
55.步骤s106,使用校验值对需要读取的数据包进行校验;
56.使用校验值对需要读取的数据包进行校验,在校验的结果为校验通过的情况下,根据数据读取指令将需要读取的数据包复制到目标地址。
57.步骤s107,在校验的结果为校验通过的情况下,根据数据读取指令将需要读取的数据包复制到目标地址。
58.接收数据读取指令,根据数据读取指令,获取需要读取的数据包的目标数据头和目标数据索引值,在数据页的属性为有效的数据包中查找需要读取的数据包,判断当前数据包的数据头是否与目标数据头一致,如果一致,判断当前数据包的数据索引值是否与目标数据索引值一致,如果一致,从查找到的需要读取的数据包中获取校验值,否则,移动至下一数据包起始地址。如校验不通过,则不进行读取复制操作。
59.在一个实施例中,如图2所示,维护一个校验列表,包括:
60.步骤s201,根据不同省份开通白名单网点,对不同省份数据进行存储;
61.根据不同省份开通白名单网点,对不同省份数据进行存储。例如,判断是否为江苏和宁夏的数据,将江苏和宁夏2个地区数据存入缓存,判断数据中网点编码是否对应缓存中的江苏和宁夏。通过需根据省份开通白名单功能,调取ydserver中province表中江苏、宁夏二省数据进行存储;数据回传时,根据存储缓存进行判断是否满足二省编码,运单下发网点默认白名单,读取运单下发列表。
62.步骤s202,数据回传时根据存储的数据判断是否满足相对应的省份编码;
63.判断是否为运单下发网点编码。所谓快递末端的网点一般是由快递员、拉货司机、客服、财务、网点负责人组成的一个团队,属于快递末端。
64.步骤s203,若满足,则正常上传至校验列表,若不满足,则不上传至校验列表。
65.判断是否为二层白名单有效网点数据。数据回传时,根据存储缓存进行判断是否满足二省编码,运单下发网点默认白名单,读取运单下发列表,业务自行配置二层白名单通过队列同步大前置,对接共配系统队列,获取二层白名单编码进行存储,数据回传时,根据存储缓存进行判断是否满足二层编码。
66.在一个实施例中,将数据段存储在缓冲存储器中,包括:
67.步骤s301,构建数据包输出到缓冲存储器;
68.将数据段打包,即重新分块到分组中并且计算分组的校验。每个包的构建过程包括一个循环,该循环从初始化包校验开始,并确定缓冲存储器区域中的下一个数据块以包括在数据包中。
69.步骤s302,根据存储在校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值。
70.每个数据块可以包括一个或多个数据段,一个或多个完整数据段的一部分。例如,每个数据块可以是一个完整的数据段,或数据段片段。如果下一个数据块将被包括在分组中,则该过程确定校验是否已经计算了该数据块的校验和。如果是,则确定数据块是否是完整的数据段。如果是,则从校验表中检索数据段的校验值并将其添加到数据包校验。
71.在一个实施例中,根据存储在校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值,包括:
72.步骤s401,从校验列表中的相应条目中检索数据包中每个数据段的校验值;
73.一组数据包中的每个数据包包括至少一个完整的数据段,一个或多个数据段中的每一个片段。
74.步骤s402,根据检索到的校验值计算数据包的校验值。
75.一组数据包中的每个数据包包括至少一个完整的数据段,一个或多个数据段中的每一个片段。为该组数据包中的每个数据包中的数据提供校验值还包括从校验列表中的相应条目中检索该数据包中至少一个完整数据段的校验值,对于分组中的一个或多个数据段的每一个片段,该数据段片段是其一部分的数据段相对应的校验列表中条目的检索校验值,并计算互补数据的校验值,该数据段计算作为检索到的校验值函数的中间校验值。
76.在一个实施例中,根据检索到的校验值计算数据包的校验值,包括:
77.步骤s501,从校验列表中的相应条目中检索该分组中的每个完整数据段的校验值;
78.尚未确定数据块的校验值,计算数据块的校验和,其中数据段可以包括完整的数据段或数据段片段。然后将该校验值添加到分组校验值,确定数据块不是完整的数据段,而是数据段片段,则过程确定数据段片段的大小。小于或等于完整数据段的大小的一半,数据段片段是该完整数据段的一部分。如果是,则计算该数据段片段的校验和,并且缓存数据段片段的计算的校验值。该过程然后将针对数据段片段计算的校验值添加到分组校验。
79.步骤s502,对于数据包中的每个数据段片段,计算数据段片段中数据的校验值;
80.确定数据段片段的大小大于或等于,完整的数据段的一半大小,则计算用于互补片段的校验值的数据段片段。然后从校验表中检索数据段片段是其一部分的数据段的校验值,并确定数据段片段的校验值。
81.步骤s503,确定数据包中所有数据的校验值,作为检索和计算的校验值的函数。
82.作为检索到的数据段校验和计算互补片段校验函数。然后缓存数据段片段校验和,将其添加到分组校验和。如果没有其他数据块被包括在分组中,则分组校验和被发送到网络中的分组请求。
83.在一个实施例中,数据的传输通过非对称式加密方式进行。
84.数据传输时,根据存储缓存进行判断是否满足二层编码,数据的传输使用的是对称加密方式进行,确保数据传输的安全性,使用非对称加密进行验签工作,确保数据交互名
单身份的准确性,时效性高,安全级别更高。
85.在一个实施例中,如图3所示,提供了一种数据校验装置,该数据校验装置包括:
86.维护模块,用于维护一个校验列表,所述校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值;
87.计算模块,用于对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算所述数据段的校验值;
88.第一存储模块,用于将所述校验值存储在所述校验列表中的一个条目中;
89.第二存储模块,用于将所述数据段存储在所述缓冲存储器中;
90.输出模块,用于将数据包输出到所述缓冲存储器,根据所述校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值;
91.校验模块,用于使用所述校验值对需要读取的数据包进行校验;
92.读取复制模块,用于在校验的结果为校验通过的情况下,根据数据读取指令将所述需要读取的数据包复制到目标地址。
93.在一个实施例中,如图4所示,所述第二存储模块还包括:
94.构建子模块,用于构建数据包输出到缓冲存储器;
95.提供子模块,用于根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值。
96.在一个实施例中,提出了一种计算机设备,如图5所示,该数据校验计算机设备600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,cpu)610(例如,一个或一个以上处理器)和存储器620,一个或一个以上存储应用程序633或数据632的存储介质630(例如一个或一个以上海量存储设备)。其中,存储器620和存储介质630可以是短暂存储或持久存储。存储在存储介质630的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据校验计算机设备600中的一系列指令操作。更进一步地,处理器610可以设置为与存储介质630通信,在数据校验计算机设备600上执行存储介质630中的一系列指令操作。数据校验计算机设备600还可以包括一个或一个以上电源640,一个或一个以上有线或无线网络接口650,一个或一个以上输入输出接口660,和/或,一个或一个以上操作系统631,例如windows serve,mac os x,unix,linux,freebsd等等。本领域技术人员可以理解,图5示出的数据校验计算机设备结构并不构成对数据校验计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。该数据校验计算机设备包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行所述计算机可读指令时实现以下步骤:维护一个校验列表,所述校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值;对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算所述数据段的校验值;将所述校验值存储在所述校验列表中的一个条目中;将所述数据段存储在所述缓冲存储器中;将数据包输出到所述缓冲存储器,根据所述校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值;使用所述校验值对需要读取的数据包进行校验;在校验的结果为校验通过的情况下,根据数据读取指令将所述需要读取的数据包复制到目标地址。
97.在一个实施例中,所述维护一个校验列表,包括:
98.根据不同省份开通白名单网点,对不同省份数据进行存储;
99.数据回传时根据存储的数据判断是否满足相对应的省份编码;
100.若满足,则正常上传至所述校验列表,若不满足,则不上传至所述校验列表。
101.在一个实施例中,所述将所述数据段存储在所述缓冲存储器中,包括:
102.构建数据包输出到缓冲存储器;
103.根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值。
104.在一个实施例中,所述根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值,包括:
105.从所述校验列表中的相应条目中检索所述数据包中每个数据段的校验值;
106.根据检索到的校验值计算所述数据包的校验值。
107.在一个实施例中,所述根据检索到的校验值计算所述数据包的校验值,包括:
108.从所述校验列表中的相应条目中检索该分组中的每个完整数据段的校验值;
109.对于所述数据包中的每个数据段片段,计算所述数据段片段中数据的校验值;
110.确定所述数据包中所有数据的校验值,作为检索和计算的校验值的函数。
111.在一个实施例中,数据的传输通过非对称式加密方式进行。
112.在一个实施例中,提出了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:维护一个校验列表,所述校验列表包括与存储在缓冲存储器中的数据段对应的多个条目,每个条目用于存储缓冲存储器中的相应数据段的校验值;对于从存储设备检索的每个数据段,使用用于执行校验功能的校验循环计算所述数据段的校验值;将所述校验值存储在所述校验列表中的一个条目中;将所述数据段存储在所述缓冲存储器中;将数据包输出到所述缓冲存储器,根据所述校验列表中存储的一个或多个校验值计算每个数据包中的数据的校验值;使用所述校验值对需要读取的数据包进行校验;在校验的结果为校验通过的情况下,根据数据读取指令将所述需要读取的数据包复制到目标地址。
113.在一个实施例中,所述维护一个校验列表,包括:
114.根据不同省份开通白名单网点,对不同省份数据进行存储;
115.数据回传时根据存储的数据判断是否满足相对应的省份编码;
116.若满足,则正常上传至所述校验列表,若不满足,则不上传至所述校验列表。
117.在一个实施例中,所述将所述数据段存储在所述缓冲存储器中,包括:
118.构建数据包输出到缓冲存储器;
119.根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值。
120.在一个实施例中,所述根据存储在所述校验列表中的一个或多个校验值,为每个数据包中的数据提供一个校验值,包括:
121.从所述校验列表中的相应条目中检索所述数据包中每个数据段的校验值;
122.根据检索到的校验值计算所述数据包的校验值。
123.在一个实施例中,所述根据检索到的校验值计算所述数据包的校验值,包括:
124.从所述校验列表中的相应条目中检索该分组中的每个完整数据段的校验值;
125.对于所述数据包中的每个数据段片段,计算所述数据段片段中数据的校验值;
126.确定所述数据包中所有数据的校验值,作为检索和计算的校验值的函数。
127.在一个实施例中,数据的传输通过非对称式加密方式进行。
128.本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(rom,read only memory)、随机存取存储器(ram,random access memory)、磁盘或光盘等。
129.以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
130.以上所述实施例仅表达了本发明一些示例性实施例,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献