一种用于授予文件元数据委托的方法和系统技术方案

技术编号:30778701 阅读:14 留言:0更新日期:2021-11-16 07:38
本发明专利技术公开了一种用于授予文件元数据委托的方法和系统,以提供一致性来满足不同类型的工作负载,因为对时间和大小元数据进行单独的委托是复杂的。所述方法包括:第一客户端节点(63)向第一接入节点(61)发送(S71)对文件的查询文件元数据属性请求;所述第一接入节点(61)确定(S72)分配给自身的元数据委托;所述第一接入节点(61)向所述第一客户端节点(63)发送(S73)查询文件元数据属性响应。系统(60)包括所述第一接入节点(61)、第二接入节点(62)、所述第一客户端节点(63)、第二客户端节点(64)和文件所有者节点(65)。点(64)和文件所有者节点(65)。点(64)和文件所有者节点(65)。

【技术实现步骤摘要】
一种用于授予文件元数据委托的方法和系统


[0001]本文公开的主题大体上涉及数据存储和数据备份,更具体地,涉及一种用于授予文件元数据委托以快速执行元数据共享的方法和系统。

技术介绍

[0002]流程、网络、软件或组织以有效的方式增长和管理不断增长的需求的能力称为可扩展性。如今,在业务环境中,数据存储或数据中心需要迅速增长。一般来说,可扩展性是衡量系统根据需求增加或减少资源的能力的衡量标准。可扩展基础架构是一种能够在网络中添加更多计算机或服务器以处理不断增长的工作负载的基础架构。为了使系统处理更多的工作负载量,必须从两个可用选项中进行选择,即向系统添加更多存储空间或添加更多系统。可扩展性可以进一步分为两种类型:垂直扩展或向上扩展和水平扩展或横向扩展。
[0003]垂直扩展或向上扩展涉及向存储系统添加扩展单元。通过向现有基础架构添加更多资源或磁盘来管理不断增长的数据需求,而水平扩展或横向扩展涉及添加更多节点,从而提高执行能力,并使基础架构能够在更短的时间内完成更多工作。水平扩展可提高单个逻辑单元的效率。在横向扩展设计中,通过向网络系统集群添加更多存储节点,容量和性能会不断增长。
[0004]因为垂直扩展在经济上变得不可行,所以大多数存储供应商现在都在存储节点的水平扩展上努力。因此,现在使用多个存储节点来形成存储集群。在集群环境中,计算和存储都分布在作为集群一部分的节点之间。这就是存储对象(文件/目录)均匀分布在作为集群一部分的节点上的原因。为了实现位置透明度,网络附属存储(network
/>attached storage,NAS)客户端可以连接到任何存储节点,以访问存储在任何其它节点上的文件/目录。NAS协议和文件系统管理如何向客户端提供文件系统的统一视图。例如,在具有三个节点(节点1、节点2、节点3)的存储集群上,给定文件可以位于节点2文件系统上,但可以通过连接到节点1、节点2或节点3来访问同一文件。NAS客户端是从文件实际存在的节点抽象出来的。
[0005]传统存储通过从所有者节点获取文件数据和元数据来抽象文件的实际存储。这里的文件数据是指文件的内容,而文件元数据包含文件大小、修改时间、创建时间等。接入节点从作为文件所有者的节点获取文件的数据或元数据涉及集群间延迟,这会增加客户端访问的整体延迟。为了避免集群间延迟,传统的存储解决方案在接入节点上放置了缓存,以便最近访问的文件数据和元数据可以存储在缓存中。在上面的示例中,节点1、节点2和节点3将具有缓存,以便缓存文件的元数据和数据。这对于只读工作负载很有效,但对于写入工作负载,缓存可能会变得不一致,并会给在NAS客户端上运行的应用程序带来严重问题。此外,在许多NAS客户端中,元数据操作非常常见。
[0006]因此,现有技术的缺点是,对于只读工作负载,可以在接入节点上放置缓存以存储最近访问的文件数据和元数据,但对于写入工作负载,缓存可能会变得不一致,并会给在NAS客户端上运行的应用程序带来严重问题。此外,在许多NAS客户端中,元数据操作非常常
见。此外,存储文件的元数据,特别是存储大小和修改时间(modification time,m

time),是极其具有挑战性的。这是NAS客户端大量使用的两个重要元数据。
[0007]现有解决方案没有提供一致性接入节点,这使得元数据不一致,并使得此类解决方案对于只读以外的任何工作负载都不可行。不需要强一致性的应用程序可以使用无一致性模型。此外,一些现有解决方案使用最终一致性,这无法用于所有类型的工作负载。
[0008]因此,需要一种机制,通过针对不同的工作负载(用例)在多个接入节点之间保持文件元数据的大小和时间一致,来提供在读写访问时存储在多个节点的缓存中的文件元数据的一致性。
[0009]上述对用于快速执行元数据共享的文件元数据委托的需求仅旨在概述传统系统/机制/技术的一些缺点,并不旨在穷举。在阅读以下描述后,传统系统/机制/技术的其它问题/缺点以及本文描述的各种非限制性实施例的对应好处会变得更加明显。

技术实现思路

[0010]提供本
技术实现思路
是为了介绍与用于授予文件元数据委托以快速执行元数据共享的方法和系统相关的概念,在下面的详细描述中进一步描述。本
技术实现思路
并不旨在确定所要求保护的主题的基本特征,也不旨在用于确定或限制所要求保护的主题的范围。
[0011]本专利技术的一个目的是在读写访问时提供存储在多个存储节点的缓存中的文件元数据的一致性。
[0012]本专利技术的另一目的是在不同工作负载(用例)的多个接入节点之间保持元数据的大小和时间一致。
[0013]本专利技术的又一个目的是授予文件元数据委托以快速执行元数据共享。
[0014]特别地,本专利技术公开了一种用于授予文件元数据委托以快速执行元数据共享的方法和系统,以提供一致性来满足不同类型的工作负载,因为对时间和大小元数据进行单独的委托是复杂的,这有利于克服现有技术存在的缺点。
[0015]本专利技术的第一方面提供了一种用于授予文件元数据委托的方法。所述方法包括以下步骤:第一客户端节点向第一接入节点发送对文件的查询文件元数据属性请求;所述第一接入节点确定分配给自身的元数据委托;所述第一接入节点向所述第一客户端节点发送查询文件元数据属性响应。
[0016]根据第一方面,在所述方法的第一种可能的实现方式中,还包括以下步骤:所述第一接入节点向文件所有者节点发送查询属性和请求元数据委托请求;所述文件所有者节点更新所述第一接入节点的元数据属性委托;所述文件所有者向所述第一接入节点发送具有元数据委托的查询属性响应;其中,所述查询属性响应包括所述元数据属性;所述第一接入节点从所述文件所有者节点接收具有元数据委托的所述查询属性响应。
[0017]根据第一方面,在所述方法的第二种可能的实现方式中,还包括以下步骤:所述第一接入节点从所述第一接入节点的元数据缓存中发送对所述文件的元数据的请求;所述第一接入节点从所述第一接入节点的所述元数据缓存中接收所述文件的所述元数据。
[0018]根据第一方面,在所述方法的第三种可能的实现方式中,还包括以下步骤:第二客户端节点向第二接入节点发送对所述文件的修改元数据属性请求;所述第二接入节点确定所述文件的所述元数据委托的可用性;所述第二接入节点向所述第二客户端节点发送修改
元数据属性响应。
[0019]根据第一方面,在所述方法的第四种可能的实现方式中,还包括以下步骤:所述第二接入节点向所述文件所有者节点发送查询属性和请求元数据委托请求;所述文件所有者节点确定所述文件所有者节点的所述元数据委托;所述文件所有者节点更新所述文件所有者节点中所述第一接入节点的所述元数据属性委托;所述文件所有者节点向所述第一接入节点发送撤销元数据委托响应;所述第一接入节点向所述文件所有者节点发送刷新元数据和撤销成功响应;所述所有者节点向所述第二接入节点发送无委托的元数据属性响应。
[0020]根据第一方面,在所述方法的第五种可能的实现方式本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种用于授予文件元数据委托的方法,其特征在于,所述方法包括以下步骤:第一客户端节点(63)向第一接入节点(61)发送(S71)对文件的查询文件元数据属性请求;所述第一接入节点(61)确定(S72)分配给自身的元数据委托;所述第一接入节点(61)向所述第一客户端节点(63)发送(S73)查询文件元数据属性响应。2.根据权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:所述第一接入节点(61)向文件所有者节点(65)发送查询属性和请求元数据委托请求;所述文件所有者节点(65)更新所述第一接入节点(61)的元数据属性委托;所述文件所有者向所述第一接入节点(61)发送具有元数据委托的查询属性响应;其中,所述查询属性响应包括所述元数据属性;所述第一接入节点(61)从所述文件所有者节点(65)接收所述具有元数据委托的查询属性响应。3.根据权利要求1所述的方法,其特征在于,所述方法还包括以下步骤:所述第一接入节点(61)从所述第一接入节点(61)的元数据缓存中发送对所述文件的元数据的请求;所述第一接入节点(61)从所述第一接入节点(61)的所述元数据缓存中接收所述文件的所述元数据。4.根据权利要求1所述的方法,其特征在于,还包括以下步骤:第二客户端节点(64)向第二接入节点(62)发送对所述文件的修改元数据属性请求;所述第二接入节点(62)确定所述文件的所述元数据委托的可用性;所述第二接入节点(62)向所述第二客户端节点(64)发送修改元数据属性响应。5.根据权利要求4所述的方法,其特征在于,所述方法还包括以下步骤:所述第二接入节点(62)向所述文件所有者节点(65)发送查询属性和请求元数据委托请求;所述文件所有者节点(65)确定所述文件所有者节点(65)的所述元数据委托;所述文件所有者节点(65)更新所述文件所有者节点(65)中所述第一接入节点(61)的所述元数据属性委托;所述文件所有者节点(65)向所述第一接入节点(61)发送撤销元数据委托响应;所述第一接入节点(61)向所述文件所有者节点(65)发送刷新元数据和撤销成功响应;所述所有者节点向所述第二接入节点(62)发送无委托的元数据属性响应。6.根据权利要求5所述的方法,其特征在于,当所述第一接入节点(61)从所述文件所有者节点(65)接收到所述撤销元数据委托响应时,所述方法还包括以下步骤:所述第一接入节点(61)向所述第一接入节点(61)的委托代理发送撤销元数据委托请求;所述第一接入节点(61)接收用于确认从所述第一接入节点(61)的所述委托代理撤销所述元数据委托的撤销元数据委托响应;所述第一接入节点(61)发送从所述第一接入节点(61)的所述元数据缓存中删除所述元数据委托的请求;
所述第一接入节点(61)接收用于确认从所述第一接入节点(61)的元数据缓存中删除所述元数据委托的响应。7.根据权利要求2所述的方法,其特征在于,所述文件所有者节点(65)更新所述第一接入节点(61)的所述元数据属性委托包括:当所述查询属性和请求元数据委托请求包括读取文件请求时,将所述元数据属性委托从MD_SIZE_NONE更新为MD_SIZE_TIME_SHARE;当所述查询属性和请求元数据委托请求包括非追加写入文件请求时,将所述元数据属性委托从MD_SIZE_NONE更新为MD_SIZE_SHARE;当所述查询属性和请求元数据委托请求包括追加写入文件请求时,将所述元数据属性委托从MD_SIZE_NONE更新为MD_SIZE_TIME_EXCLUSIVE;其中,所述文件所有者节点(65)上的所述第一接入节点(61)的默认元数据属性是MD_SIZE_TIME_NONE。8.根据权利要求2所述的方法,其特征在于,所述文件所有者节点(65)更新所述第一接入节点(61)的所述元数据属性委托包括:当所述查询属性和请求元数据委托请求包括追加写入文件请求,并且所述第一接入节点(61)具有MD_SIZE_SHARE元数据委托但没有所述文件的最后一个范围的委托时,将所述元数据属性委托从MD_SIZE_SHARE更新为MD_SIZE_TIME_EXCLUSIVE;当所述查询属性和请求元数据委托请求包括追加写入文件请求,并且所述第一接入节点(61)具有MD_SIZE_TIME_SHARE元数据委托但没有所述文件的最后一个范围的委托时,将所述元数据属性委托从MD_SIZE_TIME_SHARE更新为MD_SIZE_TIME_EXCLUSIVE。9.根据权利要求5所述的方法,其特征在于,所述文件所有者节点(65)更新所述第一接入节点(61)的所述元数据属性委托包括:当所述第一接入节点(61)具有MD_SIZE_TIME_EXCLUSIVE元数据委托,并且所述第二接入节点(62)向所述文件所有者节点(65)发送包括追加写入文件请求的查询属性和请求元数据委托请求时,将所述元数据属性委托从MD_SIZE_TIME_EXCLUSIV更新为MD_SIZE_TIME_NONE;当所述第一接入节点(61)具有MD_SIZE_SHARE元数据委托,并且所述第二接入节点(62)向所述文件所有者节点(65)发送包括追加写入文件请求的查询属性和请求元数据委托请求以扩展文件大小时,将所述元数据属性委托从MD_SIZE_SHARE更新为MD_SIZE_TIME_NONE;当所述第一接入节点(61)具有MD_SIZE_TIME_SHARE元数据委托,并且所述第二接入节点(62)向所述文件所有者节点(65)发送包括追加写入文件请求的查询属性和请求元数据委托请求以扩展所述文件大小时,将所述元数据属性委托从MD_SIZE_TIME_SHARE更新为MD_SIZE_TIME_NONE。10.根据上述权利要求中任一项所述的方法,其特征在于,所述第一客户端节点(63)和所述第二客户端节点(64)是SMB/NFS/HDFS客户端;所述第一接入节点(50,61)包括元数据缓存模块(501)和委托代理模块(502);所述第二接入节点(50,62)包括元数据缓存模块(501)和委托代理模块(502);所述文件所有者节点(51,65)包括委托主模块(511)和文件系统(512)。
11.一种用于授予文件元数据委托的系统(60),其特征在于,所述系统中的第一客户端节点(63)用于向第一接入节点(61)发送对文件的查询文件元数据属性请求;所述系统中的所述第一接入节点(...

【专利技术属性】
技术研发人员:苏迪普
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1