利用云存储的用于系统的断开连接操作技术方案

技术编号:13195986 阅读:130 留言:0更新日期:2016-05-12 07:57
当连接到云存储时,计算设备将数据和元数据写入到云存储,向计算设备的应用程序指示写入的成功,以及在向应用指示成功后,将数据和元数据写入到计算设备的本地存储。数据和元数据可以被写入到本地存储的不同区域。计算设备还可以确定其已经从崩溃中恢复或在操作断开连接后已经连接到云存储并且协调本地存储与云存储。协调可以至少基于将存储在本地存储的区域中的元数据与从云存储取回到的元数据进行的比较的。云存储可以连续地将每个数据项与其元数据一起存储为扩展块。

【技术实现步骤摘要】
【国外来华专利技术】【专利说明】利用云存储的用于系统的断开连接操作
技术介绍
越来越多地,数据被存储在云上并且从云中取回。云计算使得存储和取回操作能 够分布在大量的设备上。通过在从云的给定读取或向云的给定写入中涉及大量设备,云甚 至可以向计算设备提供比在该计算设备的本地存储上可用的更快的存储和取回。 为了利用云存储,计算设备必须连接到云,通常经由网络连接。当连接时,计算设 备从云中读取数据以及将数据写入到云。当计算设备没有连接到云时,这种对到云的连接 的依赖就会造成问题。用于断开连接操作的一种方式是,当与云断开连接时,计算设备在本 地对写入进行存储,并且在重新连接后将那些写入提供给云。然而,这种方法没有提供在断 开连接操作期间读取存储在云上的数据的能力。用于断开连接操作的另一种方式是,在连 接时,计算设备在本地对到云的写入进行镜像,并且在断开连接时在本地对写入进行存储。 这种方式使得能够在断开连接操作期间进行读取,但是为了使得该技术对本地镜像的崩溃 进行复原,客户端需要将本地镜像内容的全部与云中的相对应的数据进行比较。进一步损 害性能的是,如果写入到镜像比写入到云更慢,则以同步方式在本地对每个写入进行镜像 会降低性能,导致应用程序更长时间地等待对其写入的成功或失败的指示。
技术实现思路
当连接到云存储时,计算设备将数据和元数据写入云存储并且将该数据和元数据 异步地镜像到该计算设备的本地存储。通过对写入进行异步地镜像,使得请求写入的应用 程序能够继续进行处理而无需等待到本地存储的镜像写入的结果。当将写入镜像到本地存 储时,计算设备将数据和元数据写入到本地存储的不同区域。在崩溃或断开连接模式之后 将本地存储与云存储进行协调的期间,计算设备仅需要检查本地存储的包括元数据的区 域,并且将来自该区域的元数据与从云存储中取回的元数据进行比较。由于云存储可能显 著地快于本地存储,因此云存储可以与本地客户端存储数据和元数据不同地来存储那些数 据和元数据。例如,客户端可以将数据和元数据保存在本地存储的两个不同的区域中,而云 存储可以存储扩展块,每个扩展块包括连续存储的数据项以及其相关联的元数据。用于将 数据和源数据存储在本地存储和云存储中的这些不同技术改进了对本地存储和云存储进 行协调的速度。 提供本概述以便以简化的形式引入一系列概念,在以下的详细描述中,对这些概 念进行进一步的描述。本概述不是要标识出要求保护的主题的关键或必要特征;也不是用 于确定或限制要求保护的主题的范围。【附图说明】 参照附图来阐述详细描述。在附图中,附图标记中的最左侧的数字标识该附图标 记首次在其中出现的附图。不同附图中使用相同的附图标记指示相似或相同的项或特征。 图1示出了被配置为以不同方式存储元数据和数据以改进对云存储和本地存储进 行协调的速度的示例计算设备和云存储设备。计算设备还被配置为写入到云存储设备以及 将该写入异步地镜像到计算设备的本地存储。 图2示出了用于写入到云存储以及将该写入异步地镜像到计算设备的本地存储的 示例过程。 图3示出了用于在计算设备崩溃后对计算设备的本地存储与云存储进行协调的示 例过程。 图4示出了用于计算设备的断开操作以及在重新连接到云存储之后对计算设备的 本地存储与云存储进行协调的示例过程。图5示出了用于在断开连接操作之后,对计算设备的本地存储与云存储进行协调 的示例过程,在所述断开连接操作期间,计算设备崩溃。【具体实施方式】 本公开部分地描述了用于使得在网络故障期间能够进行连续操作以及在崩溃或 断开连接操作之后能够在计算设备和云之间进行改进的协调的技术。为了使计算设备在网 络断开时满足读取,该计算设备的云客户端写入到云存储并且将那些写入异步地镜像到计 算设备的本地存储。如本文所用的,术语"镜像"指的是将基本相同的数据元数据写入到两 个不同的存储部件。然而,数据和元数据可以不同地存储在不同的存储部件中。术语"异步 地镜像"是指向生成写入的应用程序提供写入成功的指示而不需要等待将该写入镜像到本 地存储的结果。从生成该写入的应用程序的角度,当云端确认写入成功时该写入操作结束。 应用程序不必等待本地的数据和元数据写入完成,因为云客户端异步地处理那些事件而不 阻塞该应用程序。 在各种实施例中,当云客户端将写入镜像到本地存储时,其将数据和与该数据相 关联的元数据写入到本地存储的不同区域。例如,云客户端可以将多个数据项写入到本地 存储的第一区域并且将多个相对应的元数据记录写入到本地存储的不同区域。由于元数据 比与其相关联的数据小得多,因此第二区域可以在大小上比第一区域小得多。与此相反,云 存储可以将每个数据项与其相对应的元数据记录一起连续地存储为扩展块。如果云存储使 用如硬盘等的基于寻道的存储介质,则云存储可以以这种方式来存储数据和元数据,以使 在云存储上执行的寻道次数最少。 将元数据记录存储在本地存储的不同区域以及存储在云存储的扩展块中改进了 本地存储和云存储之间的协调的速度。在崩溃或在断开连接操作随后,云客户端仅需要使 用小得多的本地存储的第二区域而不是整个本地存储。如果本地存储相对于云存储慢,则 这可能是有利的。将该区域的元数据记录与从云存储取回的元数据进行比较。基于比较的 结果,云客户端随后对本地存储和云存储进行协调。 在各种实施例中,云客户端通过在连接模式中在写入元数据前写入数据以及在断 开连接模式中在写入数据之前写入元数据来确保被镜像到本地存储的数据的完整性。例 如,在连接模式中操作的云客户端可能将数据项及其元数据记录写入到云,将该数据项的 写入镜像到本地存储,并且崩溃。云存储现在具有更新后的元数据记录而本地存储具有先 前的元数据记录或默认记录。云客户端将对本地存储和云存储进行协调,比较元数据记录 中的版本标识符,该版本标识符将指示云存储具有更新版本的数据项(注意,这是不正确但 无害的;本地存储具有更新后的数据但不具有更新后的元数据,并且本地存储的更新后数 据将由存储在云中的相同的更新后的数据进行覆写)(此处请注意主语,之前的译法使句子 的意思不清晰)。基于该比较,云客户端将利用来自云存储的数据项和元数据记录来更新本 地存储。如果将到本地存储的元数据和数据的初始写入倒置,并且计算设备在将元数据记 录写入到本地存储后但在写入数据项前崩溃,则协调会错误地指示本地存储具有与云存储 相同版本的数据项。 在断开连接模式中,将数据和元数据写入到本地存储的顺序被倒置,这是因为在 该模式中,本地存储具有最新版本的数据。例如,在断开连接模式中操作的计算设备可以将 数据项的元数据记录写入到本地存储,并且在将数据项写入到本地存储前崩溃并且随后立 即重新连接到云存储。在进入连接模式后,云客户端可以对本地存储与云存储进行协调。在 这个示例中,协调将指示(不正确但无害地)本地存储具有更新版本的数据项,使得该数据 项被用于对存储在云存储中的数据项进行更新。如果将到本地存储的元数据和数据的初始 写入倒置,并且计算设备将数据写入到本地存储但没有将更新后的元数据记录写入到本地 存储,则协调将错误地指示本地存储具有与云存储相同版本的数据项,导致云存储与本地 存储之间的不一致。 示例设备 图1示出了被配置为以不同的方式存储元数据和相对应的数据以改进对云存本文档来自技高网...

【技术保护点】
一种计算机实现的方法,包括:写入到计算设备的本地存储,所述写入对到云存储的写入进行镜像并且包括将数据写入到所述本地存储的第一区域以及将所述数据的元数据写入到所述本地存储的第二区域;确定所述计算设备已经从崩溃中恢复或在与所述云存储断开连接的操作后已经连接到所述云存储;以及至少基于存储在所述本地存储的所述第二区域中的所述元数据与从所述云存储接收的元数据的比较,来协调所述本地存储与所述云存储。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:J·W·米肯斯J·E·埃尔森E·B·南丁格尔B·范A·卡达夫O·卡恩
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国;US

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

1