一种控制分布式文件系统中文件访问的方法与设备技术方案

技术编号:16886046 阅读:33 留言:0更新日期:2017-12-27 03:50
本申请的目的是提供一种控制分布式文件系统中文件访问的方法与设备。与现有技术相比,本申请的控制设备获取用户设备发送的关于分布式文件系统中目标文件的租约请求,若所述目标文件可供租约,为所述用户设备分配关于所述目标文件的租约,并向所述用户设备发送所述租约的租约序号信息;本申请通过增加所述租约序号信息表示各用户设备请求租约的先后顺序,在设备故障时仍可保证数据不错乱,从而提高服务可用性,减少服务故障时间,而且,本申请通过控制设备、用户设备、存储设备三端维护所述租约序号信息,保证多用户设备访问数据的正确性。

A method and device for controlling file access in a distributed file system

The purpose of this application is to provide a method and device for controlling file access in a distributed file system. Compared with the existing technology, the application of access control equipment sends the user equipment on the target file in a distributed file system lease request, if the target file is available for lease for the user equipment on the distribution of the target file and set the lease lease, the lease by sending order information to the user this application; by increasing the number of lease information representation order of user equipment lease request, in case of equipment failure can ensure data confusion, so as to improve service availability, reduce service failure time, and this application by controlling equipment, user equipment, storage equipment maintenance of the three end of lease number information, guarantee multi user equipment access to the right data.

【技术实现步骤摘要】
一种控制分布式文件系统中文件访问的方法与设备
本申请涉及计算机领域,尤其涉及一种控制分布式文件系统中文件访问的技术。
技术介绍
典型的分布式文件系统由用户设备(包括客户端)、控制设备(Master)和存储设备(ChunkServer)三个角色组成。其中,用户通过用户设备访问数据;Master存储用户的元数据,即文件名、文件长度以及数据实际的存储位置等信息;ChunkServer实际存储了用户的数据。例如,用户读写数据时,先访问Master查询实际数据实际的存储在哪台ChunkServer上,再访问相应的ChunkServer读写数据。若不加限制,多个用户设备访问同一文件会产生数据错乱。例如,假设某个文件同时被两个用户设备写;用户设备A从文件首开始依次写入“123”三个字节,每秒写一个字节;类似地,用户设备B从文件首开始依次写入“456”三个字节,每秒写一个字节。由于两个用户设备之间没有协议,数据写入请求到ChunkServer的先后顺序不定,可能最终的结果是“123”,也可能是“456”,亦有可能是两者的结合如“143”,这种现象称为数据错乱。为了避免这种情况,通常采取基于租约的互斥机制。租约是一种简单的互斥机制,就像现实中的租房子一样。同一个文件只能“租”给一个用户设备。用户设备只能在自己的租约期内访问文件,租约快到期时需要及时续租。若Master发生宕机无法续租时,为了保险起见用户设备必须默认得不到新的租约,不能访问文件(否则在网络分区的情况下若另一用户设备取得了真正的租约,会发生脑裂)。为解决Master宕机后用户设备不能服务的问题,可利用Paxos协议由多台服务器组成Master服务,申请租约和续租请求必须经过超过半数Master服务器的投票确认才能生效,少于半数的服务器宕机不会影响整体的Master服务。现有技术利用Paxos协议实现多个Master服务器的状态同步,即所有操作须经过超过半数服务器的确认。然而,因此产生的网络交互过程,会造成Master服务能力损失。此外,Paxos协议不能容许超过半数的服务器宕机,若此情况发生,仍然会造成用户设备无法续租成功,造成不可服务。
技术实现思路
本申请的一个目的是提供一种控制分布式文件系统中文件访问的方法与设备,以解决提高分布式文件系统服务可用性的问题。根据本申请的一个方面,提供了一种在控制设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:获取用户设备发送的关于分布式文件系统中目标文件的租约请求;若所述目标文件可供租约,为所述用户设备分配关于所述目标文件的租约,其中,所述目标文件在所述租约的租约期内被所述用户设备锁定;向所述用户设备发送所述租约的租约序号信息,其中,所述租约序号信息递增。根据本申请的另一个方面,还提供了一种在用户设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:向控制设备发送关于分布式文件系统中目标文件的租约请求;当所述租约请求成功,获取所述控制设备发送的对应租约的租约序号信息。根据本申请的又一个方面,还提供了一种在存储设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:获取用户设备发送的关于目标文件的访问请求,以及所述用户设备存储的租约序号信息;根据所述租约序号信息,确定是否允许所述用户设备访问所述目标文件;若允许所述用户设备访问所述目标文件,执行所述访问请求并更新所述存储设备存储的所述租约序号信息。根据本申请的再一个方面,还提供了一种控制分布式文件系统中文件访问的控制设备,其中,该设备包括:租约请求获取装置,用于获取用户设备发送的关于分布式文件系统中目标文件的租约请求;租约分配装置,用于若所述目标文件可供租约,为所述用户设备分配关于所述目标文件的租约,其中,所述目标文件在所述租约的租约期内被所述用户设备锁定;租约序号信息发送装置,用于向所述用户设备发送所述租约的租约序号信息,其中,所述租约序号信息递增。根据本申请的又一个方面,还提供了一种控制分布式文件系统中文件访问的用户设备,其中,该设备包括:租约请求发送装置,用于向控制设备发送关于分布式文件系统中目标文件的租约请求;租约序号信息获取装置,用于当所述租约请求成功,获取所述控制设备发送的对应租约的租约序号信息。根据本申请的又一个方面,还提供了一种控制分布式文件系统中文件访问的存储设备,其中,该设备包括:访问请求获取装置,用于获取用户设备发送的关于目标文件的访问请求,以及所述用户设备存储的租约序号信息;访问控制装置,用于根据所述租约序号信息,确定是否允许所述用户设备访问所述目标文件;租约序号信息更新装置,用于若允许所述用户设备访问所述目标文件,执行所述访问请求并更新所述存储设备存储的所述租约序号信息。与现有技术相比,本申请的控制设备获取用户设备发送的关于分布式文件系统中目标文件的租约请求,若所述目标文件可供租约,为所述用户设备分配关于所述目标文件的租约,并向所述用户设备发送所述租约的租约序号信息;本申请通过增加所述租约序号信息表示各用户设备请求租约的先后顺序,在设备故障时仍可保证数据不错乱,从而提高服务可用性,减少服务故障时间,而且,本申请通过控制设备、用户设备、存储设备三端维护所述租约序号信息,保证多用户设备访问数据的正确性。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出根据本申请一个方面的一种控制分布式文件系统中文件访问的系统拓扑图;图2示出根据本申请另一个方面的一种控制分布式文件系统中文件访问的控制设备与用户设备的示意图;图3示出根据本申请一个优选实施例的一种控制分布式文件系统中文件访问的控制设备与用户设备的示意图;图4示出根据本申请又一个方面的一种控制分布式文件系统中文件访问的用户设备与存储设备的示意图;图5示出根据本申请再一个方面的一种在控制设备端及用户设备端控制分布式文件系统中文件访问的方法流程图;图6示出根据本申请另一个优选实施例的一种在控制设备端及用户设备端控制分布式文件系统中文件访问的方法流程图;图7示出根据本申请又一个方面的一种在用户设备端及存储设备端控制分布式文件系统中文件访问的方法流程图;图8示出根据本申请又一个优选实施例的一种控制分布式文件系统中文件访问的方法流程图。附图中相同或相似的附图标记代表相同或相似的部件。具体实施方式下面结合附图对本申请作进一步详细描述。在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光本文档来自技高网
...
一种控制分布式文件系统中文件访问的方法与设备

【技术保护点】
一种在控制设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:获取用户设备发送的关于分布式文件系统中目标文件的租约请求;若所述目标文件可供租约,为所述用户设备分配关于所述目标文件的租约,其中,所述目标文件在所述租约的租约期内被所述用户设备锁定;向所述用户设备发送所述租约的租约序号信息,其中,所述租约序号信息递增。

【技术特征摘要】
1.一种在控制设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:获取用户设备发送的关于分布式文件系统中目标文件的租约请求;若所述目标文件可供租约,为所述用户设备分配关于所述目标文件的租约,其中,所述目标文件在所述租约的租约期内被所述用户设备锁定;向所述用户设备发送所述租约的租约序号信息,其中,所述租约序号信息递增。2.根据权利要求1所述的方法,其中,所述方法还包括:获取所述用户设备发送的关于所述目标文件的续租请求;若所述续租请求满足对应的续租条件,更新所述用户设备关于所述目标文件的所述租约;向所述用户设备返回所述续租请求的续租成功结果。3.根据权利要求2所述的方法,其中,所述续租条件包括所述目标文件在所述控制设备与所述用户设备中分别记录的所述租约序号信息相等,并且,所述目标文件对应的当前租约失效时间信息大于所述续租请求对应的当前时间信息。4.根据权利要求2所述的方法,其中,所述更新所述用户设备关于所述目标文件的所述租约包括:更新所述用户设备关于所述目标文件的租约失效时间信息。5.根据权利要求1所述的方法,其中,所述目标文件可供租约包括:所述目标文件未被其他用户设备锁定;所述目标文件对应的当前租约失效时间信息小于或等于所述租约请求对应的当前时间信息。6.根据权利要求1所述的方法,其中,所述方法还包括:向所述用户设备返回所述租约请求的租约失败结果。7.一种在用户设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:向控制设备发送关于分布式文件系统中目标文件的租约请求;当所述租约请求成功,获取所述控制设备发送的对应租约的租约序号信息。8.根据权利要求7所述的方法,其中,所述方法还包括:在所述租约的租约期内,向所述控制设备发送关于所述目标文件的续租请求;接收所述控制设备返回的所述续租请求的续租成功结果。9.根据权利要求8所述的方法,其中,所述方法还包括:若在请求超时阈值内未收到所述控制设备返回的续租成功结果,在所述租约期内重新向所述控制设备发送关于所述目标文件的续租请求。10.根据权利要求7所述的方法,其中,所述方法还包括:向存储设备发送关于所述目标文件的访问请求及所述租约序号信息。11.一种在存储设备端控制分布式文件系统中文件访问的方法,其中,该方法包括:获取用户设备发送的关于目标文件的访问请求,以及所述用户设备存储的租约序号信息;根据所述租约序号信息,确定是否允许所述用户设备访问所述目标文件;若允许所述用户设备访问所述目标文件,执行所述访问请求并更新所述存储设备存储的所述租约序号信息。12.根据权利要求11所述的方法,其中,所述根据所述租约序号信息,确定是否允许所述用户设备访问所述目标文件,包括:若所述存储设备存储的所述目标文件的所述租约信号信息小于或等于所述用户设备存储的所述目标文件的所述租约序号信息,允许所述用户设备访问所述目标文件。13.一种控制分布式文件系统中文件访问的控制设备,其中,该设备包括:租约请求获取装置,用于获取用户设备发送的关于分布式文件系统中目标文件的租约请求;租约分配装置,用于若所述目标文件可供租...

【专利技术属性】
技术研发人员:石超
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1