《使用写入配置快照的动态存储分层的方法和系统.pdf》由会员分享,可在线阅读,更多相关《使用写入配置快照的动态存储分层的方法和系统.pdf(17页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102150144 A (43)申请公布日 2011.08.10 CN 102150144 A *CN102150144A* (21)申请号 200980136026.6 (22)申请日 2009.03.31 61/205,810 2009.01.23 US G06F 13/00(2006.01) (71)申请人 LSI 公司 地址 美国加利福尼亚州 (72)发明人 马丁杰斯 (74)专利代理机构 北京纽乐康知识产权代理事 务所 11210 代理人 田磊 (54) 发明名称 使用写入配置快照的动态存储分层的方法和 系统 (57) 摘要 本公开描述了一种用于动态存储分层。
2、的系统 和方法, 包括建立含有一存储热点的虚拟卷的时 间点拷贝, 将含有所述热点的虚拟卷段从一第一 存储池拷贝到一第二存储池, 和重新配置所述虚 拟卷的一逻辑块地址映射, 以引用所述第二存储 池中的所述虚拟卷段拷贝。 (30)优先权数据 (85)PCT申请进入国家阶段日 2011.03.14 (86)PCT申请的申请数据 PCT/US2009/001991 2009.03.31 (87)PCT申请的公布数据 WO2010/085228 EN 2010.07.29 (51)Int.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 3 页 说明书 4 页 附图 9 页。
3、 CN 102150146 A1/3 页 2 1. 一种用于动态存储分层的方法, 包括 : 建立含有一存储热点的虚拟卷的时间点拷贝 ; 将含有所述热点的一虚拟卷段从一第一存储池拷贝到一第二存储池 ; 以及 重新配置所述虚拟卷的一逻辑块地址映射, 以引用所述第二存储池中的所述虚拟卷段 拷贝。 2. 如权利要求 1 所述的方法, 其中所述建立含有一存储热点的虚拟卷的时间点拷贝包 括 : 将指向含有所述存储热点的所述虚拟卷的写操作重定向到一第二级存储位置。 3. 如权利要求 2 所述的方法, 其中所述将指向含有所述存储热点的所述虚拟卷的写操 作重定向到一第二级存储位置进一步包括 : 将指向含有所述存。
4、储热点的所述虚拟卷的写操作重定向到一时间点临时虚拟卷。 4. 如权利要求 2 所述的方法, 进一步包括 : 利用来自所述第二级存储位置的数据更新所述第二存储池中的所述虚拟卷段拷贝。 5. 如权利要求 2 所述的方法, 其中所述的利用来自所述第二级存储位置的数据更新所 述第二存储池中的所述虚拟卷段拷贝进一步包括 : 在删除所述虚拟卷的所述时间点拷贝后利用来自所述第二级存储位置的数据更新所 述第二存储池中的所述虚拟卷段拷贝。 6. 如权利要求 1 所述的方法, 其中所述将含有所述热点的一虚拟卷段从一第一存储池 拷贝到一第二存储池包括 : 将含有所述热点的所述虚拟卷段拷贝到一更高性能存储池的一虚拟卷。
5、段中。 7. 如权利要求 1 所述的方法, 其中所述将含有所述热点的一虚拟卷段从一第一存储池 拷贝到一第二存储池包括 : 将含有所述热点的所述虚拟卷段拷贝到一更低性能存储池的一虚拟卷段中。 8. 如权利要求 1 所述的方法, 进一步包括 : 从所述第一存储池的所述虚拟卷中取消配置含有所述热点的所述虚拟卷段。 9. 一种用于动态存储分层的系统, 包括 : 用于建立含有一存储热点的虚拟卷的时间点拷贝的构件 ; 用于将含有所述热点的一虚拟卷段从一第一存储池拷贝到一第二存储池的构件 ; 和 用于重新配置所述虚拟卷的一逻辑块地址映射以引用所述第二存储池中的所述虚拟 卷段拷贝的构件。 10. 如权利要求 。
6、9 所述的系统, 其中用于建立含有一存储热点的虚拟卷的时间点拷贝 的构件包括 : 用于将指向含有所述存储热点的所述虚拟卷的写操作重定向到一第二级存储位置的 构件。 11. 如权利要求 10 所述的系统, 其中所述用于将指向含有所述存储热点的所述虚拟卷 的写操作重定向到一第二级存储位置的构件进一步包括 : 用于将指向含有所述存储热点的所述虚拟卷的写操作重定向到一时间点临时虚拟卷 的构件。 12. 如权利要求 10 所述的系统, 进一步包括 : 权 利 要 求 书 CN 102150144 A CN 102150146 A2/3 页 3 用于利用来自所述第二级存储位置的数据更新所述第二存储池中的所。
7、述虚拟卷段拷 贝的构件。 13. 如权利要求 10 所述的系统, 其中所述的用于利用来自所述第二级存储位置的数据 更新所述第二存储池中的所述虚拟卷段拷贝的构件进一步包括 : 用于在删除所述虚拟卷的所述时间点拷贝后利用来自所述第二级存储位置的数据更 新所述第二存储池中的所述虚拟卷段拷贝的构件。 14. 如权利要求 9 所述的系统, 其中所述用于将含有所述热点的一虚拟卷段从一第一 存储池拷贝到一第二存储池的构件包括 : 用于将含有所述热点的所述虚拟卷段拷贝到一更高性能存储池的一虚拟卷段中的构 件。 15. 如权利要求 9 所述的系统, 其中所述用于将含有所述热点的一虚拟卷段从一第一 存储池拷贝到一。
8、第二存储池的构件包括 : 用于将含有所述热点的所述虚拟卷段拷贝到一更低性能存储池的一虚拟卷段中的构 件。 16. 如权利要求 9 所述的系统, 进一步包括 : 用于从所述第一存储池的所述虚拟卷中取消配置含有所述热点的所述虚拟卷段的构 件。 17. 一种用于动态存储分层的系统, 包括 : 用于建立含有一存储热点的虚拟卷的时间点拷贝的电路系统 ; 用于将含有所述热点的一虚拟卷段从一第一存储池拷贝到一第二存储池的电路系统 ; 和 用于重新配置所述虚拟卷的一逻辑块地址映射以引用所述第二存储池中的所述虚拟 卷段拷贝的电路系统。 18. 如权利要求 17 所述的系统, 其中用于建立含有一存储热点的虚拟卷的。
9、时间点拷贝 的电路系统包括 : 用于将指向含有所述存储热点的所述虚拟卷的写操作重定向到一第二级存储位置的 电路系统。 19. 如权利要求 18 所述的系统, 其中所述用于将指向含有所述存储热点的所述虚拟卷 的写操作重定向到一第二级存储位置的电路系统进一步包括 : 用于将指向含有所述存储热点的所述虚拟卷的写操作重定向到一时间点临时虚拟卷 的电路系统。 20. 如权利要求 18 所述的系统, 进一步包括 : 用于利用来自所述第二级存储位置的数据更新所述第二存储池中的所述虚拟卷段拷 贝的电路系统。 21. 如权利要求 18 所述的系统, 其中所述的用于利用来自所述第二级存储位置的数据 更新所述第二存。
10、储池中的所述虚拟卷段拷贝的电路系统进一步包括 : 用于在删除所述虚拟卷的所述时间点拷贝后利用来自所述第二级存储位置的数据更 新所述第二存储池中的所述虚拟卷段拷贝的电路系统。 22. 如权利要求 17 所述的系统, 其中所述用于将含有所述热点的一虚拟卷段从一第一 权 利 要 求 书 CN 102150144 A CN 102150146 A3/3 页 4 存储池拷贝到一第二存储池的电路系统包括 : 用于将含有所述热点的所述虚拟卷段拷贝到一更高性能存储池的一虚拟卷段中的电 路系统。 23. 如权利要求 17 所述的系统, 其中所述用于将含有所述热点的一虚拟卷段从一第一 存储池拷贝到一第二存储池的电。
11、路系统包括 : 用于将含有所述热点的所述虚拟卷段拷贝到一更低性能存储池的一虚拟卷段中的电 路系统。 24. 如权利要求 17 所述的系统, 进一步包括 : 用于从所述第一存储池的所述虚拟卷中取消配置含有所述热点的所述虚拟卷段的电 路系统。 权 利 要 求 书 CN 102150144 A CN 102150146 A1/4 页 5 使用写入配置快照的动态存储分层的方法和系统 背景技术 0001 动态存储分层 (DST) 是一种基于存储设备性能特性将存储设备分类成多个层级, 并将数据动态地重新配置在该设备中, 以平衡它们的具体容量的概念。需要的是 DST 系统 执行该重新配置时, 数据仍保持在线。
12、并可被访问。 0002 对于性能管理, 具有高活动或负载水平的数据可以被重新配置到高性能存储层。 可选择地, 具有低活动水平的数据可以被重新配置到低性能存储层, 以便提供高性能存储 层增大的容量。 发明内容 0003 本公开描述了一种动态存储分层的系统和方法。 0004 一种动态存储分层的方法, 可包括 : 建立含有一存储热点的虚拟卷的时间点拷贝 ; 将含有所述热点的虚拟卷段从第一存储池拷贝到第二存储池 ; 以及重新配置所述虚拟卷的 逻辑块地址映射, 以引用所述第二存储池中的所述虚拟卷段拷贝。 0005 一种动态存储分层的系统, 可包括 : 用于建立含有一存储热点的虚拟卷的时间点 拷贝的构件 。
13、; 用于将含有所述热点的虚拟卷段从第一存储池拷贝到第二存储池的构件 ; 以 及用于重新配置所述虚拟卷的逻辑块地址映射以引用所述第二存储池中的所述虚拟卷段 拷贝的构件。 附图说明 0006 本领域一般技术人员通过参照以下附图可以更好的理解本公开的众多优势。 0007 图 1 示出了一数据存储系统 ; 0008 图 2 示出了一数据存储系统 ; 0009 图 3 示出了一数据存储系统 ; 0010 图 4 示出了一数据存储系统 ; 0011 图 5 示出了相关动态存储分层的操作流程 ; 0012 图 6 示出了相关动态存储分层的操作流程 ; 0013 图 7 示出了相关动态存储分层的操作流程 ; 。
14、0014 图 8 示出了相关动态存储分层的操作流程 ; 0015 图 9 示出了相关动态存储分层的操作流程。 具体实施方式 0016 在下列详细描述中, 可参照形成其一部分的附图。 在附图中, 相似的符号通常表示 相似的部件, 除上下文指示例外。 具体说明书、 附图和权利要求中所述的实施例可不意味着 进行限制。 在不偏离本发明所述的精神和范围下, 可以使用其它实施例, 并可以进行其它改 变。 0017 参照附图1, 所示示例性代表的大容量存储系统100, 包括主机101计算装置、 RAID 说 明 书 CN 102150144 A CN 102150146 A2/4 页 6 控制器102和RA。
15、ID 103。 所述RAID控制器102可包括卷管理电路/软件, 从而RAID控制器 102能处理访问配置在RAID103上的若干个逻辑卷的主机101的读/写请求。 所述RAID103 可包括具有 n 个驱动器的驱动器组。 0018 参照图1, 一个或多个物理驱动器(如驱动器0-驱动器n)可逻辑上被划分成一个 或多个虚拟驱动器 ( 如 RAID103 的虚拟驱动器 104A- 虚拟驱动器 104C)。一个或多个虚拟 驱动器的部分可进一步被划分成存储池 ( 如存储池 105A、 存储池 105B 等 )。存储池可以被 定义为具有相似的性能特性的一个或多个物理驱动器 ( 或一个或多个物理驱动器的一。
16、个 或多个逻辑分段)。 例如, 存储池105A(也就是驱动器0)可包括高性能固态驱动器(SSDs), 而存储池 105B( 也就是驱动器 1 和驱动器 2) 可包括低性能设备, 如串行 ATA(SATA) 硬盘驱 动器 (HDDs)。可以区别高性能存储池与低性能存储池的因素可包括每单位时间运行的 I/O 操作数、 每单位时间读或写的字节数、 和 / 或 I/O 请求的平均反应时间。 0019 为了增强整个系统的性能, 需要的是分配具有高活动等级 ( 如高数量的 I/O 请 求都是写给数据 ) 的数据到高性能存储池同时也分配具有低活动等级的数据到低性能存 储池。为了倾向于有效 DST 解决方案,。
17、 在存储池之间移动的数据块的大小可以小于完整的 SCSI 逻辑单元 (LU)。 0020 对于特定的LU, 具有高活动等级的数据可以被识别为LU中的逻辑块地址(LBA)范 围。与其余的 LU 相比具有有效的活动载入的此 LBA 范围可以被称为热点。LU 可包含一个 以上的热点。 0021 热点当前所在的存储池可以被称为源存储池。 可移入热点的存储池被称为目的存 储池。应注意的是, 热点可涉及被频繁访问的的数据并可移动到较高性能存储池。可选择 地, 被频繁访问的的数据可以被称为冷点并利用此处描述的相对于热点移动的相同系统和 方法被移动到较低性能存储池。 0022 RAID 控制器 102 可通过。
18、监视自主机 101 接收的 I/O 请求的地址位置识别热点。对 于给定的存储池中的 LBA 的具体段, 当超过 I/O 请求阈值 ( 例如超过一具体请求速率、 请求 数量、 等等 ), 这些 LBA 可以被表明为热点并被重新配置到具有另一性能特性的存储池。 0023 参照附图 2, 虚拟卷 106 可以由一个或多个存储池的容量来提供。举例说明, 存储 池 105B 可包括来自一个或多个虚拟驱动器的 LBA( 例如, 虚拟驱动器 104A 的部分的虚拟 驱动器 LBA 段 107A 被分配到物理驱动器 0 ; 虚拟驱动器 104B 的部分的虚拟驱动器 LBA 段 107B 被分配到物理驱动器 1。
19、 ; 虚拟驱动器 104C 的部分的虚拟驱动器 LBA 段 107C 被分配到 物理驱动器 2 ; 等等 ) 0024 参照附图3和4, 虚拟卷可被映射到一个或多个虚拟驱动器中的一个或多个LBA范 围 ( 例如虚拟驱动器段 )。当虚拟卷由一个或多个存储池来提供时, 可以产生一虚拟卷段, 用于从虚拟卷 LBA 范围到虚拟驱动器 LBA 范围的每一映射。举例来说, 虚拟卷 LBA 段 108A 可包括 LBA 0 到 m, 其被映射到虚拟驱动器 104A 的 LBA0 到 m。虚拟卷 LBA 段 108B 可包括 LBAm+1 到 n, 其被映射到虚拟驱动器 104B 的 LBA 0 到 j。虚拟。
20、卷 LBA 段 108C 可包括 LBA n+1 到 p, 其被映射到虚拟驱动器 104C 的 LBA 0 到 k。 0025 大容量存储系统 100 可进一步执行快照功能。快照功能允许虚拟卷 ( 例如虚拟卷 106A)的一个或多个时间点(PiT)拷贝的建立和存储。 当为虚拟卷建立一PiT时, 所述虚拟 卷的内容可被冻结并且一 PiT 临时虚拟卷 (PTVV) 可以被建立, 其记录运行所述 PiT 后对该 说 明 书 CN 102150144 A CN 102150146 A3/4 页 7 虚拟卷进行的所有变化。因此, 该虚拟卷的原始内容在所述 PiT 被建立时被保留。这样的 快照机制可以被称。
21、为写入配置或写入再指向 ( 统称 “写入配置” ) 快照。进一步, 在当前的 PTVV 被冻结且新的 PTVV 被建立处可产生给定的 PTVV 的后续 PiT。 0026 图 5-9 描述了关于动态存储分层的代表示例操作的操作流程。在图 5-9 中, 提供 了关于上述所述的图 1-4 中的示例的讨论和解释, 和 / 或关于其它示例和语境的讨论和解 释。 然而, 应该理解的是, 所述操作流程可以在许多其它环境和语境中执行, 和/或在图1-4 的修改版本中执行。 另外, 尽管所述的各种操作流程在随后的描述中被呈现出, 应该理解的 是, 各种操作流程可以按与所描述的顺序相比其它的顺序执行, 或同时执。
22、行。 0027 参照附图 5, 示出了描述建立含有一存储热点的虚拟卷的时间点拷贝。第一 PiT( 如 PiT1) 可出现, 其可冻结一源虚拟卷 ( 如虚拟卷 106A) 的内容, 以及第一 PTVV( 如 PTVV1) 可被建立。建立 PTVV 之后, 从主机 ( 如主机 101) 到该虚拟卷的写操作可以被指向 到所述PTVV。 从该主机到该虚拟卷的的读操作将被指向到自所述PiT之后数据没有被修改 的源虚拟卷和自所述 PiT 之后数据已被修改的 PTVV。由于所有当前的写操作被指向至其 PTVV, 最近的 PiT 可以被称为 “活动” PiT。 0028 接着, 第二PiT(如PiT2)可出现。
23、, 其可冻结PTVV1的内容, 以及第二PTVV(如PTVV2) 可被建立。建立 PTVV 之后, 从主机到该虚拟卷的的写操作可以被指向到活动的 PTVV( 如 PTVV2)。从该主机到该虚拟卷的的读操作将被指向到自所述第一 PiT( 如 PiT1) 之后数据 没有被修改的源虚拟卷、 和被指向到自所述第一 PiT 之后但在第二 PiT( 如 PiT2) 之前数据 已被修改的第一 PTVV( 如 PTVV1), 和被指向到自所述第二 PiT 之后数据已被修改的活动的 PTVV( 如 PTVV2)。 0029 在删除一 PiT( 如 PiT1) 后, 所述源虚拟卷 ( 如虚拟卷 106) 就可以被。
24、重新配置, 以 使在所述 PiT 存在期间被写入请求定址的所述原始卷的部分的内容被更新以与所述 PTVV 相符。举例说明, 所述虚拟卷 106 中在所述 PiT 存在期间被写入请求定址的 LBA 可以被拷 贝到所述虚拟卷 106 的 LBA 中。 0030 参照图 6, 示出了描述拷贝含有所述热点的虚拟卷段从第一存储池到第二存储池 的操作流程。举例说明, 虚拟驱动器 LBA 段 107B( 当前与位于存储池 105B 中的虚拟驱动器 104B 的部分相关 ) 可以被拷贝到存储池 105A。含有热点的所述虚拟卷段的拷贝可发生在 为相关的虚拟卷建立一 PiT 之后以确保在拷贝操作期间数据在该虚拟卷。
25、段中的变化被所 述 PiT 保留。 0031 参照附图 7, 示出了描述重新配置所述虚拟卷的逻辑块地址映射以引用所述第二 存储池中的所述虚拟卷段拷贝的操作流程。 0032 参照附图 8, 示出了描述在具有来自所述第二级存储位置的数据的所述第二存储 池中更新所述虚拟卷段拷贝的操作流程。如上所述的关于图 5, 虚拟卷 ( 例如虚拟卷 106) 在删除 PiT 后可被自动更新以使所述虚拟卷的内容与同该 PiT 相关的 PTVV 相符。举例说 明, 已被转移至一更高性能存储池 ( 例如存储池 105A 的虚拟驱动器 104D) 的虚拟卷 106 的 段可以被更新以与先前建立的 PTVV1相符。PTVV。
26、1的 LBA 中的数据可以被拷贝到虚拟驱动 器 104D 上的虚拟驱动器 LBA 段 107D 中, 因此删除与 PTVV1相关的 PiT。 0033 参照附图 9, 示出了描述从所述第一存储池的虚拟卷取消配置 (de-allocating) 含有热点的所述虚拟卷段的操作流程。举例说明, 在虚拟驱动器 LBA 段 107B 拷贝到存储池 说 明 书 CN 102150144 A CN 102150146 A4/4 页 8 105A 时, 存储池 105B 的所述虚拟驱动器 LBA 段 107B 可以被取消配置并且之前与虚拟驱动 器 LBA 段 107B 相关的虚拟驱动器 104B 的部分可以返。
27、回到可用的系统存储池。 0034 应当相信本发明和它伴随的许多优势将通过上述说明得到理解。 也可以认为在不 偏离本发明的范围和精神或不牺牲所有实质上的优势的前提下, 在形式上, 结构上和其中 的部件的安排上的各种变化将变得明显。在此描述的形式仅仅是一示范性实施例。所附权 利要求的目的是围绕和包括这些变化。 0035 先前详细的说明可包含所述设备的各种实施例和 / 或通过使用立体图、 流程图和 /或示例的进程。 在这些立体图、 流程图和/或示例的范围内包括一个或多个功能和/或操 作, 本领域中通过这些可以理解的是在这些立体图、 流程图或示例中的每个功能和 / 或操 作可以被个体地和 / 或集体地。
28、执行, 通过广泛的硬件、 软件、 固件或虚拟地其任意结合。在 一个实施例中, 在此描述的本主题的若干部分可以通过特定用途集成电路 (ASICs)、 现场可 编程门阵列 (FPGAs)、 数字信号处理器 (DSPs), 或其它集成形式来执行。然而, 本领域一般 技术人员将承认本公开的实施例的一些方面、 整体或部分上可相当于在集成电路中执行, 正如一个或多个计算机程序在一个或多个计算机上运行 ( 例如, 正如一个或多个程序在一 个或多个计算机系统上运行 ), 正如一个或多个程序在一个或多个处理器上运行 ( 例如, 正 如一个或多个程序在一个或多个微处理器上运行 ), 正如固件或正如虚拟地其任意结合。
29、, 并 根据本公开设计该电路和 / 或写软件代码和 / 或固件将在本领域技术范围内。 0036 另外, 本领域一般技术人员将意识到本主题所述的机制在多种形式中有可被分类 为一程序产品, 且本主题在此应用的说明性实施例不顾及用于实际上实现该分类的信号关 联介质的特殊类型。信号关联介质的示例包括但不局限于以下内容 : 诸如软盘的可记录型 介质, 硬盘驱动器, 光盘 (CD), 数字化通用磁盘 (DVD), 数字磁带, 计算机存储器等等 ; 和诸 如数字和 / 或模拟通信介质 ( 例如光缆, 波导, 有线通信链路, 无线通信链路 ( 如发射机、 接 收机、 传输逻辑、 接收逻辑等 ) 等等 ) 的传。
30、输型介质。 0037 这些本领域内一般技术人员将承认本技术的状态可包括向在系统的部分硬件、 软 件、 和 / 或固件实施之间可没有区别的方向发展 ; 硬件、 软件、 和 / 或固件的使用可大体上 ( 但不总是, 即在确定的内容中硬件和软件之间的选择将变得重要 ) 是成本对效率的权衡 的设计选择。 这些本领域内一般技术人员将意识到通过各种各样的工具在此描述的进程和 / 或系统和 / 或其它技术可以被影响 ( 如硬件、 软件、 和 / 或固件 ), 以及优选的工具将随着 所述进程和/或系统和/或其它技术可被调度的内容而变化。 举例说明, 如果实施者确定速 度和准确度可是最重要的, 该实施者可以选择。
31、主要的硬件和 / 或固件工具 ; 可选择地, 如果 灵活性可是最重要的, 该实施者可以选择主要的软件实现 ; 或, 还可以选择地, 该实施者可 以选择硬件、 软件、 和 / 或固件的某种结合。因此, 可存在多种可的工具, 通过该工具所述进 程和/或设备和/或其它在此描述的技术可被实现, 它们中没有一个固有地优于其它工具, 即任何将被使用的工具可是一种取决于所述内容的选择, 在所述内容中该工具将被配置并 所述实施器的具体问题(如速度、 灵活性、 或可预测性), 它们其中的任意一个都可变化。 本 领域内一般技术人员将认识到实施的数据光缆接口方面将通常采用光指向硬件、 软件、 和 / 或固件。 说 。
32、明 书 CN 102150144 A CN 102150146 A1/9 页 9 图 1 说 明 书 附 图 CN 102150144 A CN 102150146 A2/9 页 10 图 2 说 明 书 附 图 CN 102150144 A CN 102150146 A3/9 页 11 图 3 说 明 书 附 图 CN 102150144 A CN 102150146 A4/9 页 12 图 4 说 明 书 附 图 CN 102150144 A CN 102150146 A5/9 页 13 图 5 说 明 书 附 图 CN 102150144 A CN 102150146 A6/9 页 14 图 6 说 明 书 附 图 CN 102150144 A CN 102150146 A7/9 页 15 图 7 说 明 书 附 图 CN 102150144 A CN 102150146 A8/9 页 16 图 8 说 明 书 附 图 CN 102150144 A CN 102150146 A9/9 页 17 图 9 说 明 书 附 图 CN 102150144 A 。