数据同步方法、装置、客户端和计算机可读存储介质制造方法及图纸

技术编号:38471705 阅读:19 留言:0更新日期:2023-08-11 14:48
本发明专利技术实施例提出一种数据同步方法、装置、客户端和计算机可读存储介质,通过确定与客户端进行数据同步的目标客户端;目标客户端与客户端为同一目标文件所对应的已注册客户端;与目标客户端进行脏数据同步,以使客户端与目标客户端的缓存数据一致。本发明专利技术采用多个客户端直接同步脏数据的方式保证客户端缓存的一致性,减少与数据服务器的数据交互,有效降低数据服务器的业务负担和减少数据同步的时间,进而提升分布式文件系统IO读写性能。进而提升分布式文件系统IO读写性能。进而提升分布式文件系统IO读写性能。

【技术实现步骤摘要】
数据同步方法、装置、客户端和计算机可读存储介质


[0001]本专利技术涉及分布式文件系统领域,具体而言,涉及一种数据同步方法、装置、客户端和计算机可读存储介质。

技术介绍

[0002]在分布式文件系统中,为了提高文件读写性能,客户端通常使用本地内存来缓存经常访问的文件数据。当一个文件被多个客户端读取时,每个客户端被授予读权限,并将数据缓存到本地内存中。客户端在拥有文件的读权限期间,可以直接访问本地内存中的数据。
[0003]当某个客户端需要修改该文件时,则该客户端申请该文件的写权限,同时其他客户端该文件的读权限被召回且本地缓存数据失效。其他客户端再次读取该文件时需要重新申请读权限,被授予写权限的客户端将脏数据保存到数据服务器并将写权限释放,被授权读权限的客户端从数据服务器读取该文件数据保存到本地缓存。这样的数据同步方式需要通过数据服务器读写文件数据来保证客户端缓存的一致性,数据同步消耗的时间较长,从而影响分布式文件系统IO读写性能。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种数据同步方法、装置、客户端和计算机可读存储介质,采用多个客户端直接同步脏数据的方式保证客户端缓存的一致性,减少与数据服务器的数据交互,有效降低数据服务器的业务负担和减少数据同步的时间,进而提升分布式文件系统IO读写性能。
[0005]为了实现上述目的,本专利技术实施例采用的技术方案如下:第一方面,本专利技术提供一种数据同步方法,应用于客户端,所述方法包括:确定与所述客户端进行数据同步的目标客户端;所述目标客户端与所述客户端为同一目标文件所对应的已注册客户端;与所述目标客户端进行脏数据同步,以使所述客户端与所述目标客户端的缓存数据一致。
[0006]在可选的实施方式中,所述与所述目标客户端进行脏数据同步,以使所述客户端与所述目标客户端的缓存数据一致,包括:当所述客户端打开所述目标文件时,将所述目标客户端的脏数据同步到所述客户端的缓存;当所述客户端修改所述目标文件时,将所述客户端的脏数据同步到所述目标客户端的缓存。
[0007]在可选的实施方式中,所述当所述客户端打开所述目标文件时,将所述目标客户端的脏数据同步到所述客户端的缓存,包括:当所述客户端打开所述目标文件时,向所述目标客户端发送所述目标文件的脏数据查询请求;
接收所述目标客户端基于所述脏数据查询请求返回的所述目标文件的脏数据;将接收到的所述目标文件的全部脏数据保存到所述客户端的缓存。
[0008]在可选的实施方式中,所述当所述客户端修改所述目标文件时,将所述客户端的脏数据同步到所述目标客户端的缓存,包括:当所述客户端修改所述目标文件时,将待写入数据作为脏数据保存到所述客户端的缓存;将所述脏数据发送给所述目标客户端,以便所述目标客户端将所述客户端的脏数据保存到缓存。
[0009]在可选的实施方式中,所述确定与所述客户端进行数据同步的目标客户端,包括:当所述客户端打开所述目标文件时,向监控服务器发送注册请求,以便所述监控服务器根据所述注册请求获取所述目标文件对应的所有已注册客户端的标识;根据所述监控服务器返回的所述目标文件对应的所有已注册客户端的标识,确定目标客户端;所述目标客户端为所述目标文件对应的除所述客户端之外的全部已注册客户端。
[0010]在可选的实施方式中,所述确定与所述客户端进行数据同步的目标客户端,包括:当所述客户端修改所述目标文件时,向监控服务器发送所述目标文件的写权限请求,以便所述监控服务器根据所述写权限请求返回授权信息;所述授权信息包括所述目标文件对应的所有已注册客户端的标识;根据所述目标文件对应的所有已注册客户端的标识,确定目标客户端;所述目标客户端为所述目标文件对应的除所述客户端之外的全部已注册客户端。
[0011]第二方面,本专利技术提供一种数据同步装置,应用于客户端,所述装置包括:决策模块,用于确定与所述客户端进行数据同步的目标客户端;所述目标客户端与所述客户端为同一目标文件所对应的已注册客户端;同步模块,用于与所述目标客户端进行脏数据同步,以使所述客户端与所述目标客户端的缓存数据一致。
[0012]在可选的实施方式中,所述同步模块用于当所述客户端打开所述目标文件时,将所述目标客户端的脏数据同步到所述客户端的缓存;当所述客户端修改所述目标文件时,将所述客户端的脏数据同步到所述目标客户端的缓存。
[0013]第三方面,本专利技术提供一种客户端,所述客户端包括存储器和处理器,所述存储器用于存储计算机程序,所述处理器用于在调用所述计算机程序时执行如前述实施方式任一项所述的数据同步方法。
[0014]第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前述实施方式任一项所述的数据同步方法。
[0015]相比于现有技术,本专利技术实施例提供的数据同步方法、装置、客户端和计算机可读存储介质,通过确定与客户端进行数据同步的目标客户端;目标客户端与客户端为同一目标文件所对应的已注册客户端;与目标客户端进行脏数据同步,以使客户端与目标客户端的缓存数据一致。本专利技术采用多个客户端直接同步脏数据的方式保证客户端缓存的一致性,减少与数据服务器的数据交互,有效降低数据服务器的业务负担和减少数据同步的时间,进而提升分布式文件系统IO读写性能。
[0016]为使本专利技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
[0017]为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0018]图1示出了本专利技术实施例提供的一种应用场景示意图。
[0019]图2示出了本专利技术实施例提供的数据同步方法的一种示意图。
[0020]图3示出了图2中步骤S20的子步骤的一种示意图。
[0021]图4示出了图3中步骤S201和S202的子步骤的一种示意图。
[0022]图5示出了图4中步骤S10的子步骤的一种示意图。
[0023]图6示出了本专利技术实施例提供的数据同步装置的方框示意图。
[0024]图7示出了本专利技术实施例提供的客户端的一种方框示意图。
[0025]图标:10

客户端;20

监控服务器;30

数据服务器;110

存储器;120

处理器;130

通信模块;200

数据同步装置;201

决策模块;202

同步模块。
具体实施方式
[0026]下面将结合本专利技术实施例中附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据同步方法,其特征在于,应用于客户端,所述方法包括:确定与所述客户端进行数据同步的目标客户端;所述目标客户端与所述客户端为同一目标文件所对应的已注册客户端;与所述目标客户端进行脏数据同步,以使所述客户端与所述目标客户端的缓存数据一致。2.根据权利要求1所述的数据同步方法,其特征在于,所述与所述目标客户端进行脏数据同步,以使所述客户端与所述目标客户端的缓存数据一致,包括:当所述客户端打开所述目标文件时,将所述目标客户端的脏数据同步到所述客户端的缓存;当所述客户端修改所述目标文件时,将所述客户端的脏数据同步到所述目标客户端的缓存。3.根据权利要求2所述的数据同步方法,其特征在于,所述当所述客户端打开所述目标文件时,将所述目标客户端的脏数据同步到所述客户端的缓存,包括:当所述客户端打开所述目标文件时,向所述目标客户端发送所述目标文件的脏数据查询请求;接收所述目标客户端基于所述脏数据查询请求返回的所述目标文件的脏数据;将接收到的所述目标文件的全部脏数据保存到所述客户端的缓存。4.根据权利要求2所述的数据同步方法,其特征在于,所述当所述客户端修改所述目标文件时,将所述客户端的脏数据同步到所述目标客户端的缓存,包括:当所述客户端修改所述目标文件时,将待写入数据作为脏数据保存到所述客户端的缓存;将所述脏数据发送给所述目标客户端,以便所述目标客户端将所述客户端的脏数据保存到缓存。5.根据权利要求1所述的数据同步方法,其特征在于,所述确定与所述客户端进行数据同步的目标客户端,包括:当所述客户端打开所述目标文件时,向监控服务器发送注册请求,以便所述监控服务器根据所述注册请求获取所述目标文件对应的所有已注册客户端的标识;根据所述监控...

【专利技术属性】
技术研发人员:熊震
申请(专利权)人:成都泛联智存科技有限公司
类型:发明
国别省市:

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

1