CN109154905A - 跨越多层存储的多个数据集备份版本 - Google Patents

跨越多层存储的多个数据集备份版本 Download PDF

Info

Publication number
CN109154905A
CN109154905A CN201780031635.XA CN201780031635A CN109154905A CN 109154905 A CN109154905 A CN 109154905A CN 201780031635 A CN201780031635 A CN 201780031635A CN 109154905 A CN109154905 A CN 109154905A
Authority
CN
China
Prior art keywords
backup
data
data set
cloud
accumulation layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201780031635.XA
Other languages
English (en)
Other versions
CN109154905B (zh
Inventor
K·瓦德瓦
S·A·迪伦
A·P·S·库什瓦
S·C·凯亚森纳哈利
S·P·T·纳加拉杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Network Area Storage Technology Co Ltd
Original Assignee
Network Area Storage Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Network Area Storage Technology Co Ltd filed Critical Network Area Storage Technology Co Ltd
Publication of CN109154905A publication Critical patent/CN109154905A/zh
Application granted granted Critical
Publication of CN109154905B publication Critical patent/CN109154905B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

存储层管理器创建数据集备份的保留期不同的不同版本。版本中的每一个是清楚地可识别的,即使最初表示相同数据集备份。一个版本可称为数据集备份的高速缓存版本,并且另一个版本可称为数据集备份的云版本。当数据集备份的高速缓存版本的保留期期满时,存储层管理器将数据集备份的云版本从高速缓存存储层迁移到云存储层。然后,存储层管理器可恢复由已经迁移的数据占据的存储空间,只要那个数据由于去重而未与其它数据集备份的其它高速缓存版本共享。

Description

跨越多层存储的多个数据集备份版本
技术领域
本公开一般来说涉及数据处理的领域,并且更特别地涉及备份数据。
背景技术
组织备份到公共和/或私有云存储设备(“云备份”)以降低信息技术(“IT”)成本。在云备份的情况下,组织可较容易扩大规模,因为组织的IT部门可避免扩展他们的存储基础设施的时间和金钱成本。对于云备份,组织的数据通常在存储到公共或私有云存储设备之前被去重并压缩。
附图说明
本公开的方面可通过参考附图更好地理解。
图1提供描绘创建数据集备份的保留期不同的两个不同表示的备份装置的概念方框图。
图2描绘通过来自备份应用程序的对不同表示的显式请求来使用多个保留期创建数据集备份的多个表示的示例性操作的流程图。
图3描绘示例性存储层管理器的概念图表,所述存储层管理器利用对去重数据的引用的布置来高效创建云类型备份表示。
图4描绘基于数据集的高速缓存备份对象高效创建云备份对象的示例性操作的流程图。
图5是将数据板块布置中的云备份对象和下层数据迁移到基于对象的云存储设备的示例性操作的流程图。
图6是在数据集备份的云表示迁移到云目标之后释放数据集备份的高速缓存表示的示例性操作的流程图。
图7是在数据集备份的高速缓存表示的保留期期满之后,恢复托管存储层管理器的存储系统的存储空间的示例性操作的流程图。
图8描绘具有存储层管理器的示例性存储系统,所述系统基于多个保留期而生成数据集备份的多个表示。
具体实施方式
描述
以下描述包括体现本公开的方面的示例性系统、方法、技术,和程序流。然而,应理解,可在没有这些具体细节的情况下实践本公开。例如,本公开涉及在将数据集备份迁移到云存储设备之前将数据暂时地存储在本地备份装置处。将数据从备份装置迁移到云仅仅是层到层迁移的一个例子。本公开的方面可被应用于其它层到层数据迁移,如输入/输出性能能力不同的两个云目标之间的层到层数据迁移。在其它情况下,没有详细地示出众所周知的指令实例、协议、结构和技术以便不使描述模糊。
简介
为了促进云备份同时允许数据的本地恢复,组织可使用将本地高速缓存与云备份整合的备份装置(“整合云备份装置”)。当数据将被备份到云中时,呈各种形式的数据从存储服务器到云遍历整合云备份装置。整合云备份装置本地地存储数据集备份,这允许从整合云备份装置高效恢复数据集备份。然后,整合云备份装置将数据备份迁移到指定的云目标。整合云备份装置在本地地存储时可去重、压缩,并加密来自存储服务器的数据。因而,整合云备份装置可将压缩、加密数据迁移到指定的云目标。
概述
管理存储层处的数据的应用程序(“存储层管理器”)可被设计来创建数据集备份的不同的表示或版本。数据集备份的表示中的每一个是清楚地可识别的,即使最初表示相同的数据集备份。这些不同的表示与不同的保留期相关联。这致使管理员更好地控制数据的生命周期管理并且允许附加的数据管理功能。表示是对应于数据集备份的结构化元数据。尽管去重致使表示引用相同数据集备份,但是表示和数据集备份在逻辑上是可背离后续操纵的两个不同的数据集备份。一个表示是根据生命周期管理策略在驻留在备份装置的存储层处持续相对短的保留期时提供低延时访问的数据集备份的高速缓存备份版本(“高速缓存备份”或“高速缓存表示”)。另一个表示是根据生命周期管理策略提供存留到云存储设备中持续较长保留期的数据集备份的云备份版本(“云备份”或“云表示”)。当数据集备份的高速缓存版本的保留期期满时,存储层管理器将数据集备份的云版本从高速缓存存储层迁移到云存储层。然后,存储层管理器恢复已经迁移的数据占据的存储空间,只要所述数据由于去重而未与其它数据集备份的其它高速缓存版本共享。
示例性说明
图1提供描绘创建数据集备份的保留期不同的两个不同表示的备份装置的概念方框图。从数据站点103的角度来看,备份装置110作为数据集备份的高速缓存而操作。数据站点103还包括数据存储器115和备份服务器116。数据存储器115托管备份应用程序114并且备份服务器116托管备份应用程序113。
图1以一系列字母A-D注解。这些字母表示操作的级段,其中每一个级段可包括一个或多个操作。级段不一定是互斥的,并且可以重叠。尽管这些级段被排序以用于这个例子,但是级段例示一个例子以帮助理解本公开并且不应用来限制权利要求书。属于权利要求书的范围内的主题可关于顺序和操作中的一些而变化。
级段A包括备份应用程序114将数据集A 112传输到备份装置110以用于数据集A112的备份。级段A通过请求备份装置110以将数据集A备份到云目标的备份应用程序113而触发。在这个说明中,云目标在云存储设备140中。在写入数据集A 112之前,备份应用程序114根据公共因特网文件系统(CIFS)协议、或网络文件系统(NFS)协议、或使用定制RPC(远程过程呼叫)的专有协议等存储网络协议打开与备份装置110的连接。备份应用程序114通信指示数据集A 112的识别符的请求、作为云备份的云目标的云存储设备140,和两个保留期(NP和NC)支配数据集A备份的指示。数据生命周期管理策略101界定两个保留期。保留期NP规定数据集A备份高速缓存在备份装置110处的时间周期(通常大约数天或数周),并且保留期NC规定数据集A备份存留在云存储设备140中的时间周期(通常大约数月或数年)。在一些情况下,时间周期NP的期满可触发数据集A备份到属性不同(例如,不同可访问性和不同恢复保证)的云存储设备的迁移。在建立与备份装置110的连接之后,备份应用程序114将备份装置110设定为备份目标,有效地为中间/暂时备份目标,并且开始将数据集A 112传输到备份装置110。备份应用程序114将数据集A 112传输为固定或可变大小的组成数据单元(例如,盘区、数据块等)。
级段B包括备份装置110在备份装置110上创建数据集A 112的备份的第一表示。级段B通过来自备份应用程序114的请求而触发。如提到的,请求指示数据集A 112的备份具有两个保留期。基于两个保留期的指示,备份装置110创建数据集A备份的第一表示,所述第一表示对应于保留期NC。这个第一表示包括数据集A备份元数据122。数据集A备份元数据122包括元数据122的识别符(例如,在由备份装置110管理的命名空间内唯一的识别符)。元数据122还包括数据集A 112的识别符和数据集A的元数据(例如,许可、大小、创建数据等)。当接收数据集A 112的组成数据单元时,备份装置110进行包括去重的存储效率操作。备份装置110还可以将压缩和加密应用于数据集A 112的备份。当数据集A 112被处理并被本地地存储时,备份装置110以对数据集A备份的组成单元的引用更新元数据122。因为去重正被进行,所以元数据122可引用去重数据和未去重数据。在这个说明中,备份应用程序113在级段A之前或与级段A重叠的某一时刻已将数据集B 111传输到备份装置110以用于备份。当进行去重操作时,备份装置110发现数据集A 112与数据集B 111之间的重复数据。因此,元数据122引用未去重数据129(即,没有复写在备份装置110上的数据)和去重数据130。为避免过度复杂,去重数据130仅由元数据122引用并且数据库B高速缓存备份元数据121。数据集B高速缓存的备份元数据121也引用对应于数据集B 111的未去重数据124。
级段C包括备份装置110基于保留期NP创建数据集A 112的备份的第二表示。级段C可通过来自备份装置114的显式请求而触发以创建数据集A备份的第二表示,可为来自数据集A备份的两个保留期的指示的隐式请求,或可为用于具有特定属性的数据的默认操作(例如,第二表示是针对组织的数据中的全部或仅针对某些部门创建的)。备份装置110基于数据集A备份的第一表示创建第二表示。备份应用程序110创建第二表示以包括数据集A云备份元数据123和数据集A备份125。备份装置110可通过复制第一表示来创建第二表示。尽管是副本,但是第一表示的副本的结果将至少具有第二表示的不同识别符。备份装置110可复制数据集A 112以创建数据集A备份125,并且抑制去重以维持下层数据的分离。然而,备份装置110也可允许去重,这将导致数据集A备份125为与去重数据130和未去重数据129中所表示的相同的数据集A 112的数据。换句话说,数据集A备份125可为对数据的引用。这些引用可为数据集A云备份元数据123的部分或由数据集A云备份元数据123引用的单独结构。
级段D包括备份装置110将元数据123和数据集A备份125迁移到云存储设备140。元数据123和数据集A备份125的迁移导致对象141(包括元数据142和数据集备份143),假设云存储设备140使用基于对象的存储技术。元数据123和数据集A备份125的迁移形式可取决于所使用的服务和/或协议(例如,Amazon存储服务、Microsoft Azure平台、Webscale对象存储软件、Swift对象/二进制大对象存储接口等)而变化。保留期NC支配云存储设备140上的对象141。在NC期满后,对象141可再次被迁移或迁移到不同水平的存储/存档。在成功迁移元数据123和数据集A备份125之后,元数据123可被从备份装置110移除,并且备份装置110可通知备份应用程序114:数据集A备份112已被存储在云存储设备140中。这个通知包括对象A 141的识别符以允许从云存储设备140检索。在已通知备份应用程序114之后,备份装置110可开始在组成数据单元未由备份装置110上的其它备份共享的程度上从备份装置110移除数据集A备份。
数据站点103可包括未描绘以避免不必要地使图1复杂的各种其它硬件和/或软件元件。图1描绘数据存储器115作为与备份服务器116的对比,并且避免本公开限于从备份服务器接收备份的数据集的误解。例如,客户端设备可托管将备份的数据集传输到备份装置110的备份应用程序。
除了允许管理数据集备份的单独保留期之外,创建数据集备份的多个表示允许对其它数据生命周期管理变量(例如,备份延时期、不同用户群的规定备份策略等)的更好控制。为数据集备份的多个表示中的每一个提供唯一识别符,通过允许不同变量与多个表示中的特定一个相关联来促进更好控制。服务水平协定(“SLA”)和/或存储生命周期策略(“SLP”)可被指派给具有唯一识别符的每个数据集备份表示。表示识别符的唯一性可通过使用互斥命名空间确保。例如,识别符可通过修改目录或子目录,将表示存储在不同的逻辑容器(例如,卷)中,将表示存储在具有不同安装点的介质中等占据互斥命名空间。
至少创建数据集备份的高速缓存表示和云表示允许数据隔离,例如用于安全合规性。高速缓存表示可以受限的许可创建且/或存储到受限的存储设备/存储器。云表示可服从限制云表示到有限的目的地集合(例如,仅到特定云目标)的移动的安全策略或受所述安全策略支配,并且仅通过安全连接和/或协议传输到有限的目的地集合。
创建数据集备份的多个表示也允许不同表示与符合管辖权要求的不同SLA/SLP相关联。例如,备份装置可创建数据集备份的两个云表示,其中云表示中的每一个将被存储到不同管辖权下的云存储设备中。因为管辖权可具有不同的数据隐私法,所以单独的云表示允许管辖权特定的SLA/SLP被高效地应用。例如,数据拥有者可避免创建具有每个管辖权的规则和迁移到云存储设备中的每个数据集备份的规则的评估的整体数据管理策略。另外,附加的表示可以其自己的SLA/SLP创建并且迁移到不同的备份装置作为失效转移的备用。
图2描绘通过来自备份应用程序的对不同表示的显式请求来针对多个保留期创建数据集备份的多个表示的示例性操作的流程图。当进行图2的示例性操作时,图2涉及存储层管理器。因为多个保留期的多个表示的创建对应于数据到云存储设备中的备份,所以使用术语“存储层管理器”。图2涉及存储层管理器而不是备份装置,以避免要求特别配置的设备(例如,存储装置)的解释。例如,存储层管理器可在虚拟机中执行。图2中的虚线用来示出所表示的示例性操作之间的间接或异步流。
在方框201处,存储层管理器检测到对数据集的低延时备份的请求。对数据集的低延时备份的请求可为用来在低延时存储设备中创建备份的显式请求,或者可为隐式的。备份请求可隐含地请求低延时备份作为请求数据集备份到云存储设备中的副效应。存储层管理器可被编程来将对云备份的请求处理为对云备份和低延时备份两者的请求。作为另一个例子,请求可将用来备份数据集的任何请求处理为用来创建数据集的两个表示的请求,每个表示的保留期不同。
在方框203处,云备份应用程序创建数据集的备份。存储层管理器创建数据集的备份表示。云备份应用程序将识别符指派给所创建的备份表示,并且设定备份表示为高速缓存类型的指示。高速缓存类型的备份表示被设定以指示下层数据驻留在本地,所述下层数据不一定驻留在常规高速缓存类型的存储器中。尽管数据集正被备份到相对于云存储设备的本地存储设备,但是数据集最终被备份到云存储设备中。本地存储设备将具有相比于云存储设备的较低访问延时。如图1中所例示,本地存储设备可为由源数据“本地”的数据站点处的设备(例如,存储装置)管理的存储设备(例如,磁盘存储阵列或闪存存储阵列)。“本地”可代表源数据在相同局域网上,在相同建筑物中等。不考虑特定部署,高速缓存类型的备份表示可以相比于云存储设备的较低延时访问。备份表示包括表示和数据集两者的元数据。备份表示元数据包括已由存储层管理器指派给备份表示的识别符(例如,通用唯一识别符(UUID))。备份表示可被视为包括数据集备份或者可包括对数据集备份的引用。云备份装置也例如在备份表示元数据中设定备份表示为高速缓存类型的指示。这可稍后用于按类型对表示操作的操作。备份表示可在逻辑上被视为包括数据集备份,尽管备份表示可具有对数据集备份的组成单元的引用。更一般地说,类型指示可为表示对应的存储层的值。例如,用于低访问延时存储设备的第一存储层的类型指示可为对应于第一存储层的值“1”,或可被“高速缓存”以指示其对应于低访问延时存储层。
在方框206处,存储层管理器将高速缓存备份表示识别符和高速缓存类型指示传达给请求者。存储层管理器根据由备份应用程序用来与存储层管理器通信的通信协议或存储网络协议传达识别符和类型指示。存储层管理器将识别符和类型指示提供到备份应用程序,以允许备份表示的备份应用程序管理控制或进行数据集备份的多个表示的先前描述的操纵。例如,当高速缓存备份表示的保留期期满时,请求者可通知存储层管理器。
在方框207处,存储层管理器检测到指示云目标和数据集的请求。备份应用程序可发送指示先前在其它请求中指示的数据集的另一个请求。在一些实现中,备份应用程序将单个备份请求传达到存储层管理器。云备份应用程序可将单个请求处理为用来创建多个表示的请求。
在方框208处,存储层管理器创建数据集的另一个备份表示。存储层管理器将不同的识别符指派给这个附加的备份表示,并且设定表示为云类型的表示的指示。存储层管理器设定云类型指示,以指示备份表示和所表示的数据集备份将被存储到云存储设备中。云类型备份表示具有较长的保留期,通常大致比高速缓存类型的备份表示长(例如,数天相比数年)。
在方框209处,存储层管理器将云备份表示识别符和云类型指示传达给请求者。请求者可使用云备份表示识别符来访问云存储设备中的数据集备份。存储层管理器在逐出数据或进行垃圾收集时可使用类型来区别数据集备份和元数据。
在方框210处,存储层管理器响应于迁移触发而将数据集的云类型备份表示迁移到云目标。迁移触发可为高速缓存备份表示的保留期的期满。如果云类型备份表示不包括下层数据集备份,那么下层数据集备份也被迁移并且两者之间的关系作为迁移的部分维持在云存储设备中。
图2呈现涵盖创建和管理多个表示中的变化的示例性操作。图3-4提供具有去重数据的具有多个保留期的备份的多个表示的示例性说明。在去重数据的情况下,元数据可以允许备份的多个表示以较快速的创建方式布置。图3描绘示例性存储层管理器的概念图表,所述存储层管理器利用对去重数据的引用的布置来高效创建云类型备份表示。图4描绘高效创建云类型备份表示的示例性操作的流程图。
在图3中,存储层管理器302将数据备份到使用对象存储技术的云存储设备340。存储层管理器302例示为管理数据集A和数据集B的备份。由于去重,数据集A备份和数据集B备份共享一些数据。存储层管理器302聚集组成数据集的数据单元(“组成数据单元”)。组成数据单元的聚集在本文中称为“数据板块”。存储层管理器302可由多个数据集的组成数据单元形成数据板块。数据板块的每个组成数据单元可由多个数据集共享。存储层管理器302可基于数据板块的配置大小来形成数据板块。存储层管理器302可以去重、组成数据单元积累数据板块,直到达到配置的数据板块大小,有或者没有填充。存储层管理器302维持每个数据集的元数据,以从数据板块恢复数据集。数据集的这个元数据在本文中称为组成数据映射。数据集的组成数据映射包括数据板块的识别符,所述识别符具有数据集的组成数据单元和每数据板块的位置信息。位置信息指示数据集的每个组成数据单元在数据板块内开始于何处(“数据板块偏移”)和组成数据单元的长度或大小。组成数据映射也可指示数据板块的压缩算法和加密。
在数据集A备份和数据集B备份的情况下,存储层管理器302已形成图3中的数据板块309。数据集A高速缓存备份对象301涉及组成数据映射305A。组成数据映射305A识别数据板块307,所述数据板块是数据板块309的子集。数据集A高速缓存备份对象301包括数据集A的元数据、对象为高速缓存类型的指示,和目标标识符。图3涉及对象而不是表示,因为数据集A的元数据不同于数据集A备份的下层组成数据单元的元数据。这个布置可视为将备份分解成3个部分:1)组成数据集的数据单元、2)定位组成数据单元的元数据或检索元数据,和3)数据集备份元数据。数据板块307包括数据集A的组成数据单元。对于这个有限的例子,几个组成数据单元被识别为A1、S1,和AN,其中组成数据单元S1表示共享组成数据单元。组成数据单元S1也是数据集B的组成数据单元。数据集B备份的组成数据映射311引用数据板块集合307中的组成数据单元S1以及数据板块309中的其它数据板块的元件。数据集B高速缓存备份元数据313涉及组成数据映射311。
如在图1中,图3以一系列字母A-C注解。这些字母表示操作的级段,其中每一个级段可包括一个或多个操作。级段不一定是互斥的,并且可以重叠。尽管这些级段被排序以用于这个例子,但是级段例示一个例子以帮助理解本公开并且不应用来限制权利要求书。属于权利要求书的范围内的主题可关于顺序和操作中的一些而变化。
级段A包括存储层管理器302复制并修改数据集A高速缓存备份对象301以创建数据集A云备份对象303。存储层管理器302至少修改副本以指示对象303的新识别符并将对象类型指示为云类型。级段A由来自备份应用程序的显式或隐式请求触发以备份数据集A,并且数据集A备份由多个保留期支配。
级段B包括存储层管理器302复制组成数据映射305A以创建组成数据映射305B。存储层管理器302修改数据集A云备份对象303以涉及复制的组成数据映射305B。在此刻,存储层管理器302已在没有复制下层数据的开销的情况下创建数据集A备份的两个表示。另外,存储层管理器302可依赖去重程序代码来管理使数据集A备份的两个表示发散的下层的后续修改。如果请求修改数据集A的高速缓存备份,那么去重程序代码将管理引用,使得组成数据映射305A将被更新以涉及可能在不同数据板块中的改变的数据,而组成数据映射305B将继续涉及未改变的数据。
级段C包括存储层管理器302迁移数据集A的云备份。为了迁移数据集A的云备份,存储层管理器可能在变换(例如,压缩、加密等)之后将数据集A云备份对象303、组成数据映射305B,和数据板块307传达给对象存储设备340。迁移导致存储在对象存储设备340中的四个对象:1)数据集A云备份元数据对象315;2)组成数据映射对象317;3)数据板块307中的第一数据板块的对象319;和4)数据板块307中的第二数据板块的对象321。存储层管理器302基于由存储层管理器302管理的对应结构的识别符来以对象密钥在云存储设备340中创建这些对象。存储层管理器302基于对应数据板块的数据板块识别符来以对象密钥创建对象321。类似地,存储层管理器302基于其对应数据板块的板块识别符以对象密钥创建对象319。存储层管理器302基于组成数据映射305B的识别符来以对象密钥创建组成数据映射对象317。最终,存储层管理器302基于数据集A云备份对象303的识别符来以对象密钥创建数据集A云备份元数据对象315。
虽然多少受存储层管理器302的数据管理/效率功能驱动,但是备份分离成这些多个对象允许数据集的不同方面的高效检索和存储设备到期的效率。在元数据对象315的情况下,可在不检索下层数据集A的情况下检索数据集A的元数据,这将包括检索数据板块对象319、321,和然后由检索的数据板块对象319、321重建数据集A。来自重建的开销将取决于在迁移到云存储设备中之前的数据的变换而变化。例如,存储层管理器302可在将数据板块存储到云存储设备之前压缩并加密数据板块。为重建数据集,在可从数据板块提取数据集的组成数据单元之前,检索的数据板块将被解密,然后解压。来自存储层管理器302处的去重的存储效率带进云存储设备340中,因为数据板块对象将含有跨越多个数据集备份共享的组成数据单元。在成功迁移之后,存储层管理器302可取决于支配SLP而从受管理存储设备移除数据集A云备份对象303和组成数据映射305B。例如,SLP可允许数据集备份存在于具有重叠保留期的多个层上。在移除之后和/或在取决于支配SLP而确认迁移到云存储设备340之后,数据集A的云备份的迁移可被视为完整的,并且存储层管理器302可通知请求备份应用程序数据集A已成功地存储到云存储设备340中。存储层管理器302还可以移除或逐出未组成其它数据集的数据集A的组成数据单元。
在某一时刻,存储层管理器302可将类似的操作应用于数据集B高速缓存备份元数据313和组成数据映射311。存储层管理器302将复制并修改元数据313以生成数据集B云备份对象。存储层管理器302也将复制由元数据313引用的组成数据映射311。存储层管理器302将更新数据集B云备份对象以引用组成数据映射311的副本。然后,存储层管理器302将以如以上针对数据集A所描述的引用的修改迁移数据集B云备份对象和组成数据映射311的副本。存储层管理器也将迁移由组成数据映射311的副本引用和尚未迁移到云存储设备340的数据板块309的那些。对于这个例子,当迁移数据集A备份时,存储层管理器302已经创建数据板块对象321。因此,数据集B备份的迁移将引用数据板块对象321。存储层管理器302可使用不同的技术来追踪数据板块的迁移。存储层管理器302可以到云存储设备中的成功迁移的指示来本地地标记数据板块且/或维持列出受管理存储层上已经迁移到另一个存储层的数据板块的单独数据结构并且识别目标存储层。存储层管理器302还可以使用云服务API定义的函数以确定数据板块是否已被迁移到云存储设备340。
图4描绘基于数据集的高速缓存备份对象来高效创建云备份对象的示例性操作的流程图。出于与图2-3的一致性,图4涉及进行操作的存储层管理器。图4的操作提供如图2的方框208中所指示的用于创建另一个备份表示的一个实施方案的示例性说明。在图4的操作开始的时刻,存储层管理器已经确定数据集备份将具有两个表示。
在方框402处,存储层管理器创建高速缓存备份对象的副本,以创建云备份对象。复制操作将复制备份对象但是将不同的识别符指派给副本。这个识别符可由操作系统生成并指派给副本,存储层管理器在所述操作系统中执行。
在方框403处,存储层管理器以对象为云类型的备份对象的指示修改副本。存储层管理器还可以由备份应用程序提供的名称/路径更新副本。例如,高速缓存备份对象和云备份对象可被写入到对应于对象类型的存储介质的不同路径和/或不同集合。
在方框404处,存储层管理器复制由为云备份对象的副本引用的组成数据映射。当存储层管理器复制高速缓存备份对象时,对组成数据映射的引用也被复制。
在方框408处,存储层管理器更新云备份对象以引用组成数据映射的副本。存储层管理器复制组成数据映射并且将来自云备份对象的引用更新到组成数据映射的副本,以确保备份对象是有区别的。对高速缓存备份对象的变化将不再影响云备份对象。
图5是将数据板块布置中的云备份对象和下层数据迁移到基于对象的云存储设备的示例性操作的流程图。图5涉及由图3的级段C表示的操作。
在方框501处,存储层管理器检测到迁移触发。迁移触发可从备份应用程序发送。迁移触发可以是检测到保留期NP(所述保留期NP规定高速缓存备份对象的保留期)的期满和/或有关所述期满的通知。尽管可针对每种类型的备份对象定义保留期,但是实施方案也可以针对数据集备份设定多个保留期。如果数据集备份的云备份对象存在,那么存储层管理器可作为默认操作将数据集备份的保留期的期满解释为高速缓存备份对象的期满。另外,备份应用程序或其它实体可通知存储层管理器NP已期满,并且可传达指令以迁移云备份对象。
方框503开始图5的示例性操作中的流程回路,使得,结合方框509(下方),使方框505和507针对由云备份对象的组成数据映射引用的大致每个数据板块重复至少一次。通过“大致每个数据板块”,其意味在一定条件下,由组成数据映射引用的特定数据板块可能不包括在由方框503和509形成的流程回路中。例如,存储层管理器可以进行附加的操作来确定数据板块是否已迁移到云目标,然后避免再次迁移相同数据板块的操作。存储层管理器访问云备份对象以确定由云备份对象引用的组成数据映射。以云备份对象的组成数据映射,存储层管理器可开始在对组成数据映射中的组成数据单元的引用进行迭代。
在由方框503和509建立的流程回路的每个迭代期间,在方框505处,存储层管理器针对迭代的解除引用数据板块在云目标中创建对象。存储层管理器以解除引用数据板块创建对象。例如,存储层管理器可调用通过云服务供应商的应用编程接口定义的函数来创建对象。函数的自变量中的一个可为数据板块,或许从压缩和加密变换的,并且函数的另一个自变量可为将用于识别正创建的对象的对象密钥。
在方框507处,存储层管理器更新组成数据映射,以指示用于创建的数据板块对象的对象密钥。存储层管理器将最终以用识别创建的数据板块对象的对象密钥而不是对备份装置处的数据板块的引用更新由云备份对象引用的组成数据映射。
在方框509处,存储层管理器确定是否存在由组成数据映射引用的另一个数据板块。如果存在,那么控制返回到方框503以用于处理下一个引用的数据板块。否则,控制继续方框511。
在方框511处,备份应用程序以组成数据映射在云目标中创建对象。在引用的数据板块迁移到云目标中之后,组成数据映射包括数据板块对象密钥而不是对低延时存储层或本地存储层(即,相对于存储层管理器本地的)中的数据板块的引用。如果从云目标检索组成数据映射对象,那么数据板块对象密钥将用来检索所需要的数据板块。组成数据映射对象将仍然包括恢复数据集的组成数据单元的信息(例如,位置信息、解密信息、解压信息等)。
在方框513处,在确认组成数据映射对象已被创建之后,存储层管理器更新云备份对象,以指示组成数据映射对象的对象密钥。实质上,存储层管理器以对组成数据映射的云引用(即,对象密钥)替换本地引用。
在方框515处,存储层管理器以云备份对象在云目标中创建对象。例如,存储层管理器在云备份对象作为自变量的情况下调用先前提到的创建目标函数。存储层管理器可使用云备份对象的识别符作为对象密钥,或可从云备份对象的识别符或暴露的名称(例如,文件系统句柄)导出对象密钥。
在方框517处,存储层管理器生成有关数据集备份已存留到云目标中的指示。存储层管理器可将数据集备份已被存储在云目标中传达给备份应用程序,并且提供云备份对象的对象密钥。
在方框519处,存储层管理器从相关联的低延时存储层移除云备份对象和和由云备份对象引用的组成数据映射。由组成数据映射引用的数据板块中的组成数据单元如果未由其它对象引用,那么可通过垃圾收集移除。
迁移的数据集备份的组成数据单元的移除可以不同方式进行。图6描绘作为从本地/低延时存储层删除数据集备份的高速缓存表示的部分来移除组成数据单元的示例性操作的流程图。图7并入有关移除数据集备份的期满高速缓存表示的组成数据单元的垃圾收集方面。
图6是在数据集备份的云表示迁移到云目标之后释放数据集备份的高速缓存表示的示例性操作的流程图。存储层管理器响应于存储空间恢复触发而移除高速缓存表示。存储空间恢复触发的例子包括数据集备份迁移到不同存储层的完成、有关从当前层删除数据集备份的请求,和/或与当前层相关联的保留期的期满。
在方框601处,存储层管理器检测到基于保留期的触发以移除高速缓存备份。基于保留期的触发对应于数据保留期Np的期满。然而,触发不一定是保留期的期满。触发可为对应云备份的成功迁移,其响应于保留期的期满而被触发。
在方框602处,存储层管理器生成由高速缓存备份元数据引用的组成数据单元的列表。存储层管理器可以组成数据单元的引用(例如,逻辑地址)和/或以组成数据单元的识别符(例如,块号)填充阵列、散列表、链接列表等。
在方框603处,存储层管理器开始处理列表中指示的组成数据单元中的每一个。存储层管理器遍历列表并且选择每个指示的组成数据单元供处理。
在方框605处,存储层管理器确定另一个高速缓存备份的元数据是否引用选定组成数据单元。如果指纹数据库或相关联的结构识别引用由指纹表示的数据的对象,那么存储层管理器可用指纹数据库做出选定组成数据单元是否被共享的确定。如果指纹数据库或相关联的结构未识别涉及对象,那么存储层管理器可遍历所有高速缓存备份以确定任何其它高速缓存备份是否涉及选定组成数据单元。在一些实施方案中,存储层管理器可访问指纹数据库以确定选定组成数据单元的条目是否存在。如果条目不存在或如果引用计数器被设定至1,那么存储层管理器可继续进行,犹如没有其它高速缓存备份引用选定组成数据单元。如果引用计数器大于1,那么存储层管理器继续进行以确定附加的引用是来自高速缓存备份还是云备份。如果另一个高速缓存备份引用选定组成数据单元,那么控制流动到方框606。否则,控制继续到方框607。
在方框606处,存储层管理器从列表移除选定组成数据单元的指示。如果另一个高速缓存备份引用选定组成数据单元,那么释放选定组成数据块是不适当的。
在方框607处,存储层管理器确定列表是否包括尚未选择的另一个组成数据单元。如果包括,那么控制流动回到方框603。否则,控制流动到方框609。
在方框609处,存储层管理器从低延时存储层删除仍然在列表中指示的所有组成数据单元。此时,列表应仅指示仅由保留期期满的高速缓存备份引用的组成数据单元。云备份不应引用未由其对应的高速缓存备份引用的组成数据单元。因而,引用云备份可能将被移除或正被移除。
图7是在高速缓存备份的保留期期满之后由存储层管理器恢复存储层管理器的空间的示例性操作的流程图。存储器空间恢复是通过低延时层上的大致所有数据块的广泛扫描实现。图7恢复已经迁移但仍然驻留在受管理层上的数据单元的存储器空间。
在方框701处,存储层管理器检测到高速缓存备份的保留期的期满。类似于601,基于保留期的触发对应于数据保留期Np的期满。然而,触发不一定是保留期的期满。触发可为对应云备份的成功迁移,其响应于保留期的期满而触发。
在方框702处,存储层管理器生成由高速缓存备份元数据引用的组成数据单元的列表。类似于602,存储层管理器可以组成数据单元的引用(例如,逻辑地址)和/或以组成数据单元的识别符(例如,块号)填充阵列、散列表、链接列表等。
在方框703处,存储层管理器开始扫描由存储层管理器针对存储层中的数据单元管理的存储层的存储空间。存储层管理器在扫描期间遇到的每个数据单元称为选定数据单元。针对图7的描述在扫描期间将数据单元而不是组成数据单元使用于操作,因为发现的数据单元可能未组成任何数据集。
在方框705处,存储层管理器确定另一个高速缓存备份的元数据是否引用选定数据单元。类似于图6的605,存储层管理器如何做出这个确定取决于针对数据集备份维持的信息,例如指纹数据库的特定实现。如果指纹数据库或相关联的结构识别引用由指纹表示的数据的对象,那么存储层管理器可用指纹数据库做出选定数据单元是否被共享的确定。如果指纹数据库或相关联的结构未识别涉及对象,那么存储层管理器可遍历所有高速缓存备份以确定任何其它高速缓存备份是否涉及选定数据单元。在一些实施方案中,存储层管理器可访问指纹数据库以确定选定组成数据单元的条目是否存在。如果条目不存在或条目存在并且引用计数器被设定到1,那么存储层管理器可继续进行,犹如没有其它高速缓存备份引用选定数据单元。如果引用计数器大于1,那么存储层管理器继续进行以确定附加的引用是来自高速缓存备份或云备份。如果另一个高速缓存备份引用选定组成数据单元,那么控制流动到方框707。否则,控制继续到方框709。
在方框707处,如果在列表中指示,那么存储层管理器从列表移除选定数据的指示。选定数据单元可由另一个高速缓存备份而不是当前高速缓存备份引用,在这种情况下,选定数据单元将不出现在列表上。控制从方框707流动到方框713。
如果在方框705处,存储层管理器确定另一个高速缓存备份的元数据未引用选定数据单元,那么,在方框709处,存储层管理器确定:1)组成数据单元的列表是否包括选定数据单元,和2)云备份的元数据是否也引用选定数据单元。存储层管理器做出这个确定,以识别由高速缓存备份的元数据和仍然驻留在受管理存储层上的云备份的元数据引用的那些选定数据单元。如果列表指示选定数据单元并且云备份的元数据引用选定数据单元,那么控制流动到方框711。否则,控制流动到方框713。
在方框711处,存储层管理器标记列表中的选定数据单元的指示。存储层管理器以数据旗标(例如,位值或多位值)标记指示。数据旗标用来识别将存留到云存储层中的组成数据块。在方框711完成后,流然后可继续进行方框713。
在方框713处,存储层管理器确定由存储层管理器管理的存储层的扫描是否完成。如果完成,那么控制流动到方框715。否则,控制流动回到方框703。
在方框715处,存储层管理器迁移仍然在列表中指示和以数据旗标标记的组成数据单元。存储层管理器将已在列表中标记的数据单元迁移到云存储层。这一迁移可为在云存储层中创建对象。如在针对709的描述中提到的,迁移到云存储层中的组成数据单元由云备份的元数据引用。云备份不一定是对应于高速缓存备份的云备份。换句话说,存储层的扫描确保由迁移到云存储层中尚未完成的云备份的元数据引用的组成数据单元的迁移。或者,由于云备份元数据引用例如尚未准备好迁移到云存储层中的数据板块,即使对应的高速缓存备份期满,云备份仍然不能迁移。在列表中指示的没有标记的组成数据单元表示由高速缓存备份的元数据引用的组成数据单元,但是对于所述组成数据单元,云备份已经迁移到云存储层。
在方框717处,在迁移到云存储层之后,存储层管理器删除列表中指示的未标记和标记组成数据单元两者。也就是说,一旦列表中指示的标记组成数据单元的迁移已成功地完成,然后存储层管理器可继续进行删除列表中指示的组成数据单元或使所述组成数据单元期满而不考虑标记。没有标记的那些列表的组成数据单元是先前已经迁移的组成数据单元,或许是针对另一个数据集备份迁移的共享数据单元。因此,它们的移除可被视为垃圾收集,同时在假设幂等迁移的情况下,也避免再次迁移它们的资源支出。
变化
以上示例性说明涉及在数据集备份的多个表示的情况下根据两个保留期管理数据集备份。然而,实施方案可创建数据集备份的多个表示,以促进若干保留期和大于两个的存储层。例如,每个存储层可托管存储层管理器。存储层N处的存储层管理器托管数据集备份的表示N。可通知存储层管理器有关数据集备份经受保留期NN和保留期NN+1,J1和NN+1,J2,其中两者大于NN。符号J1和J2表示不同管辖权下的迁移目标。基于多个保留期,存储层管理器创建表示NN+1,J1和表示NN+1,J2。当NN期满时,存储层管理器将表示NN+1,J1迁移到管辖权J1下的云目标,并且将表示N NN+1,J2迁移到管辖权J2下的云目标。
另外,迁移不一定是到性能能力越来越低(例如,可靠性越来越低或访问延时越来越高)的存储层。在一些情况下,数据集备份表示的保留期的期满可触发到较高进行存储层的迁移。为了说明,企业的财务文档可被迁移到高访问延时存储层达9个月,然后迁移到低访问延时存储层达报税季节的持续时间。
此外,本文使用的术语在一定程度上是灵活的。例如,示例性说明涉及数据集备份的表示。然后本公开允许数据集备份的表示分解成数据集备份的元数据和数据集。然后示例性说明将元数据分离成备份对象和数据映射。在逻辑上,数据集备份的不同表示可被视为数据集的不同备份。尽管不同的备份可具有相同的组成数据单元(例如,涉及相同的数据块、盘区,或板块),但是将元数据识别为不同,允许备份被单独地操纵和访问。为了说明,备份装置可响应于备份文件EX1的请求而创建备份文件EX1_Cache,并且创建备份文件EX2_Cloud。两个文件EX1_Cache和EX2_Cloud具有解析相同组成数据单元的指针。备份文件是有区别的,但是文件最初共享相同的组成数据单元,因为它们备份相同的数据集。
提供流程图来帮助理解说明,并且不用来限制权利要求书的范围。流程图描绘可在权利要求书的范围内变化的示例性操作。可进行附加的操作;可进行较少的操作;可并行地进行操作;并且可按不同顺序进行操作。将理解,流程图说明和/或方框图的每个方框,和流程图说明和/或方框图中的方框的组合可通过程序代码实现。可提供程序代码到通用计算机、专用计算机,或其它可编程机器或装置的处理器。
如将了解的,本公开的方面可体现为存储在一个或多个机器可读介质中的系统、方法或程序代码/指令。因此,方面可采取在本文中可全部统称为“电路”、“模块”或“系统”的硬件、软件(包括固件、常驻软件、微代码等),或软件和硬件方面的组合的形式。在示例性说明中呈现为单独模块/单元的功能可根据平台(操作系统和/或硬件)、应用程序生态系、接口、程序员偏好、编程语言、管理员偏好等中的任何一个以不同方式加以组织。
可以利用一个或多个机器可读介质的任何组合。机器可读介质可为机器可读信号介质或机器可读存储介质。机器可读存储介质可为例如但不限于使用用来存储程序代码的电子、磁性、光学、电磁、红外,或半导体技术中的任一种或组合的系统、装置,或设备。机器可读存储介质的更特定例子(非详尽列表)将包括以下:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦可编程序只读存储器(EPROM或闪速存储器)、便携式光盘只读存储器(CD-ROM)、光学存储设备、磁存储设备,或先前各项的任何适合组合。在这个文档的上下文中,机器可读存储介质可为可含有,或存储用于由指令执行系统、装置,或设备使用或结合所述指令执行系统、装置,或设备使用的程序的任何有形介质。机器可读存储介质不是机器可读信号介质。
体现在机器可读介质上的程序代码可使用任何适当介质传输,所述任何适当介质包括但不限于无线、有线、光纤电缆、RF等,或先前各项的任何适合组合。
用于执行用于本公开方面的操作的计算机程序代码可用一种或多种编程语言的任何组合撰写,所述编程语言包括面向对象的编程语言,如编程语言、C++等;动态编程语言,如Python;脚本语言,如Perl编程语言或PowerShell脚本语言;以及常规过程编程语言,如"C"编程语言或类似编程语言。程序代码可完全在独立机器上执行,可跨越多个机器以分散方式执行,并且可在一个机器上执行,而在另一个机器上提供结果和或接受输入。
程序代码/指令也可存储在机器可读介质上,所述机器可读介质可指导机器以特定方式起作用,使得存储在机器可读介质中的指令产生包括实施在流程图和/或一个或多个方框图方框中规定的功能/动作的指令的制品。
图8描绘具有存储层管理器的示例性存储系统,所述系统基于多个保留期而生成数据集备份的多个表示。存储系统包括处理器单元801(可能包括多个处理器、多个内核、多个节点,和/或实施多线程等)。存储系统包括存储器807。存储器807可为系统存储器(例如,高速缓存、SRAM、DRAM、零电容器RAM、双晶体管RAM、eDRAM、EDO RAM、DDR RAM、EEPROM、NRAM、RRAM、SONOS、PRAM等)或机器可读介质的以上已描述的可能实现中的任何一个或多个。存储系统还包括总线803(例如,PCI、ISA、PCI-Express、总线、总线、NuBus等)和网络接口805(例如,光纤通道接口、以太网接口、因特网小型计算机系统接口、SONET接口、无线接口等)。系统还包括存储层管理器811和存储介质集合815。存储层管理器811创建数据集备份的多个表示,并且基于对应的保留期和存储层允许表示中的每一个的生命周期管理。当存储系统是高速缓存存储层或低访问延时存储层时,存储层管理器811将创建多个表示,并且可将表示中的每一个存储到存储介质815中的互斥存储介质,或至少存储介质集合815中的互斥逻辑容器。存储介质815可为磁盘阵列、闪存阵列、闪存和磁盘设备的混合阵列等。当从存储层移除组成数据单元时,存储层管理器811保存由于去重而由受管理存储层处的其它数据集备份的其它表示共享的组成数据单元。存储层管理器811可使用由去重程序代码创建的信息来确定哪些组成数据单元由受管理存储层的备份表示共享和未由所述备份表示共享。先前描述的功能中的任何一个可部分地(或完全地)实现在硬件中和/或处理器单元801上。例如,功能可用特定用途集成电路实现,在逻辑上实现于处理器单元801中,或实现于外围设备或卡上的协处理器中等。此外,实现可包括图8中未例示的较少或附加部件(例如,视频卡、音频卡、附加网络接口、外围设备等)。处理器单元801和网络接口805联接到总线803。尽管例示为联接到总线803,但是存储器807可联接到处理器单元801。
多个实例可被提供来用于本文中描述为单个实例的部件、操作或结构。最终,各种部件、操作和数据存储器之间的边界在一定程度上是任意的,并且特定操作例示在特定说明性配置的上下文中。功能的其它分配被设想并且可属于本公开的范围。一般来说,在示例性配置中呈现为单独部件的结构和功能可实现为组合结构或部件。类似地,呈现为单个部件的结构和功能可实现为单独部件。这些和其它变化、修改、添加,和改善可属于本公开的范围。
术语
为了效率和便于解释,这个描述使用与云技术有关的简写术语。当涉及“云”时,这个描述正涉及云服务供应商的资源。例如,云可涵盖云服务供应商的服务器、虚拟机,和存储设备。术语“云存储设备”和“云存储层”涉及“云目标”的逻辑集合。术语“云目标”涉及具有网络地址的实体,所述网络地址可被用作网络连接的端点。实体可为物理设备(例如,服务器)或可为虚拟实体(例如,虚拟服务器或虚拟存储设备)。更一般来说,消费者可访问的云服务供应商资源是由云服务供应商实体拥有/管理通过网络连接可访问的资源。通常,访问是根据由云服务供应商提供的应用编程接口或软件开发工具包。
列举之前的短语“……中的至少一个”与连词“和”一起的使用不应被视为互斥列举,并且不应被视为具有来自每个种类的一个项目的种类的列举,除非另有陈述。列举项目中的仅一个、列举项目中的多个,以及列举项目中的一个或多个和未列出的另一个项目可与叙述“A、B,和C中的至少一个”的分句相违背。

Claims (12)

1.一种方法,其包括:
检测到与第一保留期的期满有关的触发,所述第一保留期与数据集的第一备份相关联,其中所述第一备份是第一类型的备份;和
在检测到所述触发之后,
识别第一存储层中的所述数据集的多个组成数据单元;
确定未与不同数据集的所述第一类型的另一个备份共享的所述多个组成数据单元中的一或多个的集合;
将所述多个组成数据单元从所述第一存储层迁移到第二存储层;和
从所述第一存储层移除所述一个或多个组成数据单元的集合。
2.如权利要求1所述的方法,其中迁移包括:
在所述第二存储层中针对所述多个组成数据单元中的每一个创建对象。
3.如权利要求1到2中任一项所述的方法,其中确定未共享的所述一个或多个组成数据单元的集合包括:
扫描所述第一存储层以确定对所述多个组成数据单元的引用;
确定对应于所述引用的备份;和
确定对应于所述引用的所述备份的类型。
4.如权利要求1到2中任一项所述的方法,其中确定未与所述第一类型的另一个备份共享的所述一个或多个组成数据单元的集合包括:
识别所述第一存储层中共享所述多个组成数据单元中的至少一个的多个备份;和
针对所述多个备份中的每一个,确定所述备份是否具有所述第一类型。
5.如权利要求1到3或权利要求1到2和4中的任一项所述的方法,
其中识别所述多个组成数据单元包括创建数据结构,所述数据结构包括所述多个组成数据单元的识别符;
其中确定未与所述第一类型的另一个备份共享的所述一个或多个组成数据单元的集合包括,
确定由所述第一类型的另一个备份共享的所述组成数据单元中的那些;
从所述数据结构移除识别由所述第一类型的另一个备份共享的所述组成数据单元中的那些的识别符。
6.如权利要求5所述的方法,其中确定未与所述第一类型的另一个备份共享的所述一个或多个组成数据单元的集合还包括:
确定由第二类型的另一个备份共享的所述多个组成数据单元中的那些;和
标记识别由第二类型的另一个备份共享的所述多个组成数据单元中的那些的所述识别符中的那些,
其中迁移所述组成数据单元的集合包括在从所述数据结构移除识别由所述第一类型的另一个备份共享的所述组成数据单元中的那些的所述识别符之后迁移仍然在所述数据结构中识别的每个组成数据单元。
7.如权利要求5所述的方法,其中所述第一类型对应于所述第一保留期和第一访问延时,并且所述第二类别对应于比所述第一保留期长的第二保留期并且对应于比所述第一访问延时高的第二访问延时。
8.如任何前述权利要求所述的方法,其还包括修改所述数据集的第二备份以指示所述第二存储层中的所述迁移的多个组成数据单元而不是所述第一存储层中的所述多个组成数据单元,其中所述第二备份是第二类型的备份。
9.如权利要求8所述的方法,其还包括在检测到所述触发之后将所述修改的第二备份迁移到所述第二存储层。
10.一种机器可读介质,其具有可由处理器执行以进行如权利要求1所述的方法的程序代码。
11.一种去重存储系统,其包括:
处理器单元;和
机器可读介质,其包括可由所述处理器单元执行以使所述去重存储系统进行以下操作的程序代码,
针对与数据集备份相关联的多个保留期在第一存储层中创建所述数据集备份的多个表示,
其中所述多个表示中的每一个包括关于所述数据集备份的元数据和对组成所述数据集备份的多个数据单元的引用,
其中所述多个表示中的第一表示对应于所述第一存储层和所述多个保留期中的第一保留期,
其中所述第一存储层对应于所述去重存储系统;
将所述多个数据单元和所述多个表示中的第二表示复制到第二存储层,其中所述第二存储层对应于所述多个保留期中的第二保留期;和
在所述第一保留期期满之后,恢复未由所述第一存储层处的另一个数据集备份的表示引用的所述多个数据单元中的那些占据的存储空间。
12.如权利要求11所述的去重存储系统,其中用来复制的所述程序代码包括可由所述处理器单元执行以使所述去重存储系统进行以下操作的程序代码:
针对所述多个数据单元在所述第二存储层中创建一个或多个对象的第一集合,其中所述第二存储层实施对象存储;和
在所述第二存储层中以对所述一个或多个对象的第一集合的引用而不是对所述第一存储层中的所述多个数据单元的引用创建所述第二表示的对象。
CN201780031635.XA 2016-03-25 2017-03-24 跨越多层存储的多个数据集备份版本 Active CN109154905B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/081,546 2016-03-25
US15/081,546 US10620834B2 (en) 2016-03-25 2016-03-25 Managing storage space based on multiple dataset backup versions
PCT/US2017/024156 WO2017165857A1 (en) 2016-03-25 2017-03-24 Multiple dataset backup versions across multi-tiered storage

Publications (2)

Publication Number Publication Date
CN109154905A true CN109154905A (zh) 2019-01-04
CN109154905B CN109154905B (zh) 2022-03-25

Family

ID=58548880

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780031635.XA Active CN109154905B (zh) 2016-03-25 2017-03-24 跨越多层存储的多个数据集备份版本

Country Status (4)

Country Link
US (1) US10620834B2 (zh)
EP (1) EP3433739B1 (zh)
CN (1) CN109154905B (zh)
WO (1) WO2017165857A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11310137B2 (en) 2017-02-05 2022-04-19 Veritas Technologies Llc System and method to propagate information across a connected set of entities irrespective of the specific entity type
US11429640B2 (en) 2020-02-28 2022-08-30 Veritas Technologies Llc Methods and systems for data resynchronization in a replication environment
US11531604B2 (en) 2020-02-28 2022-12-20 Veritas Technologies Llc Methods and systems for data resynchronization in a replication environment
US11928030B2 (en) * 2020-03-31 2024-03-12 Veritas Technologies Llc Optimize backup from universal share

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107870728B (zh) * 2016-09-23 2021-02-09 伊姆西Ip控股有限责任公司 用于移动数据的方法和设备
US11169960B2 (en) * 2017-06-29 2021-11-09 Ashish Govind Khurange Data transfer appliance method and system
US10581969B2 (en) * 2017-09-14 2020-03-03 International Business Machines Corporation Storage system using cloud based ranks as replica storage
US10721304B2 (en) 2017-09-14 2020-07-21 International Business Machines Corporation Storage system using cloud storage as a rank
US10372363B2 (en) 2017-09-14 2019-08-06 International Business Machines Corporation Thin provisioning using cloud based ranks
US10817204B1 (en) * 2017-10-11 2020-10-27 EMC IP Holding Company LLC Migration of versioned data between storage devices
US10990282B1 (en) 2017-11-28 2021-04-27 Pure Storage, Inc. Hybrid data tiering with cloud storage
US10936238B2 (en) * 2017-11-28 2021-03-02 Pure Storage, Inc. Hybrid data tiering
US11436344B1 (en) 2018-04-24 2022-09-06 Pure Storage, Inc. Secure encryption in deduplication cluster
US11392553B1 (en) 2018-04-24 2022-07-19 Pure Storage, Inc. Remote data management
WO2019209392A1 (en) * 2018-04-24 2019-10-31 Pure Storage, Inc. Hybrid data tiering
US11106378B2 (en) * 2018-11-21 2021-08-31 At&T Intellectual Property I, L.P. Record information management based on self describing attributes
US11853575B1 (en) 2019-06-08 2023-12-26 Veritas Technologies Llc Method and system for data consistency across failure and recovery of infrastructure
US11593215B2 (en) * 2020-02-05 2023-02-28 EMC IP Holding Company LLC Method and system for generating immutable backups with configurable retention spans
US11593017B1 (en) 2020-08-26 2023-02-28 Pure Storage, Inc. Protection of objects in an object store from deletion or overwriting
US11436103B2 (en) * 2020-10-13 2022-09-06 EMC IP Holding Company LLC Replication for cyber recovery for multiple tier data
US12019623B2 (en) 2021-09-30 2024-06-25 Salesforce, Inc. Data transfer resiliency during bulk to streaming transition

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499924A (zh) * 2008-01-31 2009-08-05 杭州美创科技有限公司 一种计算机生产系统在线割接方法
US20120095968A1 (en) * 2010-10-17 2012-04-19 Stephen Gold Storage tiers for different backup types
US20120117029A1 (en) * 2010-11-08 2012-05-10 Stephen Gold Backup policies for using different storage tiers
CN102917072A (zh) * 2012-10-31 2013-02-06 北京奇虎科技有限公司 用于数据服务器集群之间进行数据迁移的设备、系统及方法
CN102982085A (zh) * 2012-10-31 2013-03-20 北京奇虎科技有限公司 数据迁移系统和方法
CN103544075A (zh) * 2011-12-31 2014-01-29 华为数字技术(成都)有限公司 数据的处理方法和系统
US20150261792A1 (en) * 2014-03-17 2015-09-17 Commvault Systems, Inc. Maintaining a deduplication database

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5875481A (en) * 1997-01-30 1999-02-23 International Business Machines Corporation Dynamic reconfiguration of data storage devices to balance recycle throughput
US6088694A (en) 1998-03-31 2000-07-11 International Business Machines Corporation Continuous availability and efficient backup for externally referenced objects
US9075851B2 (en) 2003-12-09 2015-07-07 Emc Corporation Method and apparatus for data retention in a storage system
US7536424B2 (en) * 2004-05-02 2009-05-19 Yoram Barzilai System and methods for efficiently managing incremental data backup revisions
JP4377790B2 (ja) * 2004-09-30 2009-12-02 株式会社日立製作所 リモートコピーシステムおよびリモートコピー方法
US8527468B1 (en) 2005-02-08 2013-09-03 Renew Data Corp. System and method for management of retention periods for content in a computing system
US8825971B1 (en) * 2007-12-31 2014-09-02 Emc Corporation Age-out selection in hash caches
US8484162B2 (en) * 2008-06-24 2013-07-09 Commvault Systems, Inc. De-duplication systems and methods for application-specific data
US20100199036A1 (en) * 2009-02-02 2010-08-05 Atrato, Inc. Systems and methods for block-level management of tiered storage
US20100274772A1 (en) 2009-04-23 2010-10-28 Allen Samuels Compressed data objects referenced via address references and compression references
US20100293147A1 (en) 2009-05-12 2010-11-18 Harvey Snow System and method for providing automated electronic information backup, storage and recovery
US8554735B1 (en) * 2009-05-27 2013-10-08 MiMedia LLC Systems and methods for data upload and download
US8356017B2 (en) * 2009-08-11 2013-01-15 International Business Machines Corporation Replication of deduplicated data
US8850142B2 (en) 2009-09-15 2014-09-30 Hewlett-Packard Development Company, L.P. Enhanced virtual storage replication
US8694469B2 (en) * 2009-12-28 2014-04-08 Riverbed Technology, Inc. Cloud synthetic backups
US8799413B2 (en) * 2010-05-03 2014-08-05 Panzura, Inc. Distributing data for a distributed filesystem across multiple cloud storage systems
US8473886B2 (en) 2010-09-10 2013-06-25 Synopsys, Inc. Parallel parasitic processing in static timing analysis
US9128948B1 (en) * 2010-09-15 2015-09-08 Symantec Corporation Integration of deduplicating backup server with cloud storage
US8909845B1 (en) * 2010-11-15 2014-12-09 Symantec Corporation Systems and methods for identifying candidate duplicate memory pages in a virtual environment
US8886901B1 (en) * 2010-12-31 2014-11-11 Emc Corporation Policy based storage tiering
US9715434B1 (en) * 2011-09-30 2017-07-25 EMC IP Holding Company LLC System and method for estimating storage space needed to store data migrated from a source storage to a target storage
US9262449B2 (en) 2012-03-08 2016-02-16 Commvault Systems, Inc. Automated, tiered data retention
US9116851B2 (en) 2012-12-28 2015-08-25 Futurewei Technologies, Inc. System and method for virtual tape library over S3
US9563517B1 (en) * 2013-12-30 2017-02-07 EMC IP Holding Company LLC Cloud snapshots
US11315197B2 (en) 2014-03-13 2022-04-26 Fannie Mae Dynamic display of representative property information with interactive access to source data
US10380072B2 (en) * 2014-03-17 2019-08-13 Commvault Systems, Inc. Managing deletions from a deduplication database
US10089185B2 (en) 2014-09-16 2018-10-02 Actifio, Inc. Multi-threaded smart copy
US11783898B2 (en) 2014-09-18 2023-10-10 Jonker Llc Ephemeral storage elements, circuits, and systems
US9659047B2 (en) * 2014-12-03 2017-05-23 Netapp, Inc. Data deduplication utilizing extent ID database

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499924A (zh) * 2008-01-31 2009-08-05 杭州美创科技有限公司 一种计算机生产系统在线割接方法
US20120095968A1 (en) * 2010-10-17 2012-04-19 Stephen Gold Storage tiers for different backup types
US20120117029A1 (en) * 2010-11-08 2012-05-10 Stephen Gold Backup policies for using different storage tiers
CN103544075A (zh) * 2011-12-31 2014-01-29 华为数字技术(成都)有限公司 数据的处理方法和系统
CN102917072A (zh) * 2012-10-31 2013-02-06 北京奇虎科技有限公司 用于数据服务器集群之间进行数据迁移的设备、系统及方法
CN102982085A (zh) * 2012-10-31 2013-03-20 北京奇虎科技有限公司 数据迁移系统和方法
US20150261792A1 (en) * 2014-03-17 2015-09-17 Commvault Systems, Inc. Maintaining a deduplication database

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11310137B2 (en) 2017-02-05 2022-04-19 Veritas Technologies Llc System and method to propagate information across a connected set of entities irrespective of the specific entity type
US11429640B2 (en) 2020-02-28 2022-08-30 Veritas Technologies Llc Methods and systems for data resynchronization in a replication environment
US11531604B2 (en) 2020-02-28 2022-12-20 Veritas Technologies Llc Methods and systems for data resynchronization in a replication environment
US11847139B1 (en) 2020-02-28 2023-12-19 Veritas Technologies Llc Methods and systems for data resynchronization in a replication environment
US11928030B2 (en) * 2020-03-31 2024-03-12 Veritas Technologies Llc Optimize backup from universal share

Also Published As

Publication number Publication date
CN109154905B (zh) 2022-03-25
EP3433739A1 (en) 2019-01-30
US20170277435A1 (en) 2017-09-28
EP3433739B1 (en) 2020-02-05
WO2017165857A1 (en) 2017-09-28
US10620834B2 (en) 2020-04-14

Similar Documents

Publication Publication Date Title
CN109154905A (zh) 跨越多层存储的多个数据集备份版本
US11768803B2 (en) Snapshot metadata arrangement for efficient cloud integrated data management
US11422898B2 (en) Efficient creation of multiple retention period based representations of a dataset backup
US10489345B2 (en) Multiple retention period based representations of a dataset backup
US12007944B2 (en) Reducing stable data eviction with synthetic baseline snapshot and eviction state refresh
US10956364B2 (en) Efficient data synchronization for storage containers
JP6553822B2 (ja) 分散システムにおける範囲の分割および移動
CN109726044B (zh) 基于数据块名称从重复数据删除存储中高效还原多个文件
US8464013B2 (en) Apparatus and method for on-demand in-memory database management platform
JP4414381B2 (ja) ファイル管理プログラム、ファイル管理装置、ファイル管理方法
CN104081391B (zh) 使用文件克隆的单实例化方法和利用该方法的文件存储系统
CN109725851A (zh) 智能快照分层
JP2009522677A (ja) ノードの番号付けによるファイル・システムのダンプ/復元のための方法、システム、およびデバイス
US20100058023A1 (en) Efficiently managing modular data storage systems
US10915246B2 (en) Cloud storage format to enable space reclamation while minimizing data transfer
KR101575639B1 (ko) 지도 서비스를 위한 타일 이미지 갱신 시스템 및 그 방법
CN105046162B (zh) 在内容可寻址存储系统中维护并使用子对父映射的缓存
CN112181899A (zh) 一种元数据的处理方法、装置及计算机可读存储介质
US20220206991A1 (en) Storage system and data management method

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: American California

Applicant after: NETAPP incorporated company

Address before: American California

Applicant before: Network Area Storage Technology Co., Ltd.

GR01 Patent grant
GR01 Patent grant