CN101364163B - 一种逻辑卷创建系统及其方法 - Google Patents

一种逻辑卷创建系统及其方法 Download PDF

Info

Publication number
CN101364163B
CN101364163B CN2007101432411A CN200710143241A CN101364163B CN 101364163 B CN101364163 B CN 101364163B CN 2007101432411 A CN2007101432411 A CN 2007101432411A CN 200710143241 A CN200710143241 A CN 200710143241A CN 101364163 B CN101364163 B CN 101364163B
Authority
CN
China
Prior art keywords
logical volume
timestamp
time point
data
time
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.)
Expired - Fee Related
Application number
CN2007101432411A
Other languages
English (en)
Other versions
CN101364163A (zh
Inventor
李磊
贺雷
陈玄同
刘文涵
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.)
Inventec Corp
Original Assignee
Inventec Corp
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 Inventec Corp filed Critical Inventec Corp
Priority to CN2007101432411A priority Critical patent/CN101364163B/zh
Publication of CN101364163A publication Critical patent/CN101364163A/zh
Application granted granted Critical
Publication of CN101364163B publication Critical patent/CN101364163B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种逻辑卷创建系统及其方法,以解决现有技术中的创建步骤繁琐、储存介质空间浪费以及快照创建个数受限等问题。首先,依照一空间分配算法再逻辑卷中分配一逻辑卷可用空间以及一时间戳储存区域;而后,依照逻辑卷的原始数据及随后数据修改时间点的数据,依次写时复制对应时间点的逻辑卷数据中被修改的数据,以建立对应时间点的时间戳;接着,储存对应时间点的时间戳于时间戳储存区域中;随后,建立一储存介质偏移地址指针,用于记录相应时间点的写时复制操作的写入位置;最后,储存指针于储存介质中,以作为时间戳地址的索引信息。

Description

一种逻辑卷创建系统及其方法
技术领域
本发明涉及存储技术领域,特别是一种逻辑卷创建系统及其方法。
背景技术
为了高效、有序地保证用户数据的安全,目前已出现了多种储存技术,例如独立磁盘冗余数组(RAID)、逻辑卷管理器(LVM)等。其中,逻辑卷管理器具有设备快照(snapshot)特性,快照可以对LVM的逻辑卷中某一特定时间点的数据进行实时备份,且几乎不影响数据服务的效率。目前,现有技术的逻辑卷管理器提出了一种依赖快照技术,即旧的快照依赖于新创建的快照而存在,用户改写卷组的数据仅备份于最后创建的快照中。这样,可以有效地避免储存介质空间的浪费,并很大程度地减轻诸如磁盘等储存介质读写的负担。
但是,在上述依赖快照技术中,由于旧快照总是依赖于新快照而存在,因此删除快照会受到一定的限制。换言之,只能删除最老的快照;否则会导致被删除快照之前所有快照的损坏。
下面结合图1说明现有技术的逻辑卷管理器的依赖快照创建过程及其缺陷,其中图1为现有技术的逻辑卷管理器的快照创建流程图。
如图1所示,首先,对快照创建命令进行解析,以判断快照创建命令中给定的逻辑卷是否存在,即判断创建逻辑卷或快照的命令格式是否正确(步骤102)。若命令格式不正确,则直接报错退出。若命令格式正确,则从磁盘中读取卷组腐的所有实体区块的使用情况(步骤104)。然后,验证卷组中是否有足够的剩余空间(步骤106),若空间不足则报错退出。否则,依照当前实体区块使用情况并利用一定空间分配算法为逻辑卷或快照分配请求大小的可用空间,为快照分配所需的实体区块(步骤108)。最后,在内存中记录快照信息并将其以及实体区块分配情况的改变写入磁盘(步骤110)。
现有技术的这种做法存在很多缺陷:1、处理逻辑比较复杂,特别是在数据读写请求过多时,创建快照过程需要很长时间才能完成。2、每个快照占用单独的磁盘空间,因此当一个逻辑卷存在多个快照时,则只有最后一个快照执行数据备份动作,其它快照则不会再有磁盘写入。因此,虽然在这些快照创建时就分配了一定的磁盘空间,但实际却并没有充分使用,从而造成空间上的浪费。3、在现有逻辑卷管理器架构中,快照只能由用户在某一特定时刻手工创建,因此在恢复数据时,用户可选择的时间点非常有限,无法支持持续有效的用户数据保护。4、由于快照的写时复制(Copy on Write)信息会占用大量内存,因此现有技术的逻辑卷管理器架构为了保持系统的稳定及可用性,限制了系统中可创建的快照总数。5、现有技术的逻辑卷管理器架构中,很难保证同一逻辑卷的快照数据在逻辑储存设备上保持连续存放,这样为基于区块设备层的快照数据备份带来较大麻烦。
发明内容
本发明的目的在于,为了解决上述现有技术中的问题与缺陷,提供一种逻辑卷创建系统及其方法,以解决现有技术创建步骤繁琐、磁盘空间浪费以及快照创建数量受限等问题。
为了实现上述目的,本发明提供了一种逻辑卷创建系统,包含一分配模块、一时间戳创建模块、一时间戳储存模块以及一指针模块;其中,分配模块依照一空间分配算法在逻辑卷中分配一逻辑卷可用空间以及一时间戳储存区域;时间戳创建模块备份逻辑卷的原始数据,以当逻辑卷第一次存在输入输出数据时建立一第一时间戳;以及,依照逻辑卷的原始数据的修改时间点,依次写时复制修改时间点的逻辑卷数据中被修改的数据,以建立对应修改时间点的时间戳;时间戳储存模块连续储存第一时间戳以及相应修改时间点的时间戳于时间戳储存区域中;以及,指针模块建立记录相应修改时间点的写时复制操作的写入位置的储存介质偏移地址,以作为时间戳地址的索引信息。其中,指针在建立第一时间戳前指向时间戳储存区域的起始地址,并随着修改时间点的时间戳的建立依次向后推移。
为了实现上述目的,本发明提供了一种逻辑卷创建方法,包含以下步骤:依照一空间分配算法在逻辑卷中分配一逻辑卷可用空间以及一时间戳储存区域;当逻辑卷第一次存在输入输出数据时备份逻辑卷的原始数据,以建立一第一时间戳;依照逻辑卷的原始数据的修改时间点,依次写时复制修改时间点的逻辑卷数据中被修改的数据,以建立对应修改时间点的时间戳;连续储存第一时间戳以及相应修改时间点的时间戳于时间戳储存区域中;建立一储存介质偏移地址指针,用于记录相应修改时间点的写时复制操作的写入位置;以及储存指针于一储存介质中,以作为时间戳地址的索引信息。其中,指针在建立第一时间戳前指向时间戳储存区域的起始地址,并随着修改时间点的时间戳的建立依次向后推移。
本发明通过在创建逻辑卷时多申请一逻辑储存空间,用于连续存放逻辑卷中特定时间点的修改备份数据,即数据时间戳。并通过记录当前写时复制操作写入位置的储存介质偏移地址指针,建立各个时间戳地址的索引信息,进而可通过指针获得对应时间点的逻辑卷改写数据备份。因此,本发明很大程度地简化了时间戳创建步骤,避免了储存介质输入/输出请求多时读取储存介质和分配空间的过程,从而有效解决了在数据读写请求多的场合创建快照的过程过于耗时的问题。
此外,由于创建时间戳的消耗较小,因此可以依据用户需求为每次写时复制操作单独加入时间戳,即为每次写请求创建一单独快照备份。因而可以允许用户对任意时刻的数据进行完整保护。并且,由于每次写入操作时均记录相应的写时复制数据,因而本发明冗余实现写时复制数据在内存与储存介质之间换入换出,进而在总量上控制写时复制数据对系统内存的占用,解决了快照创建总数受限制的问题。
最后,本发明中同一逻辑卷的时间戳集中在一储存区域,简化了备份、恢复数据过程的处理逻辑,因此不仅有利于维护,而且这种连续存放备份数据的机制在一定程度上也减少了储存介质空间的浪费。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为现有技术的逻辑卷管理器的快照创建流程图;
图2为本发明的逻辑卷创建系统的系统方块图;
图3为本发明的逻辑卷创建流程图;
图4为本发明的逻辑卷利用时间戳储存区域备份数据的步骤流程图;
图5为本发明的逻辑卷的时间戳备份数据布局示意图。
其中,附图标记:
12-分配模块
14-时间戳创建模块
16-指针模块
18-时间戳储存模块
步骤102-创建逻辑卷或快照的命令格式是否正确?
步骤104-读取磁盘中卷组的实体区块使用情况
步骤106-卷组中是否有足够剩余磁盘空间?
步骤108-依照当前实体区块使用情况及空间分配算法为逻辑卷或快照分配请求大小的可用空间
步骤110-将对卷组实体区块的分配改动写入磁盘
步骤202-创建逻辑卷或快照的命令格式是否正确?
步骤204-读取储存介质中卷组的实体区块使用情况
步骤206-卷组中是否有足够剩余储存介质空间?
步骤208-依照当前实体区块使用情况及空间分配算法为逻辑卷或快照分配请求大小的可用空间以及时间戳储存区域
步骤210-将对卷组实体区块的分配改动写入储存介质
步骤302-在逻辑卷中分配一较小空间,以创建时间戳储存区域
步骤304-当逻辑卷第一次存在输入输出数据时备份逻辑卷的原始数据,以建立第一时间戳
步骤306-依照逻辑卷原始数据的修改时间点,依次写时复制逻辑卷中被修改的信息,以建立对应修改时间点的时间戳
步骤308-储存第一时间戳以及相应修改时间点的时间戳于时间戳储存区域中
步骤310-建立储存介质偏移地址指针,用于记录相应修改时间点的写时复制操作写入位置
步骤312-指针随着修改时间点的建立,由时间戳储存区域的起始位置依次后移
步骤314-储存指针于储存介质中,以作为时间戳地址的索引信息
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参考图2,此为本发明的逻辑卷创建系统的系统方块图,该系统包含分配模块12、时间戳创建模块14、时间戳储存模块18以及指针模块16。分配模块12依照一空间分配算法在逻辑卷中分配一逻辑卷可用空间以及一时间戳储存区域,这里的时间戳储存区域可以是快照池,类似于储存池的概念,其中,时间戳储存区域可以是一较小的空间,其空间分配方式与现有技术的逻辑卷管理器创建逻辑卷或者快照时的分配方式相同。在创建逻辑卷时即可创建一时间戳储存区域,并为其分配一定大小的空间。
时间戳创建模块14用于创建逻辑卷某一时间点的数据备份,称作时间戳,例如,当逻辑卷第一次存在输入输出数据时备份逻辑卷的原始数据,以建立一第一时间戳;或例如,依照逻辑卷的原始数据的修改时间点,依次写时复制此修改时间点的逻辑卷数据中被修改的数据,以建立对应修改时间点的时间戳。时间戳直观的表示了其保存的特定时间逻辑卷中的数据。时间戳储存模块18连续储存第一时间戳以及相应修改时间点的时间戳于时间戳储存区域中。例如,随着用户对逻辑卷原始数据的修改,时间戳储存区域中会依次备份被修改的逻辑卷粒度(chunk)数据,即通过写时复制仅备份其中改动的粒度数据至时间戳储存区域。这时,在时间戳储存区域中同一逻辑卷的全部时间戳为连续存放。
指针模块16建立记录相应修改时间点的写时复制操作的写入位置的储存介质偏移地址,以作为时间戳地址的索引信息。在建立第一时间戳前,指针指向时间戳储存区域的分配空间的起始地址,随着修改时间点,备份数据的时间戳的建立依次向后推移。由此,指针模块16在每次创建时间戳时,把此写时复制指针储存至储存介质作为此时间戳地址的索引信息,并且此地址之后的数据则为此时间点之后逻辑卷被改写数据的备份。
请参考图3,此为本发明的逻辑卷创建流程图。
如图3所示,除步骤208与图1中的步骤108存在不同之外,步骤202、步骤204、步骤206以及步骤210均与图1中的相应相同。因此,这里仅针对步骤208作出说明,其它相同步骤则不再赘述。
步骤208为关于逻辑卷创建时之空间分配情况,即依照当前实体区块使用情况及空间分配算法为逻辑卷或快照分配请求大小的可用空间以及时间戳储存区域(步骤208)。通过与图1中的现有技术的逻辑卷创建步骤的比较可知,本发明在创建逻辑卷时多申请了一块空间,下面结合图4详细说明本发明的逻辑卷创建过程。
图4为本发明的逻辑卷利用时间戳储存区域备份数据的步骤流程图。首先,依照一空间分配算法在逻辑卷中分配一较小空间,以创建时间戳储存区域(步骤302)。这里的时间戳储存区域可以是快照池,类似于储存池的概念,其中,时间戳储存区域的空间分配方式与现有技术的逻辑卷管理器创建逻辑卷或者快照时的分配方式相同。然后,当逻辑卷第一次存在输入输出数据时备份逻辑卷的原始数据,以建立一第一时间戳(步骤304)。这里,称每次为逻辑卷创建的某一时间点的数据备份为一个时间戳,即时间戳保存的是特定时间的逻辑卷中数据。之后,依照逻辑卷的原始数据的修改时间点,依次写时复制此修改时间点的逻辑卷数据中被修改的数据,以建立对应修改时间点的时间戳(步骤306)。随着用户对逻辑卷原始数据的修改,对应时间戳中备份被修改的逻辑卷粒度(chunk)数据,即通过写时复制仅备份其中改动的粒度数据。包含第一时间戳及相应修改时间点的时间戳均储存在时间戳储存区域中(步骤308)。这时,在时间戳储存区域中同一逻辑卷的全部时间戳为连续存放。
在创建时间戳时,相应建立储存介质偏移地址指针,以记录对应时间戳的修改时间点的写时复制操作写入位置(步骤310)。在建立第一时间戳前,指针指向时间戳储存区域的分配空间的起始地址,随着修改时间点,备份数据的时间戳的建立依次向后推移(步骤312)。在每次创建时间戳时,把此写时复制指针储存至储存介质作为此时间戳地址的索引信息(步骤314),并且此地址之后的数据为此时间点之后逻辑卷被改写数据的备份。
由于先创建的时间戳总是依赖于后创建时间戳的存在,所以删除时间戳只允许删除逻辑卷中最早创建的一个时间戳。操作过程如下:把储存介质中保存的最老的时间戳的地址指针清除,并把时间戳储存区域的起始地址修改为与此时间最早时间戳相邻的时间戳,即次老的时间戳的地址。
请参照图5,此为本发明的逻辑卷的时间戳备份数据布局示意图。从图5可知,通过本发明的逻辑卷创建系统及其方法,同一逻辑卷的所有时间戳集中且连续地存放在一储存区域中,因此相比于现有技术的每个快照预先分配的单独储存介质空间利用不足的问题,本发明的时间戳存放可在一定程度上减少例如磁盘等储存介质空间的浪费。
本发明很大程度地简化了时间戳创建步骤,避免了储存介质输入/输出请求多时读取磁盘和分配空间的过程,因此有效解决了在数据读写请求多的场合创建快照过程耗时的问题。
此外,由于创建时间戳的消耗较小,因此本发明可以依据用户需求为每次写时复制操作单独加入时间戳,即为每次写请求创建一单独快照备份。因此,可以允许用户对任意时刻的数据进行完整保护。并且,由于每次写入操作时均记录相应的写时复制数据,因此本发明冗余实现写时复制数据在内存与储存介质之间的换入换出,进而在总量上控制写时复制数据对系统内存的占用,解决了快照创建总数受限制的问题。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (4)

1.一种逻辑卷创建系统,其特征在于,该系统包含:
一分配模块,依照一空间分配算法在逻辑卷中分配一逻辑卷可用空间以及一时间戳储存区域;
一时间戳创建模块,备份该逻辑卷的原始数据,以当该逻辑卷第一次存在输入输出数据时建立一第一时间戳;以及依照该逻辑卷的原始数据的修改时间点,依次写时复制该修改时间点的该逻辑卷数据中被修改的数据,以建立对应修改时间点的时间戳;
一时间戳储存模块,连续储存该第一时间戳以及该相应修改时间点的时间戳于该时间戳储存区域中;以及
一指针模块,建立记录该相应修改时间点的该写时复制操作的写入位置的该写时复制操作的写入位置的储存介质偏移地址的指针,以作为该时间戳地址的索引信息。
2.如权利要求1所述的逻辑卷创建系统,其特征在于,其中该指针在建立该第一时间戳前指向该时间戳储存区域的起始地址,并随着该修改时间点的时间戳的建立依次向后推移。
3.一种逻辑卷创建方法,其特征在于,该方法包含以下步骤:
依照一空间分配算法在逻辑卷中分配一逻辑卷可用空间以及一时间戳储存区域;
当该逻辑卷第一次存在输入输出数据时备份该逻辑卷的原始数据,以建立一第一时间戳;
依照该逻辑卷的原始数据的修改时间点,依次写时复制该修改时间点的该逻辑卷数据中被修改的数据,以建立对应修改时间点的时间戳;
连续储存该第一时间戳以及该相应修改时间点的时间戳于该时间戳储存区域中;
建立一储存介质偏移地址指针,用于记录该相应修改时间点的该写时复制操作的写入位置;以及
储存该指针于一储存介质中,以作为该时间戳地址的索引信息。
4.如权利要求3所述的逻辑卷创建方法,其特征在于,其中该指针在建立该第一时间戳前指向该时间戳储存区域的起始地址,并随着该修改时间点的时间戳的建立依次向后推移。
CN2007101432411A 2007-08-07 2007-08-07 一种逻辑卷创建系统及其方法 Expired - Fee Related CN101364163B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007101432411A CN101364163B (zh) 2007-08-07 2007-08-07 一种逻辑卷创建系统及其方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007101432411A CN101364163B (zh) 2007-08-07 2007-08-07 一种逻辑卷创建系统及其方法

Publications (2)

Publication Number Publication Date
CN101364163A CN101364163A (zh) 2009-02-11
CN101364163B true CN101364163B (zh) 2010-07-21

Family

ID=40390547

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101432411A Expired - Fee Related CN101364163B (zh) 2007-08-07 2007-08-07 一种逻辑卷创建系统及其方法

Country Status (1)

Country Link
CN (1) CN101364163B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100120397A (ko) * 2009-05-06 2010-11-16 주식회사 히타치엘지 데이터 스토리지 코리아 선택적 미러 방법
CN104881334B (zh) * 2015-02-06 2018-04-10 北京华胜天成软件技术有限公司 缓存数据的防掉电保护方法及系统
CN105553722B (zh) * 2015-12-16 2019-01-08 深圳市迪菲特科技股份有限公司 一种基于时间戳的数据交换方法、装置及系统
CN107844386B (zh) * 2016-09-19 2020-11-27 北京金山云网络技术有限公司 一种数据备份、恢复方法及装置
CN110795033A (zh) * 2019-10-18 2020-02-14 苏州浪潮智能科技有限公司 一种存储管理方法、系统、电子设备及存储介质
CN117311911B (zh) * 2023-11-29 2024-02-23 苏州元脑智能科技有限公司 一种虚拟机快照方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1658168A (zh) * 2004-02-19 2005-08-24 华为技术有限公司 一种快照过程中向源卷写数据的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1658168A (zh) * 2004-02-19 2005-08-24 华为技术有限公司 一种快照过程中向源卷写数据的方法

Also Published As

Publication number Publication date
CN101364163A (zh) 2009-02-11

Similar Documents

Publication Publication Date Title
CN1331063C (zh) 基于数据卷快照的在线数据备份方法
CN101814044B (zh) 元数据处理方法及装置
CN102012852B (zh) 一种增量写快照的实现方法
CN101364163B (zh) 一种逻辑卷创建系统及其方法
CN104503706B (zh) 一种基于磁盘阵列的数据存储及读取方法
CN100498796C (zh) 逻辑日志生成方法、数据库备份/恢复方法与系统
US7610465B2 (en) Method and related apparatus for data migration utilizing disk arrays
CN101782875B (zh) 存储设备和数据存储方法
US7398354B2 (en) Achieving data consistency with point-in-time copy operations in a parallel I/O environment
CN102033786B (zh) 一种对象存储系统中修复副本一致性的方法
CN102866956B (zh) 基于固态存储介质的数据实时跟踪存储系统及方法
CN109582443A (zh) 基于分布式存储技术的虚拟机备份系统
CN104063187B (zh) 适用于安防应用的硬盘文件系统及其运行方法
CN102682012A (zh) 一种文件系统内读写数据的方法及装置
CN104035830A (zh) 一种数据恢复方法和装置
CN102096561A (zh) 分层数据存储处理方法、装置以及存储设备
CN103092849A (zh) 文件系统簇管理方法
CN106104515A (zh) 利用非易失性存储器的文件系统设计和故障恢复方法
CN103713973A (zh) 一种基于hdd和ssd的混合存储备份方法及系统
US20090083503A1 (en) System of creating logical volume and method thereof
CN103034457B (zh) 多个硬盘组成的存储系统数据存储方法
CN102096613A (zh) 一种生成快照的方法及装置
CN100507865C (zh) 集中建立依赖型快照的方法
US11989457B2 (en) System and method for performing data read-write operations in zoned storage devices
JPH10254642A (ja) 記憶装置システム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100721

Termination date: 20150807

EXPY Termination of patent right or utility model