一种文件同步方法及系统技术方案

技术编号:34537944 阅读:13 留言:0更新日期:2022-08-13 21:33
本申请提供一种文件同步方法及系统,在该方法中,第一虚拟机在接收到文件同步命令时,获取待同步文件的文件容积和第一存储位置信息,然后再发送文件容积和第一存储位置信息至虚拟机监视器;虚拟机监视器发送文件容积至第二虚拟机;第二虚拟机根据文件容积创建空文件,并获取与空文件相对应的第二存储位置信息,然后再发送第二存储位置信息至虚拟机监视器;虚拟机监视器调用分布式存储系统的接口根据第一存储位置信息和第二存储位置信息进行数据同步。可见,该方法能够实现一种无须利用虚拟机进程,直接在分布式存储系统中同步数据的效果,从而大幅缩短了IO路径,进而降低了文件同步对虚拟机CPU和内存资源的消耗,并能够提高文件同步的性能。提高文件同步的性能。提高文件同步的性能。

【技术实现步骤摘要】
一种文件同步方法及系统


[0001]本申请涉及云计算
,具体而言,涉及一种文件同步方法及系统。

技术介绍

[0002]目前,虚拟机一般使用分布式存储系统中的虚拟块设备作为虚拟磁盘。基于该种设置,虚拟机之间在进行数据同步时,通常需要分布式存储系统先通过网络传输数据到虚拟机监视器,其次通过虚拟化或半虚拟化的IO驱动将数据传输到虚拟机中,然后再通过虚拟机用户程序通过网络把数据传输给另一个虚拟机的用户程序,再后另一个虚拟机的用户程序通过虚拟化或半虚拟化的IO驱动把数据传输至虚拟机监视器,最后虚拟机监视器再将数据写进分布式存储系统的虚拟盘中,从而完成数据同步的过程。可见,该过程中具有较长的IO路径,这会需要消耗大量的CPU资源和内存资源。

技术实现思路

[0003]本申请实施例的目的在于提供一种文件同步方法及系统,能够实现一种无须利用虚拟机进程,直接在分布式存储系统中同步数据的效果,从而大幅缩短了IO路径,进而降低了文件同步对虚拟机CPU和内存资源的消耗,并能够提高文件同步的性能。
[0004]本申请实施例第一方面提供了一种文件同步方法,所述方法应用于包括虚拟机监视器、第一虚拟机、第二虚拟机和分布式存储系统的文件同步系统中,所述方法包括:
[0005]所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积和第一存储位置信息;
[0006]所述第一虚拟机发送所述文件容积和所述第一存储位置信息至所述虚拟机监视器;
[0007]所述虚拟机监视器在接收到所述文件容积和所述第一存储位置信息时,发送所述文件容积至所述第二虚拟机;
[0008]所述第二虚拟机根据所述文件容积创建空文件,并获取与所述空文件相对应的第二存储位置信息;
[0009]所述第二虚拟机发送所述第二存储位置信息至所述虚拟机监视器;
[0010]所述虚拟机监视器在接收到所述第二存储位置信息时,调用所述分布式存储系统的接口,并在所述分布式存储系统中根据所述第一存储位置信息和所述第二存储位置信息对存储数据进行同步;所述存储数据为所述待同步文件存储于所述分布式存储系统中的数据。
[0011]在上述实现过程中,该方法首先要求第一虚拟机在接收到文件同步命令时,再获取待同步文件的文件容积和第一存储位置信息。可见,一方面该方法设置了文件同步的起始要求,避免了文件同步在不合时宜的时候进行同步,并有利于用户对文件同步的过程进行控制;另一方面,该方法获取的是文件容积和存储位置信息,该些信息数据量较小,并不会占用过多的通信资源,这有利于降低文件同步过程中的CPU消耗、内存消耗以及网络消
耗。其次,该方法要求第一虚拟机发送文件容积和第一存储位置信息至虚拟机监视器,以使虚拟机监视器可以承担中转信息和统筹文件同步过程的工作,同时还可以避免第一虚拟机与第二虚拟机之间的交互,减少了通讯负担。然后,虚拟机监视器在接收到文件容积和第一存储位置信息时,发送文件容积至第二虚拟机。可见,该过程中虚拟机监视器自主存储了第一存储位置信息,并单独发送文件容积至第二虚拟机,从而避免了多余信息的传输,节省了各类通信资源。再后,第二虚拟机根据文件容积创建空文件,并获取与空文件相对应的第二存储位置信息。可见,该过程中第二虚拟机可以根据文件容积创建一个空文件,并在同时指定第二存储位置,从而使得第二虚拟机能够控制空文件读取第二存储位置存储的数据,进而为后续分布式存储系统中内容交互提供地址基础。此后,第二虚拟机发送第二存储位置信息至虚拟机监视器,以使虚拟机监视器可以获知到第一存储位置和第二存储位置,从而便于后续步骤的展开。最后,虚拟机监视器在接收到第二存储位置信息时,调用分布式存储系统的接口,并在分布式存储系统中根据第一存储位置信息和第二存储位置信息对存储数据进行同步。可见,该方法可以在分布式存储系统中完成文件数据的同步,以使第二虚拟机可以通过映射关系直接调用分布式存储系统中的数据,从而能够避免第一虚拟机和第二虚拟机之间的交互以及第一虚拟机和第二虚拟机与虚拟机监控器之间的交互,进而大幅缩短了IO路径并,降低了文件同步对虚拟机CPU和内存资源的消耗,同时还能够提高文件同步的性能。
[0012]进一步地,所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积和第一存储位置信息的步骤包括:
[0013]所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积;
[0014]所述第一虚拟机根据第一映射关系获取第一存储位置信息;所述第一映射关系为所述待同步文件与所述第一存储位置信息之间的映射关系。
[0015]在上述实现过程中,该方法要求第一虚拟机在接收到文件同步命令时,再获取待同步文件的文件容积,其目的是为了保证操作的有效性,避免文件同步在不合时宜的情况进行自动进行,同时也有利于用户对文件同步过程进行启动与控制。然后,第一虚拟机具体是根据待同步文件与第一存储位置信息之间的映射关系获取第一存储位置信息的。可见,该过程描述了第一存储位置信息的获取过程是基于第一映射关系的,这使得该方法能够基于磁盘映射关系来避免对虚拟机进程的使用,从而有利于更高性能地完成文件同步。
[0016]进一步地,所述第二虚拟机根据所述文件容积创建空文件,并获取与所述空文件相对应的第二存储位置信息的步骤包括:
[0017]所述第二虚拟机根据所述文件容积创建空文件;
[0018]所述第二虚拟机根据第二映射关系获取第二存储位置信息;所述第二映射关系为所述空文件与所述第二存储位置信息之间的映射关系。
[0019]在上述实现过程中,第二虚拟机可以根据文件容积创建空文件,从而保障待同步的文件可以具有相应的存储空间,避免存储空间的不足影响文件同步;同时,只有文件具有存储空间才能够实现文件同步,因此根据文件容积创建空文件的方式是该方法中最优的文件创建方式,这也为后续步骤提供了充分的准备。然后,第二虚拟机根据空文件与第二存储位置信息之间的映射关系获取第二存储位置信息。可见,该过程描述了第二存储位置信息
的获取过程是基于第二映射关系的,这使得该方法能够基于磁盘映射关系来避免对虚拟机进程的使用,从而有利于更高性能地完成文件同步。
[0020]进一步地,所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积和第一存储位置信息的在步骤之前,所述方法还包括:
[0021]所述虚拟机监视器检测是否接收到用户输入的文件同步命令;
[0022]所述虚拟机监视器在检测到所述文件同步命令时,发送所述文件同步命令至所述第一虚拟机。
[0023]在上述实现过程中,该方法可以先由虚拟机监视器检测是否接收到用户输入的文件同步命令,从而使得该方法能够基于虚拟机监视器进行全盘监控,进而可以避免第一虚拟机率先执行其操作或新增检测文件同步命令的操作,这将有利于减少第一虚拟机的工作内容,提高第一虚拟机的专职工作能力。此外,虚拟机监视器会在检测到文件同步命令时,发送文件同步命令至第一虚拟机。可见,该方法能够本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件同步方法,其特征在于,所述方法应用于包括虚拟机监视器、第一虚拟机、第二虚拟机和分布式存储系统的文件同步系统中,所述方法包括:所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积和第一存储位置信息;所述第一虚拟机发送所述文件容积和所述第一存储位置信息至所述虚拟机监视器;所述虚拟机监视器在接收到所述文件容积和所述第一存储位置信息时,发送所述文件容积至所述第二虚拟机;所述第二虚拟机根据所述文件容积创建空文件,并获取与所述空文件相对应的第二存储位置信息;所述第二虚拟机发送所述第二存储位置信息至所述虚拟机监视器;所述虚拟机监视器在接收到所述第二存储位置信息时,调用所述分布式存储系统的接口,并在所述分布式存储系统中根据所述第一存储位置信息和所述第二存储位置信息对存储数据进行同步;所述存储数据为所述待同步文件存储于所述分布式存储系统中的数据。2.根据权利要求1所述的文件同步方法,其特征在于,所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积和第一存储位置信息的步骤包括:所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积;所述第一虚拟机根据第一映射关系获取第一存储位置信息;所述第一映射关系为所述待同步文件与所述第一存储位置信息之间的映射关系。3.根据权利要求1所述的文件同步方法,其特征在于,所述第二虚拟机根据所述文件容积创建空文件,并获取与所述空文件相对应的第二存储位置信息的步骤包括:所述第二虚拟机根据所述文件容积创建空文件;所述第二虚拟机根据第二映射关系获取第二存储位置信息;所述第二映射关系为所述空文件与所述第二存储位置信息之间的映射关系。4.根据权利要求1所述的文件同步方法,其特征在于,所述第一虚拟机在接收到所述文件同步命令时,获取所述待同步文件的文件容积和第一存储位置信息的在步骤之前,所述方法还包括:所述虚拟机监视器检测是否接收到用户输入的文件同步命令;所述虚拟机监视器在检测到所述文件同步命令时,发送所述文件同步命令至所述第一虚拟机。5.根据权利要求1所述的文件同步方法,其特征在于,所述虚拟机监视器在接收到所述文件容积和所述第一存储位置信息时,发送所述文件容积至所述第二虚拟机的步骤包括:所述虚...

【专利技术属性】
技术研发人员:陈仲涛
申请(专利权)人:北京天融信科技有限公司北京天融信软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1