当前位置: 首页 > 专利查询>厦门大学专利>正文

客户端及分布式文件系统技术方案

技术编号:38004175 阅读:8 留言:0更新日期:2023-06-30 10:18
本公开提供了一种客户端及分布式文件系统,客户端配置有可编程交换机,可编程交换机被配置为执行以下操作:响应于接收到的第一写请求,将第一写请求发送至主服务器,接收主服务器发来的n个第二写请求并分别转发至相应的第一节点服务器进行副本写入,接收第一节点服务器反馈的表征写入成功的第一回复信息,在反馈第一回复信息的第一节点服务器数量达到m(m<n)时,向用户反馈写入成功信息,在多个副本中只有少量副本还未完成写入至节点服务器时,向用户报告所有副本写入完成,并在后台继续独立处理剩余未完成的副本以减少尾部延迟,这样能够提前向用户报告写入成功,减少了写入延迟,加速了写请求处理的速度。加速了写请求处理的速度。加速了写请求处理的速度。

【技术实现步骤摘要】
客户端及分布式文件系统


[0001]本公开涉及计算机
,尤其涉及客户端及分布式文件系统。

技术介绍

[0002]计算机通过文件系统管理和存储数据,在信息爆炸的时代,人们可以存储的数据成倍增长。社交网络、搜索引擎和电子商务等现代网络服务通常具有严格的吞吐量和延迟要求。为了满足这些需求,高性能的分布式文件系统必不可少,它能够有效解决数据的存储和管理问题,也可以提高数据的可靠性和访问效率。
[0003]文件系统通过维护文件的多个副本来实现数据的稳定性和可靠性,并通过将数据读取请求分散到不同的副本来提高吞吐量,这就需要维护相同数据的多个副本。维护多个副本有利于提高系统吞吐量和减少读取延迟,通过在多个不同的服务器上维护数据的副本,可以线性扩展系统的吞吐量。如果多台服务器都可以完成读操作,那么读请求的尾延迟会大大降低。
[0004]然而,维护多个副本不利于维护数据的一致性,会增加系统的写延迟。由于数据分布在不同的服务器上,保持其一致性会产生额外的系统性能开销,从而增加系统的写入延迟。

技术实现思路

[0005]为了解决上述技术问题中的至少一个,本公开提供了客户端及分布式文件系统。
[0006]本公开第一方面提出了一种分布式文件系统的客户端,所述客户端配置有可编程交换机,所述可编程交换机分别与所述分布式文件系统的主服务器和节点服务器通信连接,所述可编程交换机被配置为执行以下操作:响应于接收到的第一写请求,将所述第一写请求发送至所述主服务器,以便于所述主服务器依据所述第一写请求生成n个第二写请求,n>1;接收所述主服务器发来的所述n个第二写请求并分别转发至相应的第一节点服务器进行副本写入,其中,每个所述第二写请求包含待写入数据,所述第二写请求的数量依据所述第一写请求确定;接收所述第一节点服务器反馈的第一回复信息,其中,所述第一回复信息表征写入成功;在反馈所述第一回复信息的第一节点服务器数量达到m时,向用户反馈写入成功信息,其中,1≤m<n。
[0007]根据本公开的一个实施方式,m=n

1。
[0008]根据本公开的一个实施方式,在反馈所述第一回复信息的节点服务器数量达到m时,所述可编程交换机被配置为执行以下操作:向所述第一节点服务器中未反馈所述第一回复信息的第二节点服务器发送提醒信息,以便于所述第二节点服务器依据所述提醒信息开始进行计时;在所述第二节点服务器反馈的回复信息为第二回复信息时,对第三节点服务器进行副本写入,其中,所述第二回复信息表征由于在预设时长内未完成写入的写入失败。
[0009]根据本公开的一个实施方式,所述可编程交换机对所述第三节点服务器进行副本
写入的步骤包括:响应于接收到的所述第二回复信息,向所述主服务器发送第二分配请求,以便于所述主服务器依据所述第二分配请求生成并发送第三写请求;响应于所述主服务器发来的所述第三写请求,依据自身存储的所述待写入数据的临时数据副本对所述第三节点服务器进行副本写入。
[0010]根据本公开的一个实施方式,所述临时数据副本的建立方式为:所述可编程交换机在接收所述第二写请求之后,生成所述待写入数据的临时数据副本并进行存储。
[0011]根据本公开的一个实施方式,所述客户端与所述主服务器和所述节点服务器进行通信时采用的数据包格式包括第一包头和第二包头,所述第一包头包含系统控制信息,所述第二包头包含请求所需的数据,所述第二包头的数量依据所述系统控制信息确定。
[0012]根据本公开的一个实施方式,所述第一包头包括以下字段:类型字段,用于标识请求信息的类型;长度字段,用于标识待写入数据的长度和所述第二包头的数量;请求ID字段,用于标识请求信息的唯一ID信息;地址字段,用于标识请求数据的地址;节点ID字段,用于标识所述节点服务器的ID信息;偏移量字段,用于标识请求数据的偏移量信息,其中,所述第二写请求中的所述节点ID字段和所述偏移量字段的内容由所述主服务器通过所述地址字段进行转换得到。
[0013]根据本公开的一个实施方式,所述可编程交换机还被配置为执行以下操作:响应于接收到的第一读请求,若与所述第一读请求对应的数据副本按相应第一写请求的指示完成所有的副本写入,则将所述第一读请求发送至所述主服务器,以便于所述主服务器依据所述第一读请求生成并发送第二读请求;接收所述主服务器发来的所述第二读请求并转发至相应的第四节点服务器进行副本读取;接收所述第四节点服务器发来的数据副本。
[0014]根据本公开的一个实施方式,在所述可编程交换机接收到的第一读请求时,若与所述第一读请求对应的数据副本还未按相应第一写请求的指示完成所有的副本写入,并且反馈所述第一回复信息的节点服务器数量达到m,则所述可编程交换机读取自身存储的待写入数据的临时数据副本并反馈给用户。
[0015]本公开第二方面提出了一种分布式文件系统,包括:客户端、主服务器和多个节点服务器,所述客户端为上述任一实施方式所述的客户端;所述客户端的可编程交换机在接收到第一写请求时,响应于接收到的第一写请求,将所述第一写请求发送至所述主服务器;所述主服务器依据所述第一写请求生成n个第二写请求并发送至所述可编程交换机,其中,每个所述第二写请求包含待写入数据,所述第二写请求的数量依据所述第一写请求确定,n>1;所述可编程交换机接收所述n个第二写请求并分别转发至相应的第一节点服务器进行副本写入;所述第一节点服务器在写入成功时向所述可编程交换机发送第一回复信息;所述可编程交换机接收所述第一节点服务器反馈的第一回复信息,并在反馈所述第一回复信息的第一节点服务器数量达到m时,向用户反馈写入成功信息,其中,1≤m<n。
附图说明
[0016]附图示出了本公开的示例性实施方式,并与其说明一起用于解释本公开的原理,其中包括了这些附图以提供对本公开的进一步理解,并且附图包括在本说明书中并构成本说明书的一部分。
[0017]图1是根据本公开的一个实施方式的采用处理系统的硬件实现方式的分布式文件
系统的示意图。
[0018]图2是根据本公开的一个实施方式的分布式文件系统处理写入请求的工作流程示意图。
[0019]图3是根据本公开的一个实施方式的分布式文件系统的数据包格式示意图。
[0020]图4是根据本公开的一个实施方式的分布式文件系统数据包的第一包头格式示意图。
[0021]图5是根据本公开的一个实施方式的分布式文件系统处理读取请求的工作流程示意图。
[0022]图6是根据本公开的一个实施方式的分布式文件系统测试平台的拓扑结构示意图。
[0023]图7是两种分布式文件系统的响应延迟的CDF测试结果曲线图。
[0024]图8是两种分布式文件系统在90%分位数上的延迟测试结果柱状图。
[0025]图9是根据本公开的一个实施方式的分布式文件系统的时间分解饼状图。
具体实施方式
[0026]下面结合附图和实施本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分布式文件系统的客户端,其特征在于,所述客户端配置有可编程交换机,所述可编程交换机分别与所述分布式文件系统的主服务器和节点服务器通信连接,所述可编程交换机被配置为执行以下操作:响应于接收到的第一写请求,将所述第一写请求发送至所述主服务器,以便于所述主服务器依据所述第一写请求生成n个第二写请求,n>1;接收所述主服务器发来的所述n个第二写请求并分别转发至相应的第一节点服务器进行副本写入,其中,每个所述第二写请求包含待写入数据,所述第二写请求的数量依据所述第一写请求确定;接收所述第一节点服务器反馈的第一回复信息,其中,所述第一回复信息表征写入成功;在反馈所述第一回复信息的第一节点服务器数量达到m时,向用户反馈写入成功信息,其中,1≤m<n。2.根据权利要求1所述的客户端,其特征在于,m=n

1。3.根据权利要求1所述的客户端,其特征在于,在反馈所述第一回复信息的节点服务器数量达到m时,所述可编程交换机被配置为执行以下操作:向所述第一节点服务器中未反馈所述第一回复信息的第二节点服务器发送提醒信息,以便于所述第二节点服务器依据所述提醒信息开始进行计时;在所述第二节点服务器反馈的回复信息为第二回复信息时,对第三节点服务器进行副本写入,其中,所述第二回复信息表征由于在预设时长内未完成写入的写入失败。4.根据权利要求3所述的客户端,其特征在于,所述可编程交换机对所述第三节点服务器进行副本写入的步骤包括:响应于接收到的所述第二回复信息,向所述主服务器发送第二分配请求,以便于所述主服务器依据所述第二分配请求生成并发送第三写请求;响应于所述主服务器发来的所述第三写请求,依据自身存储的所述待写入数据的临时数据副本对所述第三节点服务器进行副本写入。5.根据权利要求4所述的客户端,其特征在于,所述临时数据副本的建立方式为:所述可编程交换机在接收所述第二写请求之后,生成所述待写入数据的临时数据副本并进行存储。6.根据权利要求1所述的客户端,其特征在于,所述客户端与所述主服务器和所述节点服务器进行通信时采用的数据包格式包括第一包头和第二包头,所述第一包头包含系统控制信息,所述第二包头包含请求所需的数据,所述第二包头的数量依据所述系统控制信息...

【专利技术属性】
技术研发人员:黄振培向乔江靖辉范晰雯舒继武
申请(专利权)人:厦门大学
类型:发明
国别省市:

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

1