文件读写方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:21453848 阅读:27 留言:0更新日期:2019-06-26 04:45
本发明专利技术公开了一种文件读写方法,该方法包括:当监测到触发的文件读取请求时,依据所述文件读取请求获取对应文件的副本存储路由组,并确定触发所述文件读取请求的第一主机;判断所述副本存储路由组中是否存在属于所述第一主机的副本存储路由;若所述副本存储路由组中存在属于所述第一主机的副本存储路由,则从所述第一主机中读取文件副本;若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则跨机房读取文件副本。本发明专利技术还公开了一种文件读写装置、设备和计算机可读存储介质。本发明专利技术能够减少机房之间的带宽使用率,提高文件的读取速度。

【技术实现步骤摘要】
文件读写方法、装置、设备及计算机可读存储介质
本专利技术涉及分布式存储的
,尤其涉及文件读写方法、装置、设备及计算机可读存储介质。
技术介绍
随着大数据时代的来临,分布式存储应用越来越广泛,在分布式存储环境下,存在多个存储设备,每个存储设备上存在多个分卷。一个文件为了数据安全性和文件访问效率可能存在不同数目的文件副本,文件副本需要均匀分布在不同主机的不同分卷上,既可以避免由于存储节点发生故障导致文件无法访问的情况,同时也可以避免由于高访问量造成用户访问延迟的增加。目前,在实际应用分布式存储技术时,需要对文件进行读写,在读取文件时,通常是随机的从分卷中读取文件副本,而文件副本分布在不同主机的不同分卷上,读取时存在本机房中存储有文件副本,而从其余机房中读取文件副本的情况,而机房之间的带宽是有限的,在数据传输量较多时,数据的传输时延较高,会导致文件的读取速度较慢。因此,如何减少机房之间的带宽使用率,提高文件的读取速度的目前亟待解决的问题。
技术实现思路
本专利技术的主要目的在于提出一种文件读写方法、装置、设备及计算机可读存储介质,旨在减少机房之间的带宽使用率,提高文件的读取速度。为实现上述目的,本专利技术提供一种文件读写方法,所述文件读写方法包括如下步骤:当监测到触发的文件读取请求时,依据所述文件读取请求获取对应文件的副本存储路由组,并确定触发所述文件读取请求的第一主机;判断所述副本存储路由组中是否存在属于所述第一主机的副本存储路由;若所述副本存储路由组中存在属于所述第一主机的副本存储路由,则从所述第一主机中读取文件副本;若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则跨机房读取文件副本。优选地,所述跨机房读取文件副本的步骤之前,还包括:若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则确定所述第一主机所属的第一机房;判断所述副本存储路由组中是否存在属于所述第一机房的其余主机的副本存储路由;若所述副本存储路由组中存在属于所述第一机房的其余主机的副本存储路由,则从所述其余主机中读取文件副本;若所述副本存储路由组中不存在属于所述第一机房的其余主机的副本存储路由,则执行步骤:跨机房读取文件副本。优选地,所述文件读写方法还包括:当监测到触发的文件写入请求时,获取待写入的目标文件,并确定触发所述文件写入请求的第二主机,并确定所述第二主机所属的第二机房;将所述目标文件作为文件副本写入所述第二机房的主机中,并将所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作。优选地,将所述目标文件作为文件副本写入所述第二机房的主机中,并将所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作的步骤包括:对所述目标文件执行去重操作,并将去重后的目标文件作为文件副本写入所述第二机房的主机中;将去重后的目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作;或者,将所述目标文件作为文件副本写入所述第二机房的主机中,并对所述目标文件执行压缩操作;将经过压缩后的所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作。优选地,将所述目标文件作为文件副本写入所述第二机房的主机中,并将所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作的步骤包括:对所述目标文件执行去重操作,并将去重后的目标文件作为文件副本写入所述第二机房的主机中,且对去重后的目标文件执行压缩操作,或者,对所述目标文件执行压缩操作,并对压缩后的目标文件执行去重操作,且将经过去重和压缩后的目标文件作为文件副本写入所述第二机房的主机中。优选地,所述对去重后的目标文件执行压缩操作的步骤包括:将去重后的目标文件作为文件副本写入所述第二机房的主机中,并计算去重后的目标文件的字节数;判断所述字节数是否大于或等于预设字节数,并在所述字节数大于或等于预设字节数时,对去重后的目标文件执行压缩操作。可选地,所述文件读写方法还包括:当监测到损坏的文件副本时,确定损坏的文件副本的所属主机,并读取未损坏的文件副本;将未损坏的文件副本写入损坏的文件副本的所属主机中。此外,为实现上述目的,本专利技术还提供一种文件读写装置,所述文件读写装置包括:获取模块,用于当监测到触发的文件读取请求时,依据所述文件读取请求获取对应文件的副本存储路由组;确定模块,用于确定触发所述文件读取请求的第一主机;判断模块,用于判断所述副本存储路由组中是否存在属于所述第一主机的副本存储路由;读取模块,用于若所述副本存储路由组中存在属于所述第一主机的副本存储路由,则从所述第一主机中读取文件副本;所述读取模块,还用于若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则跨机房读取文件副本。此外,为实现上述目的,本专利技术还提供一种文件读写设备,所述文件读写设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的文件读写程序,所述文件读写程序被所述处理器执行时实现如上所述的文件读写方法的步骤。此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有文件读写程序,所述文件读写程序被处理器执行时实现如上所述的文件读写方法的步骤。本专利技术提供一种文件读写方法、装置、设备及计算机可读存储介质,本专利技术当监测到触发的文件读取请求时,获取对应文件的副本存储路由组,并确定触发该文件读取请求的主机,然后判断该副本存储路由组中是否存在属于该主机的副本存储路由,如果存在,则基于该副本存储路由从本主机中读取文件副本,如果不存在,则跨机房读取文件副本。通过上述方式,在当前主机中有文件副本时,直接从当前主机中读取文件副本,不需要跨机房读取文件副本,而在当前主机中没有文件副本时,才跨机房读取文件副本,可以有效的减少跨机房读取文件副本的次数,从而减少机房之间的带宽使用率,提高文件的读取速度。附图说明图1是本专利技术实施例方案涉及的硬件运行环境的文件读写设备结构示意图;图2为本专利技术文件读写方法第一实施例的流程示意图;图3为本专利技术文件读写方法第二实施例的流程示意图;图4为本专利技术文件读写方法第三实施例的流程示意图;图5为本专利技术文件读写装置一实施例的模块示意图。本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。如图1所示,图1是本专利技术实施例方案涉及的硬件运行环境的文件读写设备结构示意图。本专利技术实施例文件读写设备可以是搭载了虚拟化平台的PC机或服务器(如X86服务器)等终端设备。如图1所示,该文件读写设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器。存储器1005可选的还可以是独本文档来自技高网...

【技术保护点】
1.一种文件读写方法,其特征在于,所述文件读写方法包括如下步骤:当监测到触发的文件读取请求时,依据所述文件读取请求获取对应文件的副本存储路由组,并确定触发所述文件读取请求的第一主机,其中,所述副本存储路由组包含所述文件的各副本的存储路由;判断所述副本存储路由组中是否存在属于所述第一主机的副本存储路由;若所述副本存储路由组中存在属于所述第一主机的副本存储路由,则从所述第一主机中读取文件副本;若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则跨机房读取文件副本。

【技术特征摘要】
1.一种文件读写方法,其特征在于,所述文件读写方法包括如下步骤:当监测到触发的文件读取请求时,依据所述文件读取请求获取对应文件的副本存储路由组,并确定触发所述文件读取请求的第一主机,其中,所述副本存储路由组包含所述文件的各副本的存储路由;判断所述副本存储路由组中是否存在属于所述第一主机的副本存储路由;若所述副本存储路由组中存在属于所述第一主机的副本存储路由,则从所述第一主机中读取文件副本;若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则跨机房读取文件副本。2.如权利要求1所述的文件读写方法,其特征在于,所述跨机房读取文件副本的步骤之前,还包括:若所述副本存储路由组中不存在属于所述第一主机的副本存储路由,则确定所述第一主机所属的第一机房;判断所述副本存储路由组中是否存在属于所述第一机房的其余主机的副本存储路由;若所述副本存储路由组中存在属于所述第一机房的其余主机的副本存储路由,则从所述其余主机中读取文件副本;若所述副本存储路由组中不存在属于所述第一机房的其余主机的副本存储路由,则执行步骤:跨机房读取文件副本。3.如权利要求1所述的文件读写方法,其特征在于,所述文件读写方法还包括:当监测到触发的文件写入请求时,获取待写入的目标文件,并确定触发所述文件写入请求的第二主机,并确定所述第二主机所属的第二机房;将所述目标文件作为文件副本写入所述第二机房的主机中,并将所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作。4.如权利要求3所述的文件读写方法,其特征在于,将所述目标文件作为文件副本写入所述第二机房的主机中,并将所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作的步骤包括:对所述目标文件执行去重操作,并将去重后的目标文件作为文件副本写入所述第二机房的主机中;将去重后的目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作;或者,将所述目标文件作为文件副本写入所述第二机房的主机中,并对所述目标文件执行压缩操作;将经过压缩后的所述目标文件传输至属于其余机房的主机中,以供其余机房的主机执行文件写入操作。5.如权利要求3所述的文件读写方法,其特征在于,将所述目标...

【专利技术属性】
技术研发人员:姚凯张国军
申请(专利权)人:深信服科技股份有限公司
类型:发明
国别省市:广东,44

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

1