存储故障之后的安全数据访问制造技术

技术编号:29488902 阅读:15 留言:0更新日期:2021-07-30 19:00
涉及存储故障之后的安全数据访问。请求标识符与各种系统和方法一起被采用,以便使得应用能够在故障期间暂停执行并且随后一旦故障被解决则恢复执行以及与存储系统的通信。驻留在节点上的应用可以尝试访问存储系统上的目标数据。应用发送访问目标数据的请求。该请求可以与识别应用的请求标识符相关联。当存储系统经历故障时,应用接收故障通知。作为该通知的结果,应用暂停执行。当节点重建通向存储系统的连接时,应用使用相同的请求标识符来恢复执行。如果恢复请求被准予,则应用被保证目标数据在故障期间未被修改。

【技术实现步骤摘要】
存储故障之后的安全数据访问本申请是国际申请号为PCT/US2015/042555、国际申请日为2015年07月29日、于2017年03月27日进入中国国家阶段、国家申请号为201580052237.7、专利技术名称为“存储故障之后的安全数据访问”的中国专利技术专利申请的分案申请。
技术介绍
集群化环境(例如,工作负载跨多个机器分布的环境)常用于向客户机提供故障转移和高信息可用性。集群化环境允许客户机经由作为环境一部分的一个或多个节点来访问资源。集群化环境可以充当客户机、服务器、或这两者。在客户机集群服务器中,应用可以驻留在组成集群的节点中的任何节点上。应用可以发出对存储系统所存储的目标数据的访问请求。如果在访问请求期间发生错误,则应用可能经历影响执行的延迟。关于这些和其他考虑而做出示例。此外,虽然讨论了相对具体的问题,但是应当理解,这些示例不应当限于解决背景中所识别的具体问题。
技术实现思路
这一概述被提供以简化形式介绍概念的选择,这些概念下面在详细描述章节中进一步被描述。这一概述不意图识别所要求保护的主题的关键特征或必要特征,也不意图用作确定所要求保护的主题的范围的帮助。系统和方法在本文中被公开,它们使得应用能够在故障期间暂停执行并且随后一旦故障被解决则恢复执行以及与存储系统的通信。根据一些方面,驻留在客户机集群中的节点上的应用向服务器集群中的节点发送访问请求以访问目标数据。在示例中,请求标识符被用于识别请求资源的应用和/或相关工作负载。请求标识符可以与请求一起被提供。当客户机访问目标数据时,请求标识符被存储在持久存储装置中并且与所请求的目标数据相关联。在应用完成它对目标数据的操作之前,故障可能发生,其使得应用丢失与存储系统的通信。例如,存储系统中的服务器可能重启,相关文件系统可能被卸除,通信链路可能出故障,等等。在这样的情况下,由应用对存储系统所存储的目标数据而发出的访问请求将经历延迟或完全出故障。然而,即使应用对目标数据的锁定在故障期间到期,所存储的标识符也可能未从持久存储装置删除。在故障期间,应用可以接收它已经丢失与存储系统的通信的通知并且可以暂停执行。在重建与存储系统的通信时,应用可以接收解决通知并且尝试恢复执行。进一步地,应用可以向存储系统发送恢复请求以重新得到对目标数据的访问。恢复请求可以包括或参考请求标识符。请求标识符准许管理请求的存储系统确定恢复请求属于之前已经访问资源的相同应用。这样做允许服务器准予应用的访问目标数据的恢复请求。在目标数据在恢复请求之前被修改的情况下,存储系统(例如,通过从持久存储装置删除所存储的标识符)将请求标识符从目标数据解除关联,以使得应用可能无法恢复它与存储系统的先前通信。作为结果,应用确信如果它能够使用恢复请求和原始请求标识符重建通信,则目标数据自从通信故障以来尚未被修改。否则,应用被警告目标数据已经改变,并且应用可以做出是否采取其他动作的决定。示例可以被实施为计算机过程、计算系统,或者被实施为制品,诸如计算机程序产品或计算机可读介质。计算机程序产品可以是计算机存储介质,其由计算机系统可读取并且编码指令的计算机程序以用于执行计算机过程。附图说明参考以下附图来描述非限制性且非穷尽性示例。图1图示了可以用于实施本文所描述的示例的系统。图2图示了可以用于实施本文所描述的示例的系统。图3是与存储系统通信的应用的操作流程。图4是与应用通信的存储系统的操作流程。图5是图示了本专利技术的方面可以利用其而被实践的计算设备的示例的框图。图6A和图6B是本专利技术的方面可以利用其而被实践的移动计算设备的简化框图。图7是本专利技术的方面可以被实践在其中的分布式计算系统的简化框图。具体实施方式下面参考附图更完全地描述各种方面,附图形成其一部分,并且示出了具体的示例性方面。然而,示例可以按许多不同形式来实施并且不应当被解释为限于本文阐述的示例。因此,示例可以采取硬件实施、或整体地软件实施、或组合软件和硬件方面的实施的形式。以下详细描述因此不在限制性意义上被采取。本公开的示例涉及向应用提供可靠地访问存储系统上的目标数据并处置通信故障的机制。在示例中,存储系统可以是本地设备、网络附接存储设备、分布式文件服务器、或计算环境中的任何其他类型的存储系统。目标数据可以驻留在独立服务器上,或者它可以驻留在集群化环境中。在本文所公开的示例中,集群化环境可以包括一个或多个节点(例如,客户机和/或服务器设备)。在一种示例中,应用可以请求对目标数据的访问。目标数据可以存储在本地(例如,在客户机节点上)、在远程设备(例如,客户机集群化环境中的不同节点或远程服务器)中、或在与客户机集群化环境不同的集群化环境(例如,包含多个节点的环境)中。例如,在集群化环境可以是客户机或服务器集群的示例中,本领域的技术人员然而将明白,在任何其他类型的环境(诸如但不限于虚拟网络)中可以采用本文所公开的系统和方法。数据可以在多个请求器之间共享。如本文所使用的,请求器可以包括任何应用、工作负载、线程、或请求对目标数据的访问的其他过程或实体。虽然本文所描述的示例可以关于充当请求器的“应用”或“客户机”或“过程”或“工作负载”来描述,但是本公开不如此被限制。当请求器访问目标数据时,目标数据可以被锁定,由此禁止其他请求器访问它直到锁定被释放。锁定目标数据可以用来防范冲突—也就是,在进行访问的请求器已经执行它的操作之前防范由另一请求器对目标数据的修改。通常,当锁定被释放时,存储系统不再保留目标数据与请求器之间的任何关联。在一些实例中,当影响请求器与存储系统的通信的故障发生时,请求器可能无法在对目标数据的锁定被释放之前重新连接到存储系统。作为结果,请求器变得与目标数据解除关联。例如,如果存储系统使用由请求器在访问请求中提出的或参考的工作负载实例标识符来维持锁定,则当锁定被释放时,工作负载实例标识符通常可以从目标数据被删除和/或解除关联。进一步地,因为锁定被释放,所以在建立新连接时,请求器不能假定目标数据自从它上次被请求器访问以来未被修改。因此,不是恢复执行以及与存储系统的通信,而是请求器必须建立新通信会话并且假定目标数据处于未知状态。进一步地,当请求器与存储系统通信时,请求器可能期望不会接收到通信延迟或故障的指示,并且可能替代地假定它与存储系统(和/或托管请求器的客户机上的输入/输出(IO)管理器)的契约保证访问请求将被重试直到它们成功。作为结果,通信故障将使得请求器继续等待来自存储系统的响应。这可能影响请求器的行为并且引起执行延迟。例如,请求器可能“被冻结”并且无法执行任何处理直到故障被解决。本文所公开的系统和方法提供了识别请求器正在尝试恢复与存储系统的通信的情形的机制、以及向请求器通知通信延迟或故障的机制,由此减轻对执行的影响并且使得请求器能够在故障之后恢复执行和通信。图1图示了可以用于实施一些示例的系统100。系统100包括客户机102和存储系统108。在所图示的示例中,客户机102包括请求器,诸如由物理或虚拟计算设备托管本文档来自技高网...

【技术保护点】
1.一种系统,包括:/n至少一个处理器;以及/n存储器,存储指令,所述指令在由所述至少一个处理器执行时执行一组操作,所述操作包括:/n由应用生成用于启用与存储系统的通信会话期间的故障的故障报告的指示;/n向所述存储系统发送针对目标数据的第一访问请求,所述第一访问请求与第一请求标识符相关联;/n由所述系统存储所述第一请求标识符;/n接收准予对所述目标数据的访问的第一访问响应;/n接收第一故障的通知;/n基于所述第一故障的所述通知,暂停所述应用;/n恢复所述应用;/n向所述存储系统发送针对所述目标数据的恢复请求,所述恢复请求与所述第一请求标识符相关联;以及/n接收准予对所述目标数据的访问的恢复响应。/n

【技术特征摘要】
20140807 US 14/454,4151.一种系统,包括:
至少一个处理器;以及
存储器,存储指令,所述指令在由所述至少一个处理器执行时执行一组操作,所述操作包括:
由应用生成用于启用与存储系统的通信会话期间的故障的故障报告的指示;
向所述存储系统发送针对目标数据的第一访问请求,所述第一访问请求与第一请求标识符相关联;
由所述系统存储所述第一请求标识符;
接收准予对所述目标数据的访问的第一访问响应;
接收第一故障的通知;
基于所述第一故障的所述通知,暂停所述应用;
恢复所述应用;
向所述存储系统发送针对所述目标数据的恢复请求,所述恢复请求与所述第一请求标识符相关联;以及
接收准予对所述目标数据的访问的恢复响应。


2.根据权利要求1所述的系统,其中所述故障包括以下至少一项:
从所述存储系统断开;
与所述存储系统相关联的文件系统的卸除;以及
所述存储系统的重启。


3.根据权利要求1所述的系统,其中用于启用故障报告的所述指示被提供给输入/输出IO管理器,并且其中由于所述通信会话期间的故障而被延迟的访问请求被报告给所述应用。


4.根据权利要求3所述的系统,其中所述第一故障通知从所述IO管理器被接收,并且其中恢复所述应用发生在恢复通知从所述IO管理器被接收时。


5.根据权利要求1所述的系统,其中所述第一故障的通知包括对所述第一故障和所述第一故障的预期持续期中的至少一项的描述的附加故障信息。


6.根据权利要求1所述的系统,其中暂停所述应用包括暂停所述应用的IO操作和相关处理。


7.根据权利要求1所述的系统,其中接收所述第一故障的通知包括接收第二访问请求尚未被完成的通知。


8.根据权利要求1所述的系统,其中所述恢复请求包括指示所述恢复请求是用于恢复所述通信会话的请求的标记。


9.根据权利要求1所述的系统,还包括完成在所述第一故障之前未被完成的被缓存的写入请求。


10.一种计算机实现的方法,所述方法包括:
由输入/输出IO管理器启用与存储系统的通信会话期间的故障的故障报告;
向所述存储系统发送针对目标数据的第一访问请求,所述第一访问请求与第一请求标识符相关联;
存储所述第一请求标识符;
接收准予对所述目标数据的访问的第一访问响应;
从所述IO管理器接收第一故障的通知;
基于所述第一故障的所述通知,暂停所述应用;

【专利技术属性】
技术研发人员:D·克鲁泽V·彼得L·S·科波鲁D·戴恩M·乔治
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

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

1