System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据处理,尤其涉及一种数据比对方法、电子设备及存储介质。
技术介绍
1、数据比对是利用服务器将多个数据文件中的数据按照预设的规则进行比对。例如,统计出点位1过车数据文件中和点位2过车数据文件中均经过点位1和点位2的车辆。
2、针对大规模数据场景,为了提高数据文件的比对效率,现有技术将数据分配给服务器集群的多个服务器进行处理,即先将数据文件中的数据加载到多个服务器中,以使多个服务器能够同时执行数据文件比对任务。如果在数据比对的过程中,任意一个服务器出现异常,这时会将异常服务器中的数据平均分配到多个其他正常服务器中,以实现负载均衡。这种处理方式会使得多个服务器在执行数据比对的过程中,还需划分服务器资源从数据库中获取数据,以及对获取的新数据执行比对任务,进而对多个服务器的比对任务的执行效率造成影响,影响范围较大,服务器集群的稳定性低。
技术实现思路
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、所述方法还本文档来自技高网...
【技术保护点】
1.一种数据比对方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定哈希环中与需要比对的目标数据文件对应的第一目标节点,包括:
3.根据权利要求1所述的方法,其特征在于,通过下列方式确定服务器与第二节点的对应关系:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述基于所述第一目标节点的位置从所述哈希环中选择第二目标节点,包括:
6.根据权利要求1所述的方法,其特征在于,执行所述比对任务的第一服务器包含多个;
7.根据权利要求1所述的方法,其特征在于,所述比对任务是服务器基于所述目标数据文件中数据的生成时间顺序执行的;
8.根据权利要求1~7任一所述的方法,其特征在于,所述比对任务是服务器基于所述目标数据文件中数据的生成时间顺序执行的;
9.一种数据比对方法,其特征在于,应用于服务器,所述方法包括:
10.根据权利要求9所述的方法,其特征在于,通过多个服务器执行所述比对任务;
12.根据权利要求9所述的方法,其特征在于,所述对所述目标数据文件执行所述比对指令对应的比对任务,包括:
13.根据权利要求9~12任一所述的方法,其特征在于,所述对所述目标数据文件执行所述比对指令对应的比对任务,包括:
14.一种电子设备,其特征在于,所述设备包括:
15.一种计算机存储介质,其特征在于,所述计算机存储介质存储有计算机程序,所述计算机程序用于使计算机执行如权利要求1-8任何一项所述的方法,或执行如权利要求9-13中任何一项所述的方法。
...【技术特征摘要】
1.一种数据比对方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述确定哈希环中与需要比对的目标数据文件对应的第一目标节点,包括:
3.根据权利要求1所述的方法,其特征在于,通过下列方式确定服务器与第二节点的对应关系:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述基于所述第一目标节点的位置从所述哈希环中选择第二目标节点,包括:
6.根据权利要求1所述的方法,其特征在于,执行所述比对任务的第一服务器包含多个;
7.根据权利要求1所述的方法,其特征在于,所述比对任务是服务器基于所述目标数据文件中数据的生成时间顺序执行的;
8.根据权利要求1~7任一所述的方法,其特征在于,所述比对任务是服务器基于所述目标数据文件中数据的生成时间...
【专利技术属性】
技术研发人员:闵文刚,沈瑜,周道利,马东星,
申请(专利权)人:浙江大华技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。