一种异常数据源的确定方法、存储介质及电子设备与流程

未命名 08-22 阅读:119 评论:0


1.本发明涉及数据处理领域,特别是涉及一种异常数据源的确定方法、存储介质及电子设备。


背景技术:

2.目前在确定异常数据源时,通常会在测试时间段的结束时间或测试时间段之后,根据测试时间段内从数据源中获取数据的失败率确定该数据源是否为异常数据源,若测试时间段内从该数据源中获取数据的失败率较高,则该数据源为异常数据源。其中,为了尽量保证数据源在异常状态持续较短时间后便可以被确定为异常数据源,一般会采用时长较短的测试时间段。
3.但是,基于网络波动等情况的影响,正常数据源在较短的时间内也存在从其中获取数据的失败率较高的问题,因此根据测试时间段内从数据源中获取数据的失败率较高而将数据源确定为异常数据源是准确性较低的,即确定异常数据源的准确性较低。


技术实现要素:

4.针对上述技术问题,本发明采用的技术方案为:
5.根据本发明的一方面,提供了一种异常数据源的确定方法,该确定方法应用于服务器;服务器连接有目标数据源,且服务器通过服务器的若干数据接口与目标数据源连接;服务器用于通过每一数据接口向目标数据源发送对应的若干数据获取请求;目标数据源被配置为,响应于接收到每一数据获取请求,通过对应的数据接口向服务器返回数据获取请求对应的已获取数据或目标失败标识;
6.该确定方法包括以下步骤:
7.s100,响应于达到第一时间mom1,获取目标时间mom0=mom1,并进入步骤s200。
8.s200,获取目标数据源对应的目标失败标识列表bs=(bs1,bs2,...,bsi,...,bsn),bsi=(bs
i1
,bs
i2
,...,bs
ij
,...,bs
im(i)
),i=1,2,...,n,j=1,2,...,m(i);其中,bsi为第i个数据接口对应的目标失败标识组,n为数据接口的数量;bs
ij
为目标数据源在mom2与mom1之间通过第i个数据接口向服务器返回的第j个目标失败标识,mom2为第二时间,mom2<mom1;m(i)为目标数据源在mom2与mom1之间通过第i个数据接口向服务器返回的目标失败标识的数量。
9.s300,根据bs,获取目标数据源的第一可靠性参数par=∑
i=1n
[wi*s(i)/v(i)];wi为第i个数据接口对应的权重,s(i)为bsi中与任一目标预设失败标识相同的目标失败标识的数量,v(i)为服务器在mom2与mom1之间通过第i个数据接口向目标数据源发送的数据获取请求的数量。
[0010]
s400,确定par是否大于或等于pre1;若是,则将目标数据源确定为异常数据源;否则,若mom1=mom0,则进入步骤s500;pre1为第一目标阈值。
[0011]
s500,确定par是否大于或等于pre2;若是,则进入步骤s600;pre2为第二目标阈
值,pre2<pre1。
[0012]
s600,响应于达到第三时间mom3,将mom1更新为mom3,将pre1更新为γ*pre1,并进入步骤s200;mom3>mom0,γ为缩小参数,γ={[(mom
0-mom2)/(mom
3-mom2)]*(v1/v2)*h}^(1/3);v1为服务器在mom2与mom0之间向目标数据源发送的数据获取请求的数量,v1=∑
i=1n
v(i);v2为服务器在mom2与mom3之间向目标数据源发送的数据获取请求的数量;h为影响系数,若dur
ave
≤dur0,则h=(dur
0-dur
ave
)/dur0,若dur
ave
>dur0,则h=0;dur0为预设响应时长;dur
ave
为参考响应时长,dur
ave
=∑
l=1v(i)
dur
l
,dur
l
为服务器在mom2与mom3之间向目标数据源发送的第l个数据获取请求的时间与服务器接收到数据获取请求对应的已获取数据或目标失败标识的时间之差。
[0013]
根据本发明的另一方面,还提供了一种非瞬时性计算机可读存储介质,存储介质中存储有至少一条指令或至少一段程序,至少一条指令或至少一段程序由处理器加载并执行以实现上述异常数据源的确定方法。
[0014]
根据本发明的另一方面,还提供了一种电子设备,包括处理器和上述非瞬时性计算机可读存储介质。
[0015]
本发明至少具有以下有益效果:
[0016]
本发明中通过服务器在mom2与mom0之间通过第i个数据接口从目标数据源中获取数据的失败率确定出目标数据源的第一可靠性参数par,在par大于或等于pre1时将目标数据源确定为异常数据源,在par小于pre1且par大于或等于pre2时,根据服务器在mom2与mom3之间通过第i个数据接口从目标数据源中获取数据的失败率更新目标数据源的第一可靠性参数par,在更新后的par大于或等于更新后的pre1时将目标数据源确定为异常数据源。
[0017]
相比于相关技术中仅根据时长较短的测试时间段内从目标数据源中获取数据的失败率较高,而将目标数据源确定为异常数据源,本发明中在par小于pre1且par大于或等于pre2时,会基于mom2与mom3之间从目标数据源中获取数据的失败率确定目标数据源是否为异常数据源,即在par较大时,本发明中会基于时长更长的测试时间段确定目标数据源是否为异常数据源,因此可以减小由于网络波动等情况而将正常工作的目标数据源确定为异常数据源的可能性,达到了提高确定异常数据源的准确性的目的。
[0018]
另外,本发明中在基于mom2与mom3确定目标数据源是否为异常数据源时,此时的pre1相对基于mom2与mom0确定目标数据源是否为异常数据源的pre1更低,由于par大于或等于pre1时目标数据源会被确定为异常数据源,因此本发明在基于mom2与mom3确定目标数据源是否为异常数据源时,可以减小由于mom2与mom3的时间间隔较大引起的par较低对异常数据源确定的影响,进而可以减小正常工作的目标数据源被确定为异常数据源的可能性,达到了进一步提高确定异常数据源的准确性的目的。
[0019]
进一步的,本发明中的基于mom2与mom3确定目标数据源是否为异常数据源时的pre1不仅考虑到了mom0与mom2的时间间隔、mom3与mom2的时间间隔、服务器在mom2与mom0之间向目标数据源发送的数据获取请求的数量v1、服务器在mom2与mom3之间向目标数据源发送的数据获取请求的数量v2,还考虑到了服务器在mom2与mom3之间向目标数据源发送的第l个数据获取请求的时间与服务器接收到数据获取请求对应的已获取数据或目标失败标识的时间之差,因此目标数据源在mom2与mom3之间的响应时长越长,基于mom2与mom3确定目标数据源是否为异常数据源时的pre1越小,此时目标数据源更可能被确定为异常数据源,即
本发明中可以将响应时间过长的目标数据源确定为异常数据源,可以提高用户使用正常工作的目标数据源时的用户体验。
附图说明
[0020]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]
图1为本发明实施例提供的异常数据源的确定方法的流程图。
具体实施方式
[0022]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0023]
本发明实施例提供了一种异常数据源的确定方法,该确定方法应用于服务器,服务器连接有目标数据源,且服务器通过服务器的若干数据接口与目标数据源连接;服务器用于通过每一数据接口向目标数据源发送对应的若干数据获取请求;目标数据源被配置为,响应于接收到每一数据获取请求,通过对应的数据接口向服务器返回数据获取请求对应的已获取数据或目标失败标识。
[0024]
具体的,数据接口为api(application programming interface,应用程序编程接口)接口。目标失败标识为错误码。
[0025]
在一种具体的实施方式中,服务器为航空公司服务器,任意两个数据接口对应的业务种类不同,服务器用于响应于用户进行每一数据接口对应的操作而通过该数据接口向目标数据源发送对应的数据获取请求。例如,数据接口设置有4个,4个数据接口分别为第一数据接口、第二数据接口、第三数据接口和第四数据接口,第一数据接口为售票业务对应的数据接口,第二数据接口为查询业务对应的数据接口,第三数据接口为退票业务对应的数据接口,第四数据接口为改签业务对应的数据接口。对应的,服务器响应于用户的购票操作通过第一数据接口向目标数据源发送对应的数据获取请求,服务器响应于用户的查询操作通过第二数据接口向目标数据源发送对应的数据获取请求,服务器响应于用户的退票操作通过第三数据接口向目标数据源发送对应的数据获取请求,服务器响应于用户的改签操作通过第四数据接口向目标数据源发送对应的数据获取请求。
[0026]
下面将参照图1所示的异常数据源的确定方法的流程图,对异常数据源的确定方法进行介绍。
[0027]
该确定方法包括以下步骤:
[0028]
s100,响应于达到第一时间mom1,获取目标时间mom0=mom1。
[0029]
在一种具体的实施方式中,将若干预设滑动时间窗口中每一预设滑动时间窗口的结束时间作为mom1,对于任一mom1均可以执行本发明实施例的确定方法。
[0030]
s200,获取目标数据源对应的目标失败标识列表bs=(bs1,bs2,...,bsi,...,
bsn),
[0031]
bsi=(bs
i1
,bs
i2
,...,bs
ij
,...,bs
im(i)
),i=1,2,...,n,j=1,2,...,m(i)。
[0032]
其中,bsi为第i个数据接口对应的目标失败标识组,n为数据接口的数量;bs
ij
为目标数据源在mom2与mom1之间通过第i个数据接口向服务器返回的第j个目标失败标识,mom2为第二时间,mom2<mom1;m(i)为目标数据源在mom2与mom1之间通过第i个数据接口向服务器返回的目标失败标识的数量。
[0033]
s300,根据bs,获取目标数据源的第一可靠性参数par=∑
i=1n
[wi*s(i)/v(i)]。
[0034]
其中,wi为第i个数据接口对应的权重,s(i)为bsi中与任一目标预设失败标识相同的目标失败标识的数量,v(i)为服务器在mom2与mom1之间通过第i个数据接口向目标数据源发送的数据获取请求的数量。
[0035]
具体的,s(i)/v(i)为服务器在mom2与mom1之间通过第i个数据接口从目标数据源中获取数据的失败率。
[0036]
具体的,服务器中存储有第一预设失败信息列表a1=(a
11
,a
21
,...,a
k1
,...,a
z1
),a
k1
=(a
k11
,a
k21
,...,a
kx1
,...,a
ky(k)1
),a
kx1
=(bs
kx1
,ms
kx1
),k=1,2,...,z,x=1,2,...,y(k);其中,a
k1
为第k个第二预设失败标识ck对应的第一预设失败信息组,z为第二预设失败标识的数量,第二预设失败标识由服务器产生,每一第二预设失败标识均属于关键类别或非关键类别;a
kx1
为ck对应的第x个第一预设失败信息,y(k)为ck对应的第一预设失败信息的数量;bs
kx1
为a
kx1
对应的第一预设失败标识,ms
kx1
为bs
kx1
对应的预设释义信息;第一预设失败信息由目标数据源产生;a1中的任意两个第一预设失败标识均不同。
[0037]
第一预设失败标识和第二预设失败标识均为错误码,预设释义信息为对应的第一预设失败标识的错误描述文本。例如,任一第一预设失败标识为0044,该第一预设失败标识对应的预设释义信息为“网络状态差”。
[0038]
每一第二预设失败标识具有对应的失败等级,失败等级大于或等于预设等级的第二预设失败标识属于关键类别,失败等级小于预设等级的第二预设失败标识属于非关键类别,具体的失败等级和预设等级为本领域根据应用场景进行设定,本发明实施例对此不作限定。
[0039]
失败等级越高对应的第二预设失败标识表示的失败由目标数据源异常造成的可能性越大。例如,第一失败原因为网络故障,第二失败原因为目标数据源上的用于向服务器传输数据获取请求对应的已获取数据的接口损坏,基于此,对应第一失败原因的第二预设失败标识对应的失败等级比对应第二失败原因的第二预设失败标识高。
[0040]
每一第二预设失败标识具有对应的若干释义文本数据,释义文本数据为对应的第二预设失败标识的错误描述文本。基于此,在全部的第一预设失败标识中,若任一第一预设失败标识对应的预设释义信息与任一第二预设失败标识对应的至少一个释义文本数据的语义匹配度超过预设的匹配度阈值,则确定出该第一预设失败标识与该第二预设失败标识对应;在全部的第一预设失败标识中,若任一第一预设失败标识对应的预设释义信息与多个第二预设失败标识对应的至少一个释义文本数据的语义匹配度超过预设的匹配度阈值,则将与该第一预设失败标识对应的预设释义信息的语义匹配度最大的释义文本数据对应的第二预设失败标识,确定为与该第一预设失败标识对应。
[0041]
基于此,若干目标预设失败标识的获取方法包括:
[0042]
将a1中属于关键类别的每一第二预设失败信息对应的第一预设失败信息组中的每一第一预设失败标识均作为目标预设失败标识。
[0043]
在一种具体的实施方式中,wi为预设得到的。
[0044]
s400,确定par是否大于或等于pre1;若是,则将目标数据源确定为异常数据源;否则,若mom1=mom0,则进入步骤s500。
[0045]
其中,pre1为第一目标阈值;
[0046]
s500,确定par是否大于或等于pre2;若是,则进入步骤s600。
[0047]
其中,pre2为第二目标阈值,pre2<pre1。
[0048]
s600,响应于达到第三时间mom3,将mom1更新为mom3,将pre1更新为γ*pre1,并进入步骤s200。
[0049]
其中,mom3>mom0,γ为缩小参数,γ={[(mom
0-mom2)/(mom
3-mom2)]*(v1/v2)*h}^(1/3)。
[0050]
v1为服务器在mom2与mom0之间向目标数据源发送的数据获取请求的数量,v1=∑
i=1n
v(i);v2为服务器在mom2与mom3之间向目标数据源发送的数据获取请求的数量;h为影响系数,若dur
ave
≤dur0,则h=(dur
0-dur
ave
)/dur0,若dur
ave
>dur0,则h=0;dur0为预设响应时长;dur
ave
为参考响应时长,dur
ave
=∑
l=1v(i)
dur
l
,dur
l
为服务器在mom2与mom3之间向目标数据源发送的第l个数据获取请求的时间与服务器接收到数据获取请求对应的已获取数据或目标失败标识的时间之差。
[0051]
由此可知,本发明中通过服务器在mom2与mom0之间通过第i个数据接口从目标数据源中获取数据的失败率确定出目标数据源的第一可靠性参数par,在par大于或等于pre1时将目标数据源确定为异常数据源,在par小于pre1且par大于或等于pre2时,根据服务器在mom2与mom3之间通过第i个数据接口从目标数据源中获取数据的失败率更新目标数据源的第一可靠性参数par,在更新后的par大于或等于更新后的pre1时将目标数据源确定为异常数据源。
[0052]
相比于相关技术中仅根据时长较短的测试时间段内从目标数据源中获取数据的失败率较高,而将目标数据源确定为异常数据源,本发明中在par小于pre1且par大于或等于pre2时,会基于mom2与mom3之间从目标数据源中获取数据的失败率确定目标数据源是否为异常数据源,即在par较大时,本发明中会基于时长更长的测试时间段确定目标数据源是否为异常数据源,因此可以减小由于网络波动等情况而将正常工作的目标数据源确定为异常数据源的可能性,达到了提高确定异常数据源的准确性的目的。
[0053]
另外,本发明中在基于mom2与mom3确定目标数据源是否为异常数据源时,此时的pre1相对基于mom2与mom0确定目标数据源是否为异常数据源的pre1更低,由于par大于或等于pre1时目标数据源会被确定为异常数据源,因此本发明在基于mom2与mom3确定目标数据源是否为异常数据源时,可以减小由于mom2与mom3的时间间隔较大引起的par较低对异常数据源确定的影响,进而可以减小正常工作的目标数据源被确定为异常数据源的可能性,达到了进一步提高确定异常数据源的准确性的目的。
[0054]
进一步的,本发明中的基于mom2与mom3确定目标数据源是否为异常数据源时的pre1不仅考虑到了mom0与mom2的时间间隔、mom3与mom2的时间间隔、服务器在mom2与mom0之间向目标数据源发送的数据获取请求的数量v1、服务器在mom2与mom3之间向目标数据源发
送的数据获取请求的数量v2,还考虑到了服务器在mom2与mom3之间向目标数据源发送的第l个数据获取请求的时间与服务器接收到数据获取请求对应的已获取数据或目标失败标识的时间之差,因此目标数据源在mom2与mom3之间的响应时长越长,基于mom2与mom3确定目标数据源是否为异常数据源时的pre1越小,此时目标数据源更可能被确定为异常数据源,即本发明中可以将响应时间过长的目标数据源确定为异常数据源,可以提高用户使用正常工作的目标数据源时的用户体验。
[0055]
可选的,步骤s400包括以下步骤:
[0056]
s401,确定par是否大于或等于pre1;若是,则将目标数据源确定为异常数据源;否则,进入步骤s402。
[0057]
s402,确定mom1是否满足mom1=mom0;若是,则进入步骤s500;否则,将目标数据源确定为正常数据源。
[0058]
可选的,若干所述数据接口中的部分所述数据接口为保留接口且另一部分所述数据接口为非保留接口。
[0059]
在一种具体的实施方式中,若任一数据接口对应的业务属于售后服务类的,则该数据接口确定为保留接口,例如,对于上述的第一数据接口、第二数据接口、第三数据接口和第四数据接口,将第一数据接口和第二数据接口设置为保留接口,将第三数据接口和第四数据接口设置为非保留接口。
[0060]
基于此,步骤s401包括以下步骤:
[0061]
s4011,确定par是否大于或等于pre1;若是,则将目标数据源确定为异常数据源,并进入步骤s700;否则,进入步骤s402。
[0062]
确定方法还包括以下步骤:
[0063]
s700,断开服务器的每一非保留接口与目标数据源的连接,并将当前时间确定为断开时间mom0。
[0064]
s800,将服务器的每一数据接口均与目标数据源对应的备用数据源进行连接。
[0065]
示例性的,服务器为航空公司服务器,则目标数据源与对应的备用数据源为不同的线上售票平台对应的数据源。
[0066]
s900,响应于达到第一检测时间mom1,获取目标数据源对应的第二可靠性参数par1。
[0067]
其中,par1=∑
i=1r
[s

(i)/v

(i)]/r;s

(i)为在第二检测时间mom2与mom1之间服务器通过第i个保留接口接收到的目标数据源发送的目标失败标识的数量,mom0<mom2<mom1,v

(i)为在第二检测时间mom2与mom1之间服务器通过第i个保留接口向目标数据源发送的数据获取请求的数量;r为保留接口的数量,r<n。
[0068]
具体的,将若干检测滑动时间窗口中任一检测滑动时间窗口的结束时间作为mom1。
[0069]
在一种具体的实施方式中,将若干预设的检测滑动时间窗口中每一检测滑动时间窗口的结束时间作为mom1,对于任一mom1均可以执行本发明实施例的确定方法。
[0070]
s1000,若par1≥thr,则断开每一非保留接口与备用数据源的连接,并将每一非保留接口与目标数据源连接;thr为预设阈值。
[0071]
由此可知,本发明中在目标数据源被确定为异常数据源后,可以服务器通过目标
数据源对应的备用数据源获取数据,在par1达到thr时,说明目标数据源基本上恢复了正常的工作状态,此时可以断开服务器与备用数据源的连接并恢复与目标数据源的连接,以在目标数据源恢复正常工作状态后及时从备用数据源切回目标数据源。
[0072]
可选的,thr≥0.8。
[0073]
可选的,(mom
3-mom2)≤(mom
1-mom2)。
[0074]
由此可知,相比于(mom
1-mom2)>(mom
3-mom2),本发明中确定服务器是否要恢复与目标数据源的连接针对的时间段的持续时长(mom
1-mom2)不小于确定服务器是否为异常服务器针对的时间段的持续时长(mom
3-mom2)或(mom
0-mom2),可以减小在目标数据源仍为异常数据源的情况下,由于确定服务器是否要恢复与目标数据源的连接针对的时间段的持续时长过短造成的par1较大而使服务器恢复与目标数据源的连接的情况发生的可能性,因此,可以减小在目标数据源为异常数据源的情况下服务器与目标数据源正常连接的可能性,达到了提高服务器获取数据的成功率的目的。
[0075]
可选的,(mom
3-mom0)≤(mom
0-mom2)。
[0076]
由此可知,相比于(mom
3-mom0)>(mom
0-mom2),本发明中(mom
3-mom0)≤(mom
0-mom2)可以减小由于(mom
3-mom0)过长而造成目标数据源异常后较久才被确定为异常数据源的情况发生的可能性,达到了提高确定异常数据源的及时性的目的。
[0077]
可选的,3秒≤dur0≤15秒。
[0078]
可选的,步骤s500包括以下步骤:
[0079]
s501,确定par是否大于或等于pre2;若是,则进入步骤s600;否则,将目标数据源确定为正常数据源。
[0080]
可选的,目标数据源被配置为,对于接收到的每一数据获取请求,若根据数据获取请求获取数据成功,则通过数据获取请求对应的数据接口向服务器返回数据获取请求对应的已获取数据;目标数据源还被配置为,对于接收到的每一数据获取请求,若根据数据获取请求获取数据失败,则通过数据获取请求对应的数据接口向服务器返回数据获取请求对应的目标失败标识。
[0081]
可选的,步骤s200包括以下步骤:
[0082]
s201,获取目标数据源对应的目标失败标识列表bs和bs
ij
对应的目标释义信息,将bs
ij
与bs
ij
对应的目标释义信息作为一个目标失败信息。
[0083]
其中,bs=(bs1,bs2,...,bsi,...,bsn),bsi=(bs
i1
,bs
i2
,...,bs
ij
,...,bs
im(i)
),i=1,2,...,n,j=1,2,...,m(i)。
[0084]
上述将目标数据源确定为异常数据源包括以下步骤:
[0085]
s410,确定a1中是否存在每一目标失败信息相同的第一预设失败信息;若是,则将目标数据源确定为异常数据源;否则,对每一目标失败标识进行数据更新处理,并在对每一目标失败标识进行数据更新处理后进入步骤s300。
[0086]
数据更新处理包括以下步骤:
[0087]
s4101,将当前进行数据更新处理的目标失败标识作为当前失败标识;
[0088]
s4102,确定a1中是否存在与当前失败标识相同的第一预设失败标识;若否,则进入步骤s4103;
[0089]
s4103,将待添加第一预设失败信息a
001
添加至a1中与pri
max
对应的第一预设失败
信息组内;a
001
=(bs
001
,ms
001
),bs
001
为当前失败标识,ms
001
为当前失败标识对应的目标释义信息;最大优先级pri
max
=max(pri1,pri2,...,prik,...,priz),max()为预设的最大值确定函数,a
k1
对应的优先级prik=(∑
x=1y(k)dkx
)/y(k),d
kx
为当前失败标识对应的目标释义信息与ms
kx1
之间的匹配度。
[0090]
由此可知,本发明中在达到第一时间mom1时,若符合关键条件的目标失败信息满足预设异常条件,且a1中不存在与任一目标失败信息相同的第一预设失败信息,则对每一目标失败标识进行数据更新处理以更新a1,在更新a1后,重新确定符合关键条件的目标失败信息是否满足预设异常条件,直至将目标数据源确定为正常数据源,或者由于a1中存在每一目标失败信息相同的第一预设失败信息而将目标数据源确定为异常数据源。
[0091]
相比于相关技术中,在达到第一时间mom1时,若符合关键条件的目标失败信息满足预设异常条件,则将目标数据源确定为异常数据源,本发明中在确定符合关键条件的目标失败信息满足预设异常条件后会更新a1,再确定目标数据源是否为异常数据源,进而可以减小由于存储于服务器中的a1未完全实时更新而导致正常的目标数据源被确定为异常数据源的可能性,因此可以提高进行异常数据源的确定的准确性。
[0092]
进一步的,本发明中在更新a1时是将a
001
添加至a1中与pri
max
对应的第一预设失败信息组内,且pri
max
=max(pri1,pri2,...,prik,...,priz),由于prik的确定考虑到了当前失败标识对应的目标释义信息与a
k1
中的每一预设释义信息之间的匹配度,本发明中用于确定匹配度的目标释义信息和预设释义信息均是由目标数据源产生,即本发明中用于确定匹配度的目标释义信息和预设释义信息均是由同一主体产生,进而根据本发明中的匹配度确定出的a
001
对应的第一预设失败信息组更加准确,可以提高数据更新的准确性。
[0093]
另外,本发明中是在符合关键条件的目标失败信息满足预设异常条件进行数据更新处理的,相比于在达到第一时间mom1后便进行数据更新处理,本发明中在符合关键条件的目标失败信息不满足预设异常条件不会进行数据更新处理,此时可以减少服务器的计算量,节省计算资源。
[0094]
可选的,步骤s4102包括以下步骤:
[0095]
s41021,确定a1中是否存在与当前失败标识相同的第一预设失败标识;若是,则进入步骤s4104;否则,进入步骤s4103。
[0096]
数据更新处理还包括以下步骤:
[0097]
s4104,确定与当前失败标识相同的第一预设失败标识的预设释义信息与当前失败标识对应的目标释义信息是否相同;若否,则进入步骤s4105。
[0098]
s4105,确定a1中是否存在与当前失败标识对应的目标释义信息相同的预设释义信息;若是,则进入步骤s4106。
[0099]
s4106,从a1中删除与当前失败标识相同的第一预设失败标识所在的第一预设失败信息。
[0100]
s4107,将a1中与当前失败标识对应的目标释义信息相同的预设释义信息对应的第一预设失败标识替换为当前失败标识。
[0101]
可选的,步骤s4105包括以下步骤:
[0102]
s41051,确定a1中是否存在与当前失败标识对应的目标释义信息相同的预设释义信息;若是,则进入步骤s4106;否则,进入步骤s4108。
[0103]
数据更新处理还包括以下步骤:
[0104]
s4108,将待添加第一预设失败信息a
001
添加至a1中与pri
max
对应的第一预设失败信息组内。
[0105]
其中,a
001
=(bs
001
,ms
001
),bs
001
为当前失败标识,ms
001
为当前失败标识对应的目标释义信息;最大优先级pri
max
=max(pri1,pri2,...,prik,...,priz),max()为预设的最大值确定函数,a
k1
对应的优先级prik=(∑
x=1y(k)dkx
)/y(k),d
kx
为当前失败标识对应的目标释义信息与ms
kx1
之间的匹配度。
[0106]
s4109,将a1中a
001
以外的每一第一预设失败信息均作为候选预设失败信息,并在a1中删除与当前失败标识相同的第一预设失败标识所在的候选预设失败信息。
[0107]
可选的,wi的通过以下步骤获得:
[0108]
s1001,将a1中与关键类别对应的每一第一预设失败标识均作为目标预设失败标识。
[0109]
具体的,a1中属于关键类别的每一第二预设失败信息对应的第一预设失败信息组中的每一第一预设失败标识,均为关键类别对应的第一预设失败标识。
[0110]
s1002,获取时间列表time=(time1,time2,...,timei,...,timen),timei=(time
i1
,time
i2
,...,time
iu
,...,time
iv(i)
),u=1,2,...,v(i);其中,timei为第i个数据接口对应的时间组,n为数据接口的数量,time
iu
为服务器在mom2与mom1之间通过第i个数据接口向目标数据源发送第u个数据获取请求的时间,time
i1
≤time
i2
≤...≤time
iu
≤...≤time
iv(i)
,mom2<time
iu
<mom1;v(i)为服务器在mom2与mom1之间通过第i个数据接口向目标数据源发送的数据获取请求的数量。
[0111]
s1003,根据time,获取时间差列表δt=(δt1,δt2,...,δtq,...,δtn),δti=(δt
i1
,δt
i2
,...,δt
iu
,...,δt
iv(i)
)。
[0112]
其中,δti为timei对应的时间差组,δt
iu
为time
iu
对应的时间差;δt
iu
满足如下条件:
[0113]
若u=1,δt
i1
=[(time
i1-mom2)+(time
i2-time
i1
)]/2;
[0114]
若u=q,δt
iq
=[(time
iq-time
i(q-1)
)+(time
i(q+1)-time
iq
)]/2,q=2,3,...,v(i)-1;
[0115]
若u=v(i),δt
iv(i)
=[(time
iv(i)-time
i(v(i)-1)
)+(mom
1-time
iv(i)
)]/2。
[0116]
s1004,获取wi=α*v(i)+β/fi,α为第一预设系数,β为第二预设系数,fi为第i个数据接口对应的时间差波动参数,fi=[∑
u=1v(i)
(δt
iu-δt
avei
)2]/v(i),δt
avei
为第i个数据接口对应的参考时间差,δt
avei
=(∑
u=1v(i)
δt
iu
)/v(i)。
[0117]
本发明中的fi越大,wi越小,进而s(i)/v(i)对par的影响越小,又由于fi=[∑
u=1v(i)
(δt
iu-δt
avei
)2]/v(i),因此在mom2与mom1之间服务器通过第i个数据接口向目标数据源发送的数据获取请求的时间差波动越大,s(i)/v(i)对par的影响越小,也即是mom2与mom1之间服务器通过第i个数据接口向目标数据源发送的数据获取请求越集中,s(i)/v(i)对par的影响越小,进而在mom2与mom1之间服务器通过第i个数据接口向目标数据源发送的数据获取请求的时间大多数集中在目标服务器开始异常之前造成s(i)/v(i)较小时,可以减小未将目标服务器确定为异常服务器的可能性,因此,可以进一步提高确定异常数据源的准确性。
[0118]
相比于相关技术中在预设时间段内从目标数据源中获取数据的失败率较高时将目标数据源确定为异常数据源,本发明中的wi考虑到了服务器在mom2与mom1之间通过第i个数据接口向目标数据源发送的数据获取请求的数量v(i),并且v(i)越小,第i个数据接口对应的权重wi越小,进而s(i)/v(i)对par的影响越小,即v(i)越小,服务器在mom2与mom1之间通过第i个数据接口从目标数据源中获取数据的失败率对确定目标数据源是否为异常数据源的影响越小,因此,在目标数据源为异常数据源,且由于v(i)较小造成在mom2与mom1之间通过第i个数据接口从目标数据源中获取数据的失败率较低时,可以减小该失败率较低以致par较小进而未将目标数据源确定为异常数据源的可能性,因此,可以提高确定异常数据源的准确性。
[0119]
可选的,1≤α≤5,100≤β≤10000。
[0120]
可选的,pre1=(∑
i=1n
wi)*coe,coe为预设的目标系数,0.5<coe≤0.9。
[0121]
可选的,步骤s4104包括以下步骤:
[0122]
s41041,确定与当前失败标识相同的第一预设失败标识的预设释义信息与当前失败标识对应的目标释义信息是否相同;若是,则结束对当前失败标识进行的数据更新处理;否则,进入步骤s4105。
[0123]
可选的,匹配度为对应的目标释义信息的特征值与对应的预设释义信息的特征值之间的匹配度,或者匹配度为对应的目标释义信息与对应的预设释义信息之间的语义匹配度。
[0124]
具体的,特征值为哈希值。在一种具体的实施方式中,匹配度为对应的目标释义信息的哈希值与对应的预设释义信息的哈希值的差值。例如,任一目标释义信息的哈希值为0110,任一预设释义信息的哈希值为0111,则根据0111-0110=0001可以得知,该目标释义信息与该预设释义信息的匹配度为0001。
[0125]
本发明的实施例还提供了一种非瞬时性计算机可读存储介质,该存储介质可设置于电子设备之中以保存用于实现方法实施例中一种方法相关的至少一条指令或至少一段程序,该至少一条指令或该至少一段程序由该处理器加载并执行以实现上述实施例提供的确定方法。
[0126]
本发明的实施例还提供了一种电子设备,包括处理器和前述的非瞬时性计算机可读存储介质。
[0127]
本发明的实施例还提供一种计算机程序产品,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使该电子设备执行本说明书上述描述的根据本发明各种示例性实施方式的确定方法中的步骤。
[0128]
虽然已经通过示例对本发明的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本发明的范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本发明的范围和精神。本发明公开的范围由所附权利要求来限定。

技术特征:
1.一种异常数据源的确定方法,其特征在于,所述确定方法应用于服务器;所述服务器连接有目标数据源,且所述服务器通过所述服务器的若干数据接口与所述目标数据源连接;所述服务器用于通过每一所述数据接口向所述目标数据源发送对应的若干数据获取请求;所述目标数据源被配置为,响应于接收到每一所述数据获取请求,通过对应的数据接口向所述服务器返回所述数据获取请求对应的已获取数据或目标失败标识;所述确定方法包括以下步骤:s100,响应于达到第一时间mom1,获取目标时间mom0=mom1;s200,获取所述目标数据源对应的目标失败标识列表bs=(bs1,bs2,...,bs
i
,...,bs
n
),bs
i
=(bs
i1
,bs
i2
,...,bs
ij
,...,bs
im(i)
),i=1,2,...,n,j=1,2,...,m(i);其中,bs
i
为第i个数据接口对应的目标失败标识组,n为数据接口的数量;bs
ij
为所述目标数据源在mom2与mom1之间通过第i个数据接口向所述服务器返回的第j个目标失败标识,mom2为第二时间,mom2<mom1;m(i)为所述目标数据源在mom2与mom1之间通过第i个数据接口向所述服务器返回的目标失败标识的数量;s300,根据bs,获取所述目标数据源的第一可靠性参数par=∑
i=1n
[w
i
*s(i)/v(i)];w
i
为第i个数据接口对应的权重,s(i)为bs
i
中与任一目标预设失败标识相同的目标失败标识的数量,v(i)为所述服务器在mom2与mom1之间通过第i个数据接口向所述目标数据源发送的数据获取请求的数量;s400,确定par是否大于或等于pre1;若是,则将所述目标数据源确定为异常数据源;否则,若mom1=mom0,则进入步骤s500;pre1为第一目标阈值;s500,确定par是否大于或等于pre2;若是,则进入步骤s600;pre2为第二目标阈值,pre2<pre1;s600,响应于达到第三时间mom3,将mom1更新为mom3,将pre1更新为γ*pre1,并进入步骤s200;mom3>mom0,γ为缩小参数,γ={[(mom
0-mom2)/(mom
3-mom2)]*(v1/v2)*h}^(1/3);v1为服务器在mom2与mom0之间向所述目标数据源发送的数据获取请求的数量,v1=∑
i=1n
v(i);v2为所述服务器在mom2与mom3之间向所述目标数据源发送的数据获取请求的数量;h为影响系数,若dur
ave
≤dur0,则h=(dur
0-dur
ave
)/dur0,若dur
ave
>dur0,则h=0;dur0为预设响应时长;dur
ave
为参考响应时长,dur
ave
=∑
l=1v(i)
dur
l
,dur
l
为所述服务器在mom2与mom3之间向所述目标数据源发送的第l个数据获取请求的时间与所述服务器接收到所述数据获取请求对应的已获取数据或目标失败标识的时间之差。2.根据权利要求1所述的确定方法,其特征在于,所述步骤s400包括以下步骤:s401,确定par是否大于或等于pre1;若是,则将所述目标数据源确定为异常数据源;否则,进入步骤s402;s402,确定mom1是否满足mom1=mom0;若是,则进入步骤s500;否则,将所述目标数据源确定为正常数据源。3.根据权利要求2所述的确定方法,其特征在于,若干所述数据接口中的部分所述数据接口为保留接口且另一部分所述数据接口为非保留接口;所述步骤s401包括以下步骤:s4011,确定par是否大于或等于pre1;若是,则将所述目标数据源确定为异常数据源,并进入步骤s700;否则,进入步骤s402;
所述确定方法还包括以下步骤:s700,断开所述服务器的每一所述非保留接口与所述目标数据源的连接,并将当前时间确定为断开时间mom0;s800,将所述服务器的每一所述数据接口均与所述目标数据源对应的备用数据源进行连接;s900,响应于达到第一检测时间mom1,获取所述目标数据源对应的第二可靠性参数par1=∑
i=1r
[s

(i)/v

(i)]/r;s

(i)为在第二检测时间mom2与mom1之间所述服务器通过第i个保留接口接收到的所述目标数据源发送的目标失败标识的数量,mom0<mom2<mom1,v

(i)为在第二检测时间mom2与mom1之间所述服务器通过第i个保留接口向所述目标数据源发送的数据获取请求的数量;r为所述保留接口的数量;s1000,若par1≥thr,则断开每一所述非保留接口与所述备用数据源的连接,并将每一所述非保留接口与所述目标数据源连接;thr为预设阈值。4.根据权利要求3所述的确定方法,其特征在于,(mom
3-mom2)≤(mom
1-mom2)。5.根据权利要求1所述的确定方法,其特征在于,(mom
3-mom0)≤(mom
0-mom2)。6.根据权利要求1所述的确定方法,其特征在于,3秒≤dur0≤15秒。7.根据权利要求1所述的确定方法,其特征在于,所述步骤s500包括以下步骤:s501,确定par是否大于或等于pre2;若是,则进入步骤s600;否则,将所述目标数据源确定为正常数据源。8.根据权利要求1所述的确定方法,其特征在于,所述目标数据源被配置为,对于接收到的每一所述数据获取请求,若根据所述数据获取请求获取数据成功,则通过所述数据获取请求对应的数据接口向所述服务器返回所述数据获取请求对应的已获取数据;所述目标数据源还被配置为,对于接收到的每一所述数据获取请求,若根据所述数据获取请求获取数据失败,则通过所述数据获取请求对应的数据接口向所述服务器返回所述数据获取请求对应的目标失败标识。9.一种非瞬时性计算机可读存储介质,所述存储介质中存储有至少一条指令或至少一段程序,其特征在于,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现如权利要求1-8中任意一项的所述确定方法。10.一种电子设备,其特征在于,包括处理器和权利要求9中的所述非瞬时性计算机可读存储介质。

技术总结
本发明涉及数据处理领域,特别是涉及一种异常数据源的确定方法、存储介质及电子设备,该方法包括以下步骤:S100,响应于达到第一时间mom1,获取目标时间mom0=mom1;S200,获取目标失败标识列表BS;S300,根据BS,获取第一可靠性参数par;S400,确定par是否大于或等于第一目标阈值pre1;若是,则将所述目标数据源确定为异常数据源;否则,若mom1=mom0,则确定par是否大于或等于第二目标阈值pre2;若是,则响应于达到第三时间mom3,将mom1更新为mom3,将pre1更新为γ*pre1,并进入步骤S200;γ为缩小参数。由此,可以提高确定异常数据源的准确性。可以提高确定异常数据源的准确性。可以提高确定异常数据源的准确性。


技术研发人员:章秀静 李文杰 刘丰 王越 王舒啸 焦子岳 崔玫意 李德尔
受保护的技术使用者:中航信移动科技有限公司
技术研发日:2023.04.23
技术公布日:2023/8/21
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐