【技术实现步骤摘要】
一种自适应数据同步方法、装置、计算机设备及存储介质
本专利技术实施例涉及运维
,尤其涉及一种自适应数据同步方法、装置、计算机设备及存储介质。
技术介绍
超算平台在各行各业中已经得到广泛应用。超算平台的用户有时会向运维人员提出迁移服务器的需求,为了响应该需求,运维人员需要将数据从源服务器同步至目标服务器。现有数据的同步操作是通过远程同步工具(Remotesync,Rsync)中的执行指令“rsync-a源服务器目录目标服务器目录”实现的。这种同步方式是对源服务器中的文件进行逐个同步,即在上一个文件同步完成后,才启动下一个文件的同步操作。但是,现有数据同步方法的执行效率较低,在待同步文件数量很大的情况下,现有同步方法的执行时间较久,容易造成较高的时间成本。
技术实现思路
本专利技术实施例提供一种自适应数据同步方法、装置、计算机设备及存储介质,可以实现多个数据同步任务批量并行处理,提高数据同步的效率,保证系统的安全性能。第一方面,本专利技术实施例提供了一种自适应数据同步方法,所述方法包括:获取待同步数据的源存储目录,并遍历所述源存储目录中包括的各层级的目录,生成与各所述目录对应的待同步目录列表;依次获取所述待同步目录列表中的至少两个待同步目录作为当前的同步处理批次,将当前的同步处理批次中的各待同步目录分配给对应的同步线程,并通过各所述同步线程,执行将各所述待同步目录中的当前层级数据同步至与各所述待同步目录匹配的目标目录中的操作;获取当前负载参数,当根据所述当 ...
【技术保护点】
1.一种自适应数据同步方法,其特征在于,包括:/n获取待同步数据的源存储目录,并遍历所述源存储目录中包括的各层级的目录,生成与各所述目录对应的待同步目录列表;/n依次获取所述待同步目录列表中的至少两个待同步目录作为当前的同步处理批次,将当前的同步处理批次中的各待同步目录分配给对应的同步线程,并通过各所述同步线程,执行将各所述待同步目录中的当前层级数据同步至与各所述待同步目录匹配的目标目录中的操作;/n获取当前负载参数,当根据所述当前负载参数确定满足批量同步条件时,再次执行获取所述待同步目录列表中剩余的至少两个待同步目录作为新的同步处理批次,将所述新的同步处理批次中的各待同步目录分配给对应的同步线程的操作,以对各同步处理批次中的各所述待同步目录中的数据进行批量同步处理;/n其中,所述当前负载参数包括当前运行的同步线程个数,以及中央处理器CPU的全部核数。/n
【技术特征摘要】
1.一种自适应数据同步方法,其特征在于,包括:
获取待同步数据的源存储目录,并遍历所述源存储目录中包括的各层级的目录,生成与各所述目录对应的待同步目录列表;
依次获取所述待同步目录列表中的至少两个待同步目录作为当前的同步处理批次,将当前的同步处理批次中的各待同步目录分配给对应的同步线程,并通过各所述同步线程,执行将各所述待同步目录中的当前层级数据同步至与各所述待同步目录匹配的目标目录中的操作;
获取当前负载参数,当根据所述当前负载参数确定满足批量同步条件时,再次执行获取所述待同步目录列表中剩余的至少两个待同步目录作为新的同步处理批次,将所述新的同步处理批次中的各待同步目录分配给对应的同步线程的操作,以对各同步处理批次中的各所述待同步目录中的数据进行批量同步处理;
其中,所述当前负载参数包括当前运行的同步线程个数,以及中央处理器CPU的全部核数。
2.根据权利要求1所述的方法,其特征在于,遍历所述源存储目录中包括的各层级的目录,生成与各所述目录对应的待同步目录列表,包括:
以所述源存储目录作为遍历起点,逐层遍历所述源存储目录中包括的各层级的目录,并针对每个目录,生成一个待同步目录;
将生成的各所述待同步目录进行组合,得到所述待同步目录列表。
3.根据权利要求1所述的方法,其特征在于,通过所述同步线程,执行将所述待同步目录中的当前层级数据同步至与所述待同步目录匹配的目标目录中的操作,包括:
通过所述同步线程,构建与所述待同步目录匹配的目标目录;
通过所述同步线程,执行将所述待同步目录中的当前层级数据同步至所述目标目录中的操作。
4.根据权利要求3所述的方法,其特征在于,通过所述同步线程,构建与所述待同步目录匹配的目标目录,包括:
在源存储目录中提取最后一级目录名,以及位于所述最后一级目录名之前的目录路径;
在所述待同步目录中识别所述目录路径,并将所述待同步目录中的所述目录路径替换为预先设置的目标存储目录,以得到所述目标目录。
5.根据权利要求1所述的方法,其特征在于,在通过各所述同步线程,执行将各所述待同步目录中的当前层级数据同步至与各所述待同步目录匹配的目标目录中的操作之后,还包括:
获取当前运行的同步线程个数,以及CPU的全部核数;根据所述当前运行的同步线程个数,以及CPU的全部核数,确定CPU目标核数;其中,所述CPU目标核数为用于执行数据同步任务的CPU核数总量;
判断当前运行的所述同步线程个数是否大于所述CPU目标核数,若是,则确定第一线程休眠时间,并控制当前运行的所述同步线程在所述第一线程休眠时间内处于休眠状态;
在等待第一线程休眠时间后,当前运行的所述同步线程再次执行将各所述待同步目录中的当前层级数据同步至与各所述待同步目录匹配的目标目录中的操作。
6.根据权利要求1所述的方法,其特征在于,所述将当前的同步处理批次中的各待同步目录分配给对应的同步线程,包括:
将所述当前的同步处理批次中的一个待同步目录分配给一个同步线程,并更新与所述当前的同步处理批次匹配的同步任务...
【专利技术属性】
技术研发人员:周佳佳,
申请(专利权)人:苏州交驰人工智能研究院有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。