KR101091235B1 - 볼륨들의 볼륨 그룹에 대한 백업 동작 수행 - Google Patents

볼륨들의 볼륨 그룹에 대한 백업 동작 수행 Download PDF

Info

Publication number
KR101091235B1
KR101091235B1 KR1020097015546A KR20097015546A KR101091235B1 KR 101091235 B1 KR101091235 B1 KR 101091235B1 KR 1020097015546 A KR1020097015546 A KR 1020097015546A KR 20097015546 A KR20097015546 A KR 20097015546A KR 101091235 B1 KR101091235 B1 KR 101091235B1
Authority
KR
South Korea
Prior art keywords
backup
volume group
volume
volumes
group
Prior art date
Application number
KR1020097015546A
Other languages
English (en)
Other versions
KR20090113271A (ko
Inventor
루 응웬
Original Assignee
인터내셔널 비지네스 머신즈 코포레이션
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 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20090113271A publication Critical patent/KR20090113271A/ko
Application granted granted Critical
Publication of KR101091235B1 publication Critical patent/KR101091235B1/ko

Links

Images

Classifications

    • 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
    • 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/1461Backup scheduling policy
    • 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/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/16Error detection or correction of the data by redundancy in hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Control Of Steam Boilers And Waste-Gas Boilers (AREA)

Abstract

볼륨들의 볼륨 그룹에 대하여 백업 동작을 수행하기 위한 방법 및 시스템이 개시된다. 복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정이 유지된다. 백업 설정이 적용될 볼륨 그룹이 선택된다. 볼륨 그룹은 호스트들과 볼륨들을 연관시키며, 볼륨 그룹 내의 볼륨들에 액세스하는 것이 가능한 호스트들을 표시한다. 볼륨 그룹과 연관된 볼륨들에 관련하여 수행된 백업들을 표시하는 볼륨 그룹에 대한 백업 정보를 생성하고, 백업 설정에 따라 볼륨 그룹에 관련하여 백업을 수행할지 여부를 판정하도록 볼륨 그룹에 대한 백업 정보를 처리하고, 볼륨 그룹에 대하여 백업 동작을 수행하라고 판정하는 것에 응답하여 볼륨 그룹 내의 각각의 볼륨을 백업할, 선택된 볼륨 그룹에 대한 자동 백업 동작이 호출된다.

Description

볼륨들의 볼륨 그룹에 대한 백업 동작 수행{PERFORMING BACKUP OPERATIONS FOR A VOLUME GROUP OF VOLUMES}
본 발명은 볼륨(volume)들의 볼륨 그룹에 대하여 백업(backup) 동작을 수행하는 방법 및 시스템에 관한 것이다.
백업 컴퓨팅 환경에 있어서, 백업 클라이언트 프로그램은 백업 이미지에 파일들을 백업하도록 클라이언트 파일 시스템에서의 클라이언트 파일들을 백업 서버 프로그램으로 전달한다. 티볼리(Tivoli®) 저장 관리자(TSM; Tivoli® Storage Manager) 백업 아카이브 클라이언트는 클라이언트 파일을 포함한 객체를 다수의 클라이언트들에 대한 백업 객체들을 관리하는 TSM 백업 서버에 전달함으로써 모든 클라이언트 파일들을 백업할 수 있다(티볼리는 미국 및 기타 국가에서의 IBM(International Business Machines Corporation)의 등록 상표임).
저장 시스템에서 구성되는 볼륨들은 볼륨 그룹들로 조직화될 수 있으며, 여기에서 호스트들에는 그 볼륨 그룹에 할당된 볼륨들에 액세스하기 위하여 볼륨 그룹에의 액세스가 주어진다. 저장 관리자(storage administrator)는 통상적으로 볼륨들을 백업할 백업 동작을 수동으로 호출한 다음, 볼륨들에 관련하여 백업 동작의 상태를 판정하도록 저장 서버 및 백업 소프트웨어에 수동으로 질의한다. 이어서, 저장 관리자는 백업 동작의 상태 및 각각의 볼륨에 대하여 생성된 다수의 백업들을 수동으로 추적할 수 있다.
볼륨들의 볼륨 그룹에 대하여 백업 동작을 수행하기 위한 방법, 시스템 및 제조 물품이 제공된다. 복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정이 유지된다. 상기 백업 설정이 적용될 볼륨 그룹이 선택된다. 볼륨 그룹은 호스트들과 볼륨들을 연관시키며, 상기 볼륨 그룹 내의 볼륨들에 액세스하는 것이 가능한 호스트들을 표시한다. 선택된 볼륨 그룹에 대하여 자동 백업 동작이 호출됨으로써, 상기 볼륨 그룹과 연관된 볼륨들에 관련하여 수행된 백업들을 표시하는 상기 볼륨 그룹에 대한 백업 정보를 생성하고, 상기 백업 설정에 따라 상기 볼륨 그룹에 관련하여 백업을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하고, 상기 볼륨 그룹에 대하여 백업 동작을 수행하라고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨을 백업한다.
부가의 실시예에서, 상기 볼륨 그룹의 백업은 상기 볼륨 그룹 내의 각각의 볼륨을 성공적으로 백업하는 것에 응답하여 완료되는 것이다. 상기 볼륨 그룹의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹에 대한 백업 정보에 상기 볼륨 그룹에 대한 완료된 백업의 표시가 이루어진다.
부가의 실시예에서, 상기 백업 설정은 백업 빈도(backup frequency)를 나타낸다. 상기 백업 동작을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하는 것은, 상기 볼륨 그룹에 대한 백업 정보로부터 가장 최근의 완료된 백업을 판정하고, 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과하는지 여부를 판정하는 것을 포함한다. 백업은, 상기 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과한다고 판정하는 것에 응답하여, 상기 볼륨 그룹 내의 각각의 볼륨에 관련하여 수행된다.
부가의 실시예에서, 상기 각각의 볼륨을 백업하는 것은, 백업된 볼륨에 대하여 타겟 볼륨(target volume)을 할당하고, 상기 볼륨의 가상 복사(virtual copy)를 생성하고 - 상기 백업은 상기 가상 복사를 생성하는 것에 응답하여 완료되는 것임 - , 상기 가상 복사에 표시된 볼륨으로부터 상기 타겟 볼륨으로 데이터를 복사하는 것을 포함한다. 백업할 볼륨들 및 타겟 볼륨들은 하드 디스크 드라이브에서 구현된다.
부가의 실시예에서, 상기 백업 설정은 상기 볼륨 그룹에 대하여 유지할 백업들의 최대 수를 표시한다. 백업된 볼륨에 대하여 타겟 볼륨이 할당된다. 상기 볼륨 그룹에 대한 백업 정보가 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일함을 표시하는지 여부에 대한 판정이 이루어진다. 상기 볼륨 그룹 내의 볼륨들에 대하여 상기 타겟 볼륨을 할당하는 것은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하다는 판정에 응답하여 상기 볼륨 그룹의 이전 백업으로부터의 타겟 볼륨들을 사용하는 것을 포함한다.
부가의 실시예에서, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하지 않다는 판정에 응답하여, 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 상기 타겟 볼륨을 할당하는 것은, 백업할 볼륨과 동일한 사이즈, 성능, 및 신뢰성 중 적어도 하나를 갖는 타겟 볼륨을 결정하는 것을 포함한다. 상기 할당된 타겟 볼륨은 상기 결정된 타겟 볼륨을 포함한다.
부가의 실시예에서, 상이한 시간마다 상기 볼륨 그룹의 완료된 백업들의 리스트가 제시된다(rendered). 상기 제시된 리스트로부터 상기 볼륨 그룹의 완료된 백업들 중 하나의 사용자 선택이 수신된다. 상기 볼륨 그룹의 완료된 백업의 사용자 선택에 응답하여 상기 볼륨 그룹의 선택된 완료된 백업과 연관된 각각의 백업된 볼륨이 복구된다.
부가의 실시예에서, 상기 볼륨 그룹에 대한 자동 백업 동작은, 볼륨의 백업이 완료될 때까지 상기 볼륨에 대한 부가의 기록들을 수락하지 않도록 상기 볼륨 그룹 내의 각각의 그룹에 대하여 조건을 개시하는 것을 더 포함한다.
부가의 실시예에서, 상기 조건을 개시하는 것은, 상기 볼륨 그룹 내의 볼륨들에의 모든 기록들을 거부(quiesce)하도록 상기 볼륨 그룹 내의 볼륨들에 기록하는 애플리케이션과 통신하는 것을 더 포함한다. 상기 볼륨 그룹 내의 볼륨들의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹 내의 볼륨들에의 기록들의 거부를 종료하도록 상기 애플리케이션과의 통신이 이루어진다.
부가의 실시예에서, 상기 볼륨 그룹에 대한 자동 백업 동작은, 상기 볼륨 그룹 내의 각각의 볼륨의 백업에서의 데이터가 일관성(consistency) 그룹의 일부임을 보장하도록 저장 서버로 하여금 상기 볼륨 그룹 내의 볼륨들에 대해 일관성 동작을 수행하게 하도록 상기 저장 서버와 통신하는 것을 더 포함한다.
부가의 실시예에서, 상기 저장 서버에 의해 수행되는 일관성 동작은, 상기 볼륨들을 포함하는 저장 시스템에 상기 볼륨 그룹 내의 볼륨들에의 캐시된 기록들을 디스테이지(destage)하는 것을 포함하며, 상기 볼륨들은 상기 저장 시스템 내의 볼륨들에의 상기 캐시된 기록들의 디스테이지를 완료하는 것에 응답하여 백업된다.
부가의 실시예에서, 상기 백업 설정이 적용될 볼륨 그룹을 선택하고 상기 볼륨 그룹과 연관된 백업 설정을 정의하는 것은 사용자 중재(user intervention) 없이 자동으로 수행된다.
제1 양상으로부터 보자면, 본 발명은 볼륨들의 볼륨 그룹에 대하여 백업 동작을 수행하는 방법을 제공하며, 본 방법은, 복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정을 유지하는 단계, 상기 백업 설정이 적용될 볼륨 그룹을 선택하는 단계 - 볼륨 그룹은 호스트들과 볼륨들을 연관시키며, 상기 볼륨 그룹 내의 볼륨들에 액세스하는 것이 가능한 호스트들을 표시함 - , 및 선택된 볼륨 그룹에 대하여 자동 백업 동작을 호출하는 단계를 포함하고, 상기 자동 백업 동작은, 상기 볼륨 그룹과 연관된 볼륨들에 관련하여 수행된 백업들을 표시하는 상기 볼륨 그룹에 대한 백업 정보를 생성하고, 상기 백업 설정에 따라 상기 볼륨 그룹에 관련하여 백업을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하고, 상기 볼륨 그룹에 대하여 백업 동작을 수행하라고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨을 백업하는 것을 포함한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹의 백업이 상기 볼륨 그룹 내의 각각의 볼륨을 성공적으로 백업하는 것에 응답하여 완료되는 것이며, 상기 볼륨 그룹의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹에 대한 백업 정보에 상기 볼륨 그룹에 대하여 완료된 백업을 표시하는 것을 더 포함하는, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 백업 빈도를 표시하고, 상기 백업 동작을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하는 것은, 상기 볼륨 그룹에 대한 백업 정보로부터 가장 최근의 완료된 백업을 판정하고, 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과하는지 여부를 판정하는 것을 포함하며, 상기 백업은 상기 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과한다고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨에 관련하여 수행되는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 각각의 볼륨을 백업하는 것이, 백업된 볼륨에 대하여 타겟 볼륨을 할당하고, 상기 볼륨의 가상 복사를 생성하고 - 상기 백업은 상기 가상 복사를 생성하는 것에 응답하여 완료되는 것임 - , 상기 가상 복사에 표시된 볼륨으로부터 상기 타겟 볼륨으로 데이터를 복사하는 것을 포함하며, 백업할 볼륨들 및 타겟 볼륨들은 하드 디스크 드라이브에서 구현되는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 상기 볼륨 그룹에 대하여 유지할 백업들의 최대 수를 표시하며, 백업된 볼륨에 대하여 타겟 볼륨을 할당하고, 상기 볼륨 그룹에 대한 백업 정보가 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일함을 표시하는지 여부를 판정하는 것을 더 포함하고, 상기 볼륨 그룹 내의 볼륨들에 대하여 상기 타겟 볼륨을 할당하는 것은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하다고 판정하는 것에 응답하여 상기 볼륨 그룹의 이전 백업으로부터의 타겟 볼륨들을 사용하는 것을 포함하는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하지 않다고 판정하는 것에 응답하여, 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 상기 타겟 볼륨을 할당하는 것이, 백업할 볼륨과 동일한 사이즈, 성능, 및 신뢰성 중 적어도 하나를 갖는 타겟 볼륨을 결정하는 것을 포함하며, 상기 할당된 타겟 볼륨은 상기 결정된 타겟 볼륨을 포함하는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상이한 시간마다 상기 볼륨 그룹의 완료된 백업들의 리스트를 제시하고, 상기 제시된 리스트로부터 상기 볼륨 그룹의 완료된 백업들 중 하나의 사용자 선택을 수신하고, 상기 볼륨 그룹의 완료된 백업의 사용자 선택에 응답하여 상기 볼륨 그룹의 선택된 완료된 백업과 연관된 각각의 백업된 볼륨을 복구하는 것을 더 포함하는, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 자동 백업 동작이, 볼륨의 백업이 완료될 때까지 상기 볼륨에 대한 부가의 기록들을 수락하지 않도록 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 조건을 개시하는 것을 더 포함하는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 조건을 개시하는 것이, 상기 볼륨 그룹 내의 볼륨들에의 모든 기록들을 거부하도록 상기 볼륨 그룹 내의 볼륨들에 기록하는 애플리케이션과 통신하는 것을 더 포함하며, 상기 볼륨 그룹 내의 볼륨들의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹 내의 볼륨들에의 기록들의 거부를 종료하도록 상기 애플리케이션과 통신하는 것을 더 포함하는, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 자동 백업 동작이, 상기 볼륨 그룹 내의 각각의 볼륨의 백업에서의 데이터가 일관성 그룹의 일부임을 보장하도록 저장 서버로 하여금 상기 볼륨 그룹 내의 볼륨들에 대해 일관성 동작을 수행하게 하도록 상기 저장 서버와 통신하는 것을 더 포함하는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 저장 서버에 의해 수행되는 일관성 동작이, 상기 볼륨들을 포함하는 저장 시스템에 상기 볼륨 그룹 내의 볼륨들에의 캐시된 기록들을 디스테이지하는 것을 포함하며, 상기 볼륨들은 상기 저장 시스템 내의 볼륨들에의 상기 캐시된 기록들의 디스테이지를 완료하는 것에 응답하여 백업되는 것인, 방법을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 적용될 볼륨 그룹을 선택하고 상기 볼륨 그룹과 연관된 백업 설정을 정의하는 것이 사용자 중재 없이 자동으로 수행되는 것인, 방법을 제공한다.
제2 양상으로부터 보자면, 본 발명은 볼륨들을 갖는 적어도 하나의 저장장치 및 호스트 시스템들과 통신하는 볼륨들의 볼륨 그룹에 대하여 백업 동작을 수행하는 시스템을 제공하며, 본 시스템은, 프로세서, 복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정을 포함하는 컴퓨터 판독가능 매체, 및 동작들을 수행하도록 상기 프로세서에 의해 실행되는 상기 컴퓨터 판독가능 매체에서의 백업 서비스를 포함하고, 상기 동작들은, 상기 백업 설정이 적용될 볼륨 그룹을 선택하는 단계 - 볼륨 그룹은 호스트들과 볼륨들을 연관시키며, 상기 볼륨 그룹 내의 볼륨들에 액세스하는 것이 가능한 호스트들을 표시함 - , 및 선택된 볼륨 그룹에 대하여 자동 백업 동작을 호출하는 단계를 포함하고, 상기 자동 백업 동작은, 상기 볼륨 그룹과 연관된 볼륨들에 관련하여 수행된 백업들을 표시하는 상기 볼륨 그룹에 대한 백업 정보를 생성하고, 상기 백업 설정에 따라 상기 볼륨 그룹에 관련하여 백업을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하고, 상기 볼륨 그룹에 대하여 백업 동작을 수행하라고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨을 백업하는 것을 포함한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹의 백업이 상기 볼륨 그룹 내의 각각의 볼륨을 성공적으로 백업하는 것에 응답하여 완료되는 것이며, 상기 동작들은, 상기 볼륨 그룹의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹에 대한 백업 정보에 상기 볼륨 그룹에 대하여 완료된 백업을 표시하는 것을 더 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 백업 빈도를 표시하고, 상기 백업 동작을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하는 것은, 상기 볼륨 그룹에 대한 백업 정보로부터 가장 최근의 완료된 백업을 판정하고, 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과하는지 여부를 판정하는 것을 포함하며, 상기 백업은 상기 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과한다고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨에 관련하여 수행되는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 각각의 볼륨을 백업하는 것이, 백업된 볼륨에 대하여 타겟 볼륨을 할당하고, 상기 볼륨의 가상 복사를 생성하고 - 상기 백업은 상기 가상 복사를 생성하는 것에 응답하여 완료되는 것임 - , 상기 가상 복사에 표시된 볼륨으로부터 상기 타겟 볼륨으로 데이터를 복사하는 것을 포함하며, 백업할 볼륨들 및 타겟 볼륨들은 하드 디스크 드라이브에서 구현되는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 상기 볼륨 그룹에 대하여 유지할 백업들의 최대 수를 표시하며, 상기 동작들은, 백업된 볼륨에 대하여 타겟 볼륨을 할당하고, 상기 볼륨 그룹에 대한 백업 정보가 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일함을 표시하는지 여부를 판정하는 것을 더 포함하고, 상기 볼륨 그룹 내의 볼륨들에 대하여 상기 타겟 볼륨을 할당하는 것은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하다고 판정하는 것에 응답하여 상기 볼륨 그룹의 이전 백업으로부터의 타겟 볼륨들을 사용하는 것을 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하지 않다고 판정하는 것에 응답하여, 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 상기 타겟 볼륨을 할당하는 것이, 백업할 볼륨과 동일한 사이즈, 성능, 및 신뢰성 중 적어도 하나를 갖는 타겟 볼륨을 결정하는 것을 포함하며, 상기 할당된 타겟 볼륨은 상기 결정된 타겟 볼륨을 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 동작들이, 상이한 시간마다 상기 볼륨 그룹의 완료된 백업들의 리스트를 제시하고, 상기 제시된 리스트로부터 상기 볼륨 그룹의 완료된 백업들 중 하나의 사용자 선택을 수신하고, 상기 볼륨 그룹의 완료된 백업의 사용자 선택에 응답하여 상기 볼륨 그룹의 선택된 완료된 백업과 연관된 각각의 백업된 볼륨을 복구하는 것을 더 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 자동 백업 동작이, 볼륨의 백업이 완료될 때까지 상기 볼륨에 대한 부가의 기록들을 수락하지 않도록 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 조건을 개시하는 것을 더 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 조건을 개시하는 것이, 상기 볼륨 그룹 내의 볼륨들에의 모든 기록들을 거부하도록 상기 볼륨 그룹 내의 볼륨들에 기록하는 애플리케이션과 통신하는 것을 더 포함하며, 상기 동작들은, 상기 볼륨 그룹 내의 볼륨들의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹 내의 볼륨들에의 기록들의 거부를 종료하도록 상기 애플리케이션과 통신하는 것을 더 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 자동 백업 동작이, 상기 볼륨 그룹 내의 각각의 볼륨의 백업에서의 데이터가 일관성 그룹의 일부임을 보장하도록 저장 서버로 하여금 상기 볼륨 그룹 내의 볼륨들에 대해 일관성 동작을 수행하게 하도록 상기 저장 서버와 통신하는 것을 더 포함하는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 저장 서버에 의해 수행되는 일관성 동작이, 상기 볼륨들을 포함하는 저장 시스템에 상기 볼륨 그룹 내의 볼륨들에의 캐시된 기록들을 디스테이지하는 것을 포함하며, 상기 볼륨들은 상기 저장 시스템 내의 볼륨들에의 상기 캐시된 기록들의 디스테이지를 완료하는 것에 응답하여 백업되는 것인, 시스템을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 적용될 볼륨 그룹을 선택하고 상기 볼륨 그룹과 연관된 백업 설정을 정의하는 것이 사용자 중재 없이 자동으로 수행되는 것인, 시스템을 제공한다.
또 다른 양상으로부터 보자면, 본 발명은 저장장치 내의 볼륨들을 백업할 코드를 구현하는 제조 물품을 제공하며, 호스트들은 네트워크를 통해 상기 볼륨들에 액세스하고, 상기 코드는 동작들을 더 일으킬 수 있으며, 상기 동작들은, 복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정을 유지하는 단계, 상기 백업 설정이 적용될 볼륨 그룹을 선택하는 단계 - 볼륨 그룹은 호스트들과 볼륨들을 연관시키며, 상기 볼륨 그룹 내의 볼륨들에 액세스하는 것이 가능한 호스트들을 표시함 - , 및 선택된 볼륨 그룹에 대하여 자동 백업 동작을 호출하는 단계를 포함하고, 상기 자동 백업 동작은, 상기 볼륨 그룹과 연관된 볼륨들에 관련하여 수행된 백업들을 표시하는 상기 볼륨 그룹에 대한 백업 정보를 생성하고, 상기 백업 설정에 따라 상기 볼륨 그룹에 관련하여 백업을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하고, 상기 볼륨 그룹에 대하여 백업 동작을 수행하라고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨을 백업하는 것을 포함한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹의 백업이 상기 볼륨 그룹 내의 각각의 볼륨을 성공적으로 백업하는 것에 응답하여 완료되는 것이며, 상기 볼륨 그룹의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹에 대한 백업 정보에 상기 볼륨 그룹에 대하여 완료된 백업을 표시하는 것을 더 포함하는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 백업 빈도를 표시하고, 상기 백업 동작을 수행할지 여부를 판정하도록 상기 볼륨 그룹에 대한 백업 정보를 처리하는 것은, 상기 볼륨 그룹에 대한 백업 정보로부터 가장 최근의 완료된 백업을 판정하고, 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과하는지 여부를 판정하는 것을 포함하며, 상기 백업은 상기 현재 시간과 상기 가장 최근의 완료된 백업 시간의 차이가 상기 백업 빈도를 초과한다고 판정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨에 관련하여 수행되는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 각각의 볼륨을 백업하는 것이, 백업된 볼륨에 대하여 타겟 볼륨을 할당하고, 상기 볼륨의 가상 복사를 생성하고 - 상기 백업은 상기 가상 복사를 생성하는 것에 응답하여 완료되는 것임 - , 상기 가상 복사에 표시된 볼륨으로부터 상기 타겟 볼륨으로 데이터를 복사하는 것을 포함하며, 백업할 볼륨들 및 타겟 볼륨들은 하드 디스크 드라이브에서 구현되는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 상기 볼륨 그룹에 대하여 유지할 백업들의 최대 수를 표시하며, 백업된 볼륨에 대하여 타겟 볼륨을 할당하고, 상기 볼륨 그룹에 대한 백업 정보가 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일함을 표시하는지 여부를 판정하는 것을 더 포함하고, 상기 볼륨 그룹 내의 볼륨들에 대하여 상기 타겟 볼륨을 할당하는 것은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하다고 판정하는 것에 응답하여 상기 볼륨 그룹의 이전 백업으로부터의 타겟 볼륨들을 사용하는 것을 포함하는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 완료된 백업들의 수와 상기 백업들의 최대 수가 동일하지 않다고 판정하는 것에 응답하여, 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 상기 타겟 볼륨을 할당하는 것이, 백업할 볼륨과 동일한 사이즈, 성능, 및 신뢰성 중 적어도 하나를 갖는 타겟 볼륨을 결정하는 것을 포함하며, 상기 할당된 타겟 볼륨은 상기 결정된 타겟 볼륨을 포함하는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상이한 시간마다 상기 볼륨 그룹의 완료된 백업들의 리스트를 제시하고, 상기 제시된 리스트로부터 상기 볼륨 그룹의 완료된 백업들 중 하나의 사용자 선택을 수신하고, 상기 볼륨 그룹의 완료된 백업의 사용자 선택에 응답하여 상기 볼륨 그룹의 선택된 완료된 백업과 연관된 각각의 백업된 볼륨을 복구하는 것을 더 포함하는, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 자동 백업 동작이, 볼륨의 백업이 완료될 때까지 상기 볼륨에 대한 부가의 기록들을 수락하지 않도록 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 조건을 개시하는 것을 더 포함하는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 조건을 개시하는 것이, 상기 볼륨 그룹 내의 볼륨들에의 모든 기록들을 거부하도록 상기 볼륨 그룹 내의 볼륨들에 기록하는 애플리케이션과 통신하는 것을 더 포함하며, 상기 볼륨 그룹 내의 볼륨들의 백업을 완료하는 것에 응답하여 상기 볼륨 그룹 내의 볼륨들에의 기록들의 거부를 종료하도록 상기 애플리케이션과 통신하는 것을 더 포함하는, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 볼륨 그룹에 대한 자동 백업 동작이, 상기 볼륨 그룹 내의 각각의 볼륨의 백업에서의 데이터가 일관성 그룹의 일부임을 보장하도록 저장 서버로 하여금 상기 볼륨 그룹 내의 볼륨들에 대해 일관성 동작을 수행하게 하도록 상기 저장 서버와 통신하는 것을 더 포함하는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 저장 서버에 의해 수행되는 일관성 동작이, 상기 볼륨들을 포함하는 저장 시스템에 상기 볼륨 그룹 내의 볼륨들에의 캐시된 기록들을 디스테이지하는 것을 포함하며, 상기 볼륨들은 상기 저장 시스템 내의 볼륨들에의 상기 캐시된 기록들의 디스테이지를 완료하는 것에 응답하여 백업되는 것인, 제조 물품을 제공한다.
바람직하게는, 본 발명은, 상기 백업 설정이 적용될 볼륨 그룹을 선택하고 상기 볼륨 그룹과 연관된 백업 설정을 정의하는 것이 사용자 중재 없이 자동으로 수행되는 것인, 제조 물품을 제공한다.
또 다른 양상으로부터 보자면, 본 발명은, 디지털 컴퓨터의 내부 메모리로 로딩가능한 컴퓨터 프로그램 제품으로서, 상기 제품이 컴퓨터 상에서 실행될 때 상기 기재한 바와 같은 본 발명을 수행하도록 하기 위한 소프트웨어 코드 부분을 포함하는 것인 컴퓨터 프로그램 제품을 제공한다.
도 1은 본 발명의 바람직한 실시예가 구현될 수 있는 네트워크 백업 컴퓨팅 환경의 실시예를 도시한다.
도 2는 본 발명의 바람직한 실시예에 따른 볼륨 그룹 정보의 실시예를 도시한다.
도 3은 본 발명의 바람직한 실시예에 따른 백업 설정의 실시예를 도시한다.
도 4는 본 발명의 바람직한 실시예에 따른 볼륨 그룹 백업 정보의 실시예를 도시한다.
도 5는 본 발명의 바람직한 실시예에 따른 볼륨 그룹 백업 정보 내의 백업 세트 엔트리의 실시예를 도시한다.
도 6 및 도 7은 본 발명에 따라 볼륨 그룹을 백업 설정과 연관시키는 동작들의 바람직한 실시예들을 도시한다.
도 8 및 도 9는 본 발명의 바람직한 실시예에 따라 볼륨 그룹을 백업하는 동작들을 도시한다.
도 10 및 도 11은 본 발명의 바람직한 실시예에 따라 일 시점 당시의 볼륨 그룹 내의 볼륨들의 일관성을 유지하는 백업 동작들을 도시한다.
도 12는 본 발명의 바람직한 실시예에 따른 볼륨 그룹의 백업을 복구하는 동작들을 도시한다.
도 13은 본 발명의 바람직한 실시예에 따른 도 1의 시스템과 함께 동작할 수 있는 컴퓨터 아키텍쳐를 도시한다.
도 1은 네트워크 컴퓨팅 환경의 실시예를 도시한다. 하나 이상의 호스트 시스템(2)은 네트워크(6)를 통해 저장 시스템(10)과 통신한다. 호스트(2)는 저장 시스템(10)에의 액세스를 관리하는 저장 서버(4)를 통하여 저장 시스템(10) 내의 볼륨들로 향하는 입력/출력(I/O) 요청들을 전달하는 하나 이상의 애플리케이션(8)을 포함한다.
저장 서버(4)는 저장 및 백업 동작에 대한 I/O 요청들을 관리하도록 저장 시스템(10)에서 구현되는 하드웨어 및/또는 소프트웨어를 포함한다. 저장 서버(4)는 호스트들(2)과 저장 시스템(10) 사이에 전달될 판독 및 기록 데이터를 버퍼링하도록 캐시(14) 및 저장 시스템(10) 내의 볼륨들로 향하는 호스트들(2)로부터의 I/O 요청들을 관리하는 저장 관리자(storage manager)(12)를 포함한다. 저장 서버(4)는 저장 시스템(10)에서 구성되는 볼륨들에 관련하여 백업 관련 동작들을 수행하는 백 업 서비스(16)를 더 포함한다.
하나의 실시예에서, 저장 시스템(10)에서 구성되는 볼륨들(20)은 하나 이상의 볼륨 그룹들(18)로 조직화될 수 있다. 하나 이상의 호스트(2)가 볼륨 그룹(18)에 할당되며, 볼륨 그룹(18)은 그 할당된 호스트(2)가 액세스할 수 있는 볼륨들 세트(20)를 포함한다. 볼륨 그룹들(18) 내의 볼륨들(20)은 백업 저장장치(24) 내의 대응하는 타겟 볼륨들(22)에 백업될 수 있다. 또한, 볼륨 그룹 내의 각각의 볼륨(20)에 대하여 가상 복사(26)가 생성될 수 있다.
가상 복사(26)는 스냅샷(Snapshot) 카피, 플래시카피(FlashCopy®) 등과 같은 가상 복사를 나타내는 데이터 구조 및 정보를 포함한다(플래시카피는 미국 및 기타 국가에서의 IBM의 등록 상표임). 가상 복사는 그 밑에 있는(underlying) 데이터를 복사하지 않고서 바로 생성되는 데이터 세트의 일 시점(point-in-time)의 복사를 포함한다. 가상 복사(26)는 가상 복사의 대상인 볼륨 내의 각각의 트랙 또는 블록 및 데이터가 가상 복사의 그 시점 이래로 업데이트되었는지 여부를 나타내는 비트맵을 포함할 수 있다. 가상 복사가 생성된 시점 이후에, 가상 복사의 대상인 소스 볼륨 내의 소스 데이터는 덮어쓰기 되기 전에 가상 복사에 대하여 저장 풀(storage pool)에 보관된다. 이 방식으로, 그 시점 당시의 볼륨 데이터는 소스 볼륨 위치에 또는 연관된 저장 풀에 유지된다. 백그라운드 복사 동작은, 그 시점에서의 볼륨 데이터를 볼륨 또는 저장 풀로부터 타겟 볼륨(22)으로 복사하도록 가상 복사(26)를 사용하여 개시될 수 있다. 가상 복사(26)는 저장 서버(4) 또는 저장 시스템(10)에 유지될 수 있다. 또한, 가상 복사(26)는 타겟 볼륨(22)에 저장될 수 있 다.
저장 서버(4)와 통신하는 호스트(2)는, 서버, 데스크톱 컴퓨터, 워크스테이션, 메인프레임, 핸드헬드 컴퓨팅 디바이스, 전화 디바이스 등과 같은, 당해 기술 분야에 공지되어 있는 적합한 연산 디바이스를 포함할 수 있다. 저장 서버(4)는, 엔터프라이즈 저장 서버 등과 같은, 당해 기술 분야에 공지되어 있는 적합한 서버 시스템을 포함할 수 있다. 저장 시스템(10)은, 복수의 저장 디바이스를 포함하는 저장 시스템, 예를 들어 상호접속된 하드 디스크 드라이브(RAID(Redundant Array of Independent Disks), JBOD(Just a Bunch of Disks), DASD(Direct Access Storage Device), 루프 구성(직렬 루프, 파이버 채널 중재 루프(Fibre Channel Arbitrated Loop))으로 접속된 디스크, 단일 저장 디바이스, 테이프 라이브러리, 광학 라이브러리, NAS(network attached storage) 등과 같은, 당해 기술 분야에 공지되어 있는 저장 시스템에서 구현될 수 있다. 네트워크(6)는 광역 네트워크(WAN; Wide Area Network), 로컬 영역 네트워크(LAN; Local Area Network), 저장 영역 네트워크(SAN; Storage Area Network), 무선 네트워크, 인터넷, 인트라넷, 피어투피어(peer-to-peer) 네트워크 등을 포함할 수 있다. 호스트(2), 저장 서버(4), 및 저장 시스템(10)은 동일한 네트워크(6)를 통해 또는 개별 네트워크들을 통해 통신할 수 있다.
볼륨 그룹들(18) 내의 볼륨들(20)은 볼륨들(20)에 대한 백업 데이터를 제공하는 타겟 볼륨들(22)을 저장하는 백업 저장장치(24)로부터 저장 시스템(10) 내의 개별 저장 디바이스들에 저장될 수 있다.
저장 서버(4)는 저장 시스템(10)에서 구성된 볼륨 그룹들에 대한 정보를 제공하는 볼륨 그룹 정보(28), 백업 동작에 사용할 파라미터를 제공하며 설정이 적용될 볼륨 그룹(18)을 제공하는 백업 설정(30), 및 볼륨 그룹 내의 볼륨들에 관련하여 수행된 백업들에 대한 정보를 제공하는 볼륨 그룹 백업 정보(32)를 더 유지한다. 하나의 실시예에서, 볼륨 그룹 백업은 볼륨 그룹(18) 내의 모든 볼륨들(20)의 백업의 완료시 완료되는 것이다.
도 2는 저장 관리자(12)가 유지하는 볼륨 그룹에 대한 볼륨 그룹 정보(28)의 인스턴스(40)의 실시예를 도시하며, 볼륨 그룹 식별자(42), 볼륨 그룹(42)에 할당된 볼륨들(44), 및 볼륨 그룹(42)에 할당된 호스트들(46)을 포함한다. 볼륨 그룹(18)에 할당된 호스트들(2)은 할당된 볼륨 그룹(18) 내의 볼륨들(20)에 액세스할 수 있다. 볼륨 그룹 정보(40)는 저장 볼륨들(20)에의 호스트(2)의 액세스를 관리하도록 저장 관리자(12)에 의해 유지되고 생성될 수 있다. 백업 서비스(16)는 볼륨 그룹 정보(40)에 액세스할 수 있다.
도 3은 백업 서비스(16)가 유지하는 백업 설정(30)의 인스턴스(50)의 실시예를 도시한다. 백업 설정의 인스턴스(50)는, 표시된 볼륨 그룹(56)의 백업들이 일어나야 할 빈도를 표시하는 백업 빈도(52), 및 연관된 볼륨 그룹(56)에 대하여 백업 저장장치(24)에 유지될 수 있는 백업들의 최대 수(54)를 포함한다. 하나의 실시예에서, 백업 서비스(16)는 백업 서비스가 요청되었던 모든 볼륨 그룹들에 대하여 사용된 디폴트 백업 설정(50)을 유지할 수 있다. 대안으로서, 백업 서비스(16)는 상이한 백업 볼륨 그룹들(56)에 대하여 백업 설정(50)의 상이한 인스턴스들을 생성할 수 있다.
각각의 볼륨 그룹에는, 백업 설정(50)으로부터 또는 사용자 디폴트 값으로서, 백업 빈도(52) 및 백업들의 최대 수(54) 파라미터가 할당된다. 볼륨 그룹에 대하여 관리자에 의해 선택적으로 설정될 수 있는 기타 백업 파라미터는, 1) 우선순위/중요도, 2) 백업 목적지(데이터를 백업할 타겟 볼륨 또는 볼륨의 풀), 3) 사용할 스냅샷 방법(증분 또는 비증분, 백그라운드 복사 또는 복사없음, 영구적 또는 비영구적), 4) 만료 날짜(있는 경우), 5) 디스크 유형(RAID 0, 1, 10, 5, 또는 6, SCSI, SATA, Fibre Channel 등), 및 6) 디스크 성능(7200 RPM, 10,000 RPM, 15,000 RPM 등)을 포함한다. 이들 선택적 파라미터는, 사용할 타겟 볼륨 또는 백업을 생성할 방식을 결정하도록, 백업 서비스(16)에 의해 사용될 수 있다.
도 4는, 백업 설정(50)(도 3)의 볼륨 그룹 필드(56)(도 2)에 나타낸 바와 같은, 백업 동작의 대상인 각각의 볼륨 그룹(18)에 대하여 백업 서비스(16)가 유지하는 볼륨 그룹 백업 정보(32)의 인스턴스(70)의 실시예를 도시한다. 볼륨 그룹 백업 정보(70)는, 볼륨 그룹 식별자(72), 볼륨 그룹(72)에 대하여 유지된 백업들의 수(74), 및 백업의 백업 시간(76a...76n)과 볼륨 그룹(72) 내의 각각의 볼륨에 대하여 백업에 대한 정보를 제공하는 백업 세트(78a...78n)를 포함하는 각각의 유지된 백업에 대한 백업 정보를 포함할 수 있다. 백업 동작이 스냅샷카피와 같은 가상 복사를 포함하는 경우, 각각의 백업에 대한 정보는, 가상 복사(26)에 대한 정보를 제공하는 데이터 구조와 같은, 가상 복사(26)에 대한 정보를 포함할 수 있다.
도 5는 백업 세트 엔트리(80)의 실시예를 도시하며, 볼륨 그룹 백업 정 보(70) 내의 각각의 백업 세트(78a...78n)는 백업되는 볼륨 그룹(18) 내의 각각의 볼륨(20)에 대한 엔트리(80)를 포함한다. 백업 세트 엔트리(80)는, 백업된 볼륨 그룹 내의 하나 이상의 소스 볼륨(82), 소스 볼륨(82)의 가상 복사(84), 대응하는 하나 이상의 소스 볼륨(82)의 복사가 기록되는 하나 이상의 타겟 볼륨(86), 및 백업 시간(88), 예를 들어 가상 복사(84)의 시점을 식별한다. 특정 실시예에서, 데이터는 타겟 볼륨(86)에 복사되지 않을 수 있고 그리고/또는 타겟 볼륨(86)은 표시되거나 할당되지 않을 수 있다. 백업 세트는 또한, 사용된 스냅샷 방법(증분 또는 비증분, 백그라운드 복사 또는 복사없음, 영구적 또는 비영구적)에 관한 정보, 및 만료 날짜와 같은 잠재적인 기타 정보를 포함할 수 있다.
도 6은 백업 설정(30)을 볼륨 그룹(18)과 자동으로 연관시키도록 백업 서비스(16)에 의해 수행되는 동작들의 실시예를 도시한다. 블록 90에서, 백업 서비스(16)는 볼륨 그룹 정보(28)를 판독한다. 볼륨 그룹 정보(28)는 볼륨 그룹에 지정된 볼륨들(44)에 액세스할 수 있는 호스트들(46)을 표시한다. 볼륨 그룹(18)에 디폴트 백업 설정(예를 들어, 백업 빈도 및 백업들의 최대 수)이 적용된다(블록 92에서). 백업 서비스(16)는, 볼륨 그룹(72)과 백업들의 수 필드(74)에 제로(zero) 백업을 표시한, 추가된 볼륨 그룹(18)에 대한 볼륨 그룹 백업 정보(70)를 생성한다(블록 94에서). 백업 설정(30)을 볼륨 그룹(18)과 연관시키는 도 6의 동작은 사용자 중재 없이 자동으로 백업 서비스(16)에 의해 수행될 수 있다. 또한, 백업 설정은 미리 정의된 설정으로부터 자동으로 정의될 수 있다.
도 7은 사용자가 백업 설정(50)을 업데이트할 수 있도록 백업 서비스(16)에 의해 수행되는 동작들의 실시예를 도시한다. 볼륨 그룹(18)을 백업 설정(50)(도 3)과 연관시키려는 사용자 선택을 수신하면(블록 100에서), 백업 서비스(16)는 백업 대상으로서 사용자 선택된 볼륨 그룹을 표시하도록 백업 설정(50)을 업데이트한다(블록 102에서). 또한, 볼륨 그룹 및 제로 백업을 표시하는 추가된 볼륨 그룹에 대한 볼륨 그룹 백업 정보(70)가 생성된다(블록 104에서).
특정 실시예에서, 도 7의 동작에 의한 백업 설정과 볼륨 그룹의 특정 사용자 연관이 없는 경우 볼륨 그룹은 디폴트 설정과 연관될 수 있다.
도 8 및 도 9는 볼륨 그룹(18)에 관련하여 백업 동작을 자동으로 수행하도록 백업 서비스(16)에 의해 수행되는 동작들의 실시예를 도시한다. 도 8 및 도 9의 백업 동작은, 주기적 또는 스케쥴링된 시간에 따라, 저장 시스템(10)이 유휴 상태인 경우 또는 수동 사용자 개시에 대한 응답으로, 시작될 수 있다. 도 8에 관련하여, 백업 동작을 시작하면(블록 150에서), 백업 서비스(16)는 표시된 볼륨 그룹들(56)로부터 백업할 하나의 볼륨 그룹(18)을 선택하도록 백업 설정(50)(도 3)을 처리한다(블록 152에서). 백업 설정(30)의 다수의 인스턴스(50)가 있는 경우, 백업 서비스(16)는 각각의 인스턴스(50)를 처리할 수 있다. 백업 서비스(16)는 선택된 볼륨 그룹(18)을 백업할지 여부를 판정하도록 선택된 볼륨 그룹에 대한 볼륨 그룹 백업 정보(70)를 처리한다(블록 154에서). (블록 156에서) 현재 시스템 시간과 볼륨 그룹에 대하여 가장 최근의 완료된 백업 시간(76a...76n)의 차이가, 처리되고 있는 백업 설정(50)에 표시된 백업 빈도(52)를 초과하는 경우, 처리된 백업 설정(50)은 볼륨 그룹(18)의 부가의 백업을 필요로 한다. 고려되는 백업 빈도(52)는 시간 간격 등으로서 표현될 수 있다. 백업할 때가 아닌 경우, 예를 들어 현재 시간과 가장 최근의 백업 시간의 차이가 백업 빈도를 초과하지 않는 경우, 백업 설정(50)의 볼륨 그룹(56)에 표시된 다음 볼륨 그룹을 선택하도록, 제어는 블록 152로 다시 진행한다.
(블록 156에서) 백업 빈도(52)의 체크에서, 선택된 볼륨 그룹(18)의 부가의 백업이 필요하다고 나타나는 경우, 백업 서비스(16)는, 선택된 볼륨 그룹(18)에 대한 볼륨 그룹 백업 정보(70)에 표시된 백업들의 수(74)와 처리되고 있는 백업 설정(50)에 표시된 백업들의 최대 수(54)가 동일한지 여부를 판정한다(블록 158에서). 필드(74)에 표시될 수 있는, 선택된 볼륨 그룹(18)에 대하여 유지된 백업들(78a...78n)의 수가 최대 수(54)와 같은 경우, 그리고 (블록 160에서) 시스템에서 구성된 볼륨들(20)의 수가 가장 오래된 백업(76a...76n) 이래로 변경된 경우, 백업 서비스(16)는 볼륨 그룹 백업 정보(70)에 표시된 가장 오래된 백업을 삭제하고, 사용된 볼륨들을 해제(release)하고, 백업들의 수(74)를 감소시킨다(블록 162에서). (블록 160에서) 시스템에서 구성된 볼륨들(20)의 수가 변경되지 않은 경우, 백업 서비스(16)는, 현재 백업을 위해 할당할, 선택된 볼륨 그룹(18)의 가장 오래된 백업(78n), 즉 가장 오래된 백업 시간(76a...76n)을 갖는 백업에서의 타겟 볼륨(22)을 결정하고(블록 166에서), 백업들의 수(74)를 감소시킨다. 블록 166에서, 백업 서비스(16)는 백업들의 최대 수가 볼륨 그룹(18)에 대하여 유지되는 경우 이전의 백업으로부터의 타겟 볼륨(22)을 재사용한다. (블록 158에서) 볼륨 그룹에 대하여 유지되는 백업들의 수가, 고려되는 백업 설정(50)에 표시된 최대 수(54)가 아 닌 경우, 또는 가장 오래된 백업을 삭제한 후에(블록 162에서), 백업 서비스(16)는 볼륨 그룹(18) 내의 각각의 볼륨(20)에 대하여 백업 저장장치(24) 내의 새로운 타겟 볼륨을 할당한다(블록 168에서). 하나의 실시예에서, 백업 서비스(16)는 백업 대상인 소스 볼륨(20)과 동일한 사이즈를 갖고 동일한 저장 유형으로 이루어지고 동일한 성능 및 신뢰성을 갖는 타겟 볼륨을 할당할 수 있다.
백업 서비스(16)는 선택된 볼륨 그룹(18) 내의 볼륨들(20)에서의 데이터가 일 시점 당시 일관적임을 보장할 동작들을 더 수행할 수 있다(블록 170에서). 하나의 실시예에서, 선택된 볼륨 그룹 내의 볼륨들에 걸쳐 일관성을 보장하도록, 백업 서비스(16)는 볼륨의 백업이 완료될 때까지 볼륨에 대한 부가의 기록들을 수락하지 않도록 볼륨 그룹 내의 각각의 볼륨에 대하여 조건을 개시할 수 있다. 아래에 설명되는 도 10 및 도 11은 백업할 선택된 볼륨 그룹(18) 내의 볼륨들(20)에서의 데이터가 일 시점 당시 일관적임을 보장하도록 백업 서비스(16)가 수행할 동작들의 추가의 실시예를 제공한다.
백업 서비스(16)는 볼륨 그룹(18) 내의 각각의 볼륨(20)에 대하여 가상 복사(26)를 생성함으로써 볼륨 그룹(18) 내의 각각의 볼륨(20)을 백업한다(블록 172에서). 도 9에 관련하여, (블록 174에서) 가상 복사(26)가 볼륨 그룹(18) 내의 각각의 볼륨(20)에 대하여 성공적으로 생성되지 않은 경우, 선택된 볼륨 그룹(18)에 대한 백업 동작은 실패하고(블록 176에서), 백업 설정(30) 중 하나와 연관된 백업할 또 다른 볼륨 그룹(18)을 선택하도록, 제어는 도 8의 블록 152로 다시 진행한다. 백업 동작이, 모든 데이터가 타겟 볼륨(22)에 복사될 때까지 완료되지 않는 타 겟 볼륨(22)에의 전체(full) 데이터 백업과 같은, 가상 복사 이외의 백업 동작을 포함하는 것인 실시예에서, 백업은 선택된 볼륨 그룹(18) 내의 모든 볼륨들(20)에 관련하여 수행된 백업 동작이 전부 성공적인 경우에만 성공적이다.
(블록 174에서) 선택된 볼륨 그룹(18) 내의 각각의 볼륨(20)에 대하여 가상 복사 또는 기타 백업 동작이 성공적인 경우, 백업 서비스(16)는 선택된 볼륨 그룹(18)의 백업의 완료에 성공을 반환(return)한다(블록 178에서). 완료된 백업 세트(78a), 볼륨 그룹 내의 모든 볼륨들의 가상 복사가 완료된 시간(76a), 및 볼륨 그룹(18) 내의 볼륨들에 대하여 할당된 타겟 볼륨(22)은, 선택된 볼륨 그룹(18)에 대한 백업 정보(70)에 표시된다(블록 180에서). 하나의 실시예에서, 백업 서비스(16)는 소스 볼륨(82), 가상 복사(84), 타겟 볼륨(86), 및 그 특정 볼륨의 백업에 대한 백업 시간(88)을 표시하는, 볼륨 그룹(18) 내의 각각의 볼륨(20)에 대하여 완료된 백업에 대한 백업 세트 엔트리(80)(도 5)를 추가한다. 하나의 실시예에서, 볼륨 그룹에 대한 백업 동작은 볼륨 그룹(18) 내의 모든 각각의 볼륨(20)에 대하여 가상 복사(26)를 생성하는 것에 응답하여 완료한다. 볼륨 그룹(18)에 대한 백업 시간(76a)은 개별 볼륨들 전부가 각자의 백업을 완료한 시간을 표시할 수 있으며, 이는 볼륨 그룹(18) 내의 볼륨들(82)의 마지막 백업 시간(88)을 포함할 수 있다. 백업들의 수(74)가 증가된다(블록 182에서). 백업 서비스(16)는 소스 볼륨(20)으로부터 데이터를 복사함으로써 타겟 볼륨(22)에 가상 복사(26)에 표시된 데이터를 복사하도록 백그라운드 복사 동작을 개시할 수 있다(블록 184에서). 또한, 가상 카피(26)의 시점 당시의 볼륨(20) 내의 데이터는 소스 볼륨(20)에서의 데이터가 업데 이트되기 전에 타겟 볼륨(22)에 그 위에 복사될 수 있다. 블록 176 또는 블록 184로부터, 백업할 또 다른 볼륨 그룹을 선택하도록 제어는 도 8에서의 블록 152로 진행한다.
도 10은 백업 동작의 대상인 볼륨 그룹(18)의 볼륨들(20) 내의 데이터의 일관성을 유지하도록 백업 서비스(16)가 수행하는 동작들의 실시예를 도시한다. 이들 동작은 가상 복사 또는 플래시카피 동작의 일부로서 수행될 수 있다. 백업 동작을 시작하면(블록 200에서), 백업 서비스(16)는 저장 서버(4)로 하여금 일관성 동작을 수행하게 하도록 저장 서버(4)의 저장 관리자(12)와 통신한다(블록 202에서). 하나의 실시예에서, 통신에 응답하여 저장 관리자(12)에 의해 수행되는 일관성 동작은, 예를 들어 호스트 I/O 요청에 대한 응답으로 "queue full" 또는 "LONG_BUSY"를 반환함으로써, 볼륨 그룹(18) 내의 볼륨들에의 기록들을 보류(holding off)하는 것을 포함한다(블록 204에서). 저장 관리자(12)는 저장 시스템(10) 내의 볼륨들(20)에 볼륨 그룹(18) 내의 볼륨들(20)에의 캐시(14)에서의 캐시된 기록들을 더 디스테이지하거나 플러시(flush)할 수 있다(블록 206에서). 이 방식으로, 일 시점 당시의 모든 업데이트된 데이터는 백업 동작에 포함될 저장 시스템(10) 내의 볼륨에 디스테이지된다. 그 다음, 볼륨 그룹(18)의 백업이 수행된다(블록 208에서).
도 11은 백업 동작의 대상인 볼륨 그룹(18)의 볼륨들(20) 내의 데이터의 일관성을 유지하도록 백업 서비스(16)가 수행하는 백업 동작의 실시예를 도시한다. 백업 동작을 개시하면(블록 230에서), 백업 서비스(16)는 백업을 준비하기 위해 볼륨 그룹(18) 내의 볼륨들(20)에 기록하는 호스트 애플리케이션들(8)과 통신한다(블 록 232에서). 응답으로, 호스트들(2)은 저장 시스템(10)에의 임의의 변경된 기록들을 기록하도록 그들 캐시를 플러시하고 그리고/또는 선택된 볼륨 그룹(18) 내의 볼륨들에의 모든 기록들을 거부한다. 부가의 실시예에서, 데이터 일관성을 보장하고 백업을 준비하기 위한 추가의 동작이 수행될 수 있다. 백업 준비가 완료되었다는 호스트(2)로부터의 표시를 수신하면(블록 234에서), 백업 서비스(16)는 선택된 볼륨 그룹(18)의 백업을 수행한다(블록 236에서). 하나의 실시예에서, 백업은 가상 복사 또는 플래시카피 동작의 일부로서 수행되는 도 10의 동작들을 사용하여 수행될 수 있다. 백업을 완료하면, 백업 서비스(16)는 백업이 성공적이었다고 호스트(2)와 통신한다(블록 238에서). 응답으로, 호스트는 선택된 볼륨 그룹(18) 내의 볼륨들(20)에의 기록들의 거부를 종료하고 기타 백업 관련 준비 동작들을 종료한다.
도 12는 오퍼레이터 또는 애플리케이션이 선택된 볼륨 그룹(18)에 대하여 볼륨들(20)을 복구할 수 있도록 백업 서비스(16)에 의해 수행되는 동작들의 실시예를 도시한다. 오퍼레이터 또는 프로그램이 백업 서비스(16)를 통하여 복구 동작을 호출하면(블록 250에서), 백업 서비스(16)는 선택된 볼륨 그룹(18)의 완료된 백업 세트(78a...78n) 및 대응하는 백업 시간(76a...76n)의 리스트를 제시하며(블록 252에서), 이는 선택된 볼륨 그룹에 대한 볼륨 그룹 백업 정보(70)(도 4)로부터 액세스될 수 있다. 제시된 리스트로부터 볼륨 그룹(18)의 완료된 백업 세트(78a...78n) 중 하나의 사용자 또는 애플리케이션 선택을 수신하면(블록 254에서), 백업 서비스(16)는 볼륨 그룹(18)의 선택된 완료된 백업에서의 각각의 백업된 볼륨(20)을 복 구한다(블록 256에서). 백업 서비스(16)는 가상 복사(26) 또는 타겟 볼륨(22)으로부터 볼륨을 복구할 수 있다. 하나의 실시예에서, 백업 서비스(16)는 복구하는데 반대 방향의 플래시카피를 사용할 수 있다.
설명한 실시예들은 선택된 볼륨 그룹의 모든 볼륨들에 관련하여 백업 동작을 자동으로 수행하기 위한 기술을 제공한다. 설명한 실시예로써, 백업 서비스는 볼륨 그룹을 백업하도록 호출되면, 전체적으로 볼륨 그룹에 대하여 백업 정보를 유지하도록 볼륨 그룹 내의 각각의 볼륨에 관련하여 백업 동작을 자동으로 수행한다. 부가의 실시예들은 선택된 볼륨 그룹에 대하여 볼륨들을 복구하기 위한 기술을 제공한다.
설명한 동작들은 표준 프로그래밍 및/또는 엔지니어링 기술을 사용하여 소프트웨어, 펌웨어, 하드웨어, 또는 이들의 임의의 조합을 생성하는 방법, 장치 또는 제조 물품으로서 구현될 수 있다. 설명한 동작들은 “컴퓨터 판독가능 매체”에 유지되는 코드로서 구현될 수 있으며, 여기에서 프로세서가 컴퓨터 판독가능 매체로부터 코드를 판독하고 실행할 수 있다. 컴퓨터 판독가능 매체는 자기 저장 매체(예를 들어, 하드 디스크 드라이브, 플로피 디스크, 테이프 등), 광학 저장장치(CD-ROM, DVD, 광학 디스크 등), 휘발성 및 비휘발성 메모리 디바이스(예를 들어, EEPROM, ROM, PROM, RAM, DRAM, SRAM, 플래시 메모리, 펌웨어, 프로그램 가능 로직 등) 등과 같은 매체를 포함할 수 있다. 설명한 동작들을 구현하는 코드는 하드웨어 디바이스에서 구현되는 하드웨어 로직(예를 들어, 집적 회로 칩, PGA(Programmable Gate Array), ASIC(Application Specific Integrated Circuit) 등)으로 더 구현될 수 있다. 또한, 설명한 동작들을 구현하는 코드는 “전송 신호”로 구현될 수 있으며, 여기에서 전송 신호는 광섬유, 구리 와이어 등과 같은 전송 매체를 통하여 또는 공간을 통하여 전파할 수 있다. 코드 또는 로직이 인코딩되는 전송 신호는 무선 신호, 위성 전송, 전파, 적외선 신호, 블루투스 등을 더 포함할 수 있다. 코드 또는 로직이 인코딩되는 전송 신호는 송신국에 의해 송신되고 수신국에 의해 수신될 수 있으며, 여기에서 전송 신호에 인코딩된 코드 또는 로직은 수신국과 송신국 또는 수신 디바이스와 송신 디바이스에서의 하드웨어 또는 컴퓨터 판독가능 매체에서 디코딩되고 저장될 수 있다. “제조 물품”은 코드가 구현될 수 있는 컴퓨터 판독가능 매체, 하드웨어 로직, 및/또는 전송 신호를 포함한다. 동작들의 설명한 실시예들을 구현하는 코드가 인코딩되는 디바이스는 컴퓨터 판독가능 매체 또는 하드웨어 로직을 포함할 수 있다. 물론, 당해 기술 분야에서의 숙련자라면, 본 발명의 범위에서 벗어나지 않고서 이러한 구성에 대한 수많은 변경들이 이루어질 수 있으며 제조 물품이 당해 기술 분야에 공지되어 있는 적합한 정보 베어링 매체를 포함할 수 있다는 것을 알 것이다.
도 13은 도 1의 호스트(2) 및 저장 서버(4)에서 구현될 수 있는 컴퓨터 아키텍쳐(300)의 하나의 구현을 도시한다. 아키텍쳐(300)는 프로세서(302)(예를 들어, 마이크로프로세서), 메모리(304)(예를 들어, 휘발성 메모리 디바이스), 및 저장장치(306)(예를 들어, 자기 디스크 드라이브, 광학 디스크 드라이브, 테이프 드라이브 등과 같은 비휘발성 저장장치)를 포함할 수 있다. 저장장치(306)는 내부 저장 디바이스 또는 부착되거나 네트워크 액세스가능한 저장장치를 포함할 수 있다. 저 장장치(306)에서 운영 체제(308), 디바이스 드라이버 및 애플리케이션 프로그램을 포함하는 프로그램들은, 당해 기술 분야에 공지된 방식으로, 메모리(304)로 로딩되고 프로세서(302)에 의해 실행된다. 아키텍쳐는 네트워크와의 통신이 가능한 네트워크 카드(310)를 더 포함한다. 입력 디바이스(312)는 프로세서(302)에 사용자 입력을 제공하는데 사용되고, 키보드, 마우스, 펜스타일러스, 마이크로폰, 터치 감지형 디스플레이 스크린, 또는 당해 기술 분야에 공지되어 있는 임의의 기타 작동 또는 입력 메커니즘을 포함할 수 있다. 출력 디바이스(314)는 프로세서(302) 또는 디스플레이 모니터, 프린터, 저장장치 등과 같은 기타 컴포넌트로부터 전송된 정보를 제시할 수 있다.
서로 통신하고 있는 디바이스들은, 달리 명시적으로 기재되어 있지 않는 한, 서로 연속적으로 통신하여야 하는 것은 아니다. 또한, 서로 통신하고 있는 디바이스들은, 하나 이상의 중간체를 통하여 직접적으로 또는 간접적으로 통신할 수 있다.
서로 통신하는 여러 컴포넌트들을 구비한 실시예들의 설명은, 이러한 컴포넌트들이 전부 필요하다는 것을 의미하는 것은 아니다. 이에 반하여, 본 발명의 광범위하게 다양한 가능한 실시예들을 예시하도록 다양한 선택적 컴포넌트들이 설명되는 것이다.
또한, 프로세스 단계들, 방법 단계들, 알고리즘들 등이 순차적인 순서대로 설명될 수 있지만, 이러한 프로세스들, 방법들, 및 알고리즘들은 다른 순서대로 작업하도록 구성될 수 있다. 다시 말하자면, 설명될 수 있는 단계들의 임의의 시퀀스 또는 순서가 반드시 그 순서대로 단계들이 수행되어야 하는 요건을 나타내는 것은 아니다. 여기에 설명된 프로세스의 단계들은 임의의 순서 실시대로 수행될 수 있다. 또한, 일부 단계들은 동시에 수행될 수 있다.
단일 디바이스 또는 물품이 여기에 기재된 경우, 하나보다 많은 수의 디바이스/물품(그것들이 협동하든 아니든)이 단일 디바이스/물품을 대신하여 사용될 수 있다는 것이 용이하게 명백할 것이다. 마찬가지로, 하나보다 많은 수의 디바이스 또는 물품이 여기에 기재되는 경우(그것들이 협동하든 아니든), 단일 디바이스/물품이 하나보다 많은 디바이스 또는 물품을 대신하여 사용될 수 있거나, 다른 수의 디바이스/물품이 도시된 수의 디바이스 또는 프로그램을 대신하여 사용될 수 있다는 것이 용이하게 명백할 것이다. 디바이스의 기능 및/또는 특징은 대안으로서 이러한 기능/특징을 갖는 것으로서 명시적으로 기재되지는 않은 하나 이상의 다른 디바이스에 의해 구현될 수 있다. 따라서, 본 발명의 다른 실시예들이 디바이스 자체를 포함하여야 하는 것은 아니다.
도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 및 도 12의 도시된 동작들은 특정 순서대로 일어나는 특정 이벤트를 도시한다. 대안의 실시예에서, 특정 동작들은 상이한 순서로 수행될 수 있거나, 변경되거나 삭제될 수 있다. 또한, 단계들이 상기 설명한 로직에 추가되면서 여전히 설명한 실시예에 따를 수 있다. 또한, 여기에 설명된 동작들은 순차적으로 일어날 수 있거나, 특정 동작들이 병행하여 처리될 수 있다. 또한, 동작들은 단일 처리 유닛에 의해 또는 분산 처리 유닛들에 의해 수행될 수 있다.

Claims (10)

  1. 볼륨(volume)들의 볼륨 그룹에 대하여 백업(backup) 동작을 수행하는 방법에 있어서,
    복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정 - 상기 백업 설정은 상기 볼륨 그룹을 위해 유지하는 백업들의 최대 수를 표시함 - 을 유지하고;
    상기 백업 설정이 적용될 볼륨 그룹 - 상기 볼륨 그룹은 호스트들과 볼륨들을 연관시키며, 상기 볼륨 그룹 내의 볼륨들에 액세스하는 것이 가능한 호스트들을 표시함 - 을 선택하며;
    상기 볼륨 그룹 내의 모든 볼륨들에 대하여 수행하기 위해, 선택된 상기 볼륨 그룹에 대하여 자동 백업 동작을 호출하는 것을 포함하고,
    상기 자동 백업 동작을 호출하는 것은,
    상기 볼륨 그룹과 연관된 볼륨들에 대하여 수행된 백업들 및 상기 볼륨 그룹과 연관된 상기 볼륨들을 백업하는 백업 빈도(backup frequency)를 표시하는 상기 볼륨 그룹에 대한 백업 정보를 생성하고;
    상기 백업 설정 및 상기 볼륨 그룹에 대한 백업 빈도에 따라 상기 볼륨 그룹에 대하여 백업을 수행할지 여부를 결정하기 위해, 상기 볼륨 그룹에 대한 백업 정보를 처리하며;
    상기 볼륨 그룹에 대하여 백업 동작을 수행할 것을 결정하는 것에 응답하여 상기 볼륨 그룹 내의 각각의 볼륨을 백업하는 것
    을 포함하며,
    상기 볼륨 그룹 내의 각각의 볼륨을 백업하는 것은,
    상기 볼륨 그룹에 대한 상기 백업 정보가, 상기 볼륨 그룹에 대하여 완료된 백업들의 수가 상기 백업들의 최대 수와 동일하다는 것을 표시하는지의 여부를 결정하고,
    상기 볼륨 그룹 내의 각각의 볼륨에 대하여 타겟(target) 볼륨을 할당하고 - 상기 볼륨 그룹 내의 각각의 볼륨은 할당된 타겟 볼륨들 중 하나에 백업되는 것이고, 상기 볼륨 그룹 내의 볼륨들에 대하여 상기 타겟 볼륨들을 할당하는 것은 상기 볼륨 그룹에 대하여 완료된 백업들의 수가 상기 백업들의 최대 수와 동일하다고 결정하는 것에 응답하여, 상기 볼륨 그룹의 이전의 백업으로부터의 상기 타겟 볼륨들을 이용하는 것을 포함하는 것임 - ;
    상기 볼륨 그룹 내의 모든 볼륨들의 데이터가 일 시점(point-in-time)에서 일관되도록 하기 위해, 상기 볼륨 그룹 내의 볼륨들을 할당된 상기 타겟 볼륨들에 백업하는 동작들을 수행하며 - 상기 볼륨 그룹의 백업은 상기 볼륨 그룹 내의 각각의 볼륨을 성공적으로 백업하는 것에 응답하여 완료됨 - ;
    상기 볼륨 그룹 내의 모든 볼륨들의 백업을 완료하는 것에 응답하여, 상기 볼륨 그룹에 대한 백업 정보에 상기 볼륨 그룹에 대하여 완료된 백업을 표시하는 것
    에 의해 수행되는 것인, 백업 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 백업 동작을 수행할지 여부를 결정하기 위해 상기 볼륨 그룹에 대한 백업 정보를 처리하는 것은,
    상기 볼륨 그룹에 대한 상기 백업 정보로부터 가장 최근에 완료된 백업을 결정하고;
    현재 시간과 상기 가장 최근에 완료된 백업 시간의 차이가 상기 백업 빈도를 초과하는지 여부를 결정하는 것을 포함하고,
    상기 백업은 상기 현재 시간과 상기 가장 최근에 완료된 백업 시간의 차이가 상기 백업 빈도를 초과한다고 결정하는 것에 응답하여, 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 수행되는 것인, 백업 방법.
  4. 제1항에 있어서,
    상기 각각의 볼륨을 백업하는 것은,
    상기 볼륨의 가상 복사본(virtual copy)를 생성하고 - 상기 백업은 상기 가상 복사본을 생성하는 것에 응답하여 완료되는 것임 - ;
    상기 가상 복사본에 표시된 상기 볼륨으로부터 상기 타겟 볼륨으로 데이터를 복사하는 것을 포함하고,
    백업할 볼륨들 및 타겟 볼륨들은 하드 디스크 드라이브에서 구현되는 것인, 백업 방법.
  5. 제1항에 있어서,
    상이한 시간마다 상기 볼륨 그룹의 완료된 백업들의 리스트를 제시하고;
    상기 제시된 리스트로부터 상기 볼륨 그룹의 완료된 백업들 중 하나에 관한 사용자 선택을 수신하며;
    상기 볼륨 그룹의 완료된 백업에 관한 사용자 선택에 응답하여 상기 볼륨 그룹의 선택된 완료된 백업과 연관된 각각의 백업된 볼륨을 복구하는 것을 더 포함하는, 백업 방법.
  6. 제1항에 있어서,
    상기 볼륨 그룹에 대한 자동 백업 동작은,
    볼륨의 백업이 완료될 때까지 상기 볼륨에 대한 부가의 기록들을 수락하지 않도록 하기 위해, 상기 볼륨 그룹 내의 각각의 볼륨에 대하여 조건(condition)을 개시하는 것을 더 포함하는 것인, 백업 방법.
  7. 제1항에 있어서,
    상기 볼륨 그룹에 대한 자동 백업 동작은,
    상기 볼륨 그룹 내의 각각의 볼륨의 백업에서의 데이터가 일관성(consistency) 그룹의 일부임을 보장하도록 하기 위해, 저장 서버로 하여금 상기 볼륨 그룹 내의 볼륨들에 대하여 일관성 동작을 수행하게 하도록 상기 저장 서버와 통신하는 것을 더 포함하는 것인, 백업 방법.
  8. 제1항에 있어서,
    상기 백업 설정이 적용될 볼륨 그룹을 선택하는 것과 상기 볼륨 그룹과 연관된 백업 설정을 정의하는 것은, 사용자 중재 없이 자동으로 수행되는 것인, 백업 방법.
  9. 볼륨들을 갖는 적어도 하나의 저장장치 및 호스트 시스템들과 통신하는 시스템에 있어서,
    프로세서;
    복수의 볼륨들을 연관시키는 볼륨 그룹에 대한 정보 및 백업 설정 - 상기 백업 설정은 상기 볼륨 그룹을 위해 유지하는 백업들의 최대 수를 표시함 - 을 포함하는 컴퓨터 판독가능 저장 매체; 및
    제1항, 제3항 내지 제8항 중 어느 한 항에 따른 방법의 동작들을 수행하도록 상기 프로세서에 의해 실행되는 상기 컴퓨터 판독가능 저장 매체 내의 백업 서비스를 포함하는 시스템.
  10. 저장 장치 내의 볼륨들을 백업하기 위해 실행되는 코드가 기록된 컴퓨터 판독가능한 저장 매체에 있어서, 호스트들이 네트워크를 통해 상기 볼륨들에 액세스하는 것이고, 상기 코드는 컴퓨터상에서 실행될 때 제1항, 제3항 내지 제8항 중 어느 한 항에 따른 방법의 동작들을 수행하도록 하는 것인, 컴퓨터 판독가능한 저장 매체.
KR1020097015546A 2007-05-21 2008-05-06 볼륨들의 볼륨 그룹에 대한 백업 동작 수행 KR101091235B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/751,588 2007-05-21
US11/751,588 US7987326B2 (en) 2007-05-21 2007-05-21 Performing backup operations for a volume group of volumes
PCT/EP2008/055550 WO2008141920A1 (en) 2007-05-21 2008-05-06 Performing backup operations for a volume group of volumes

Publications (2)

Publication Number Publication Date
KR20090113271A KR20090113271A (ko) 2009-10-29
KR101091235B1 true KR101091235B1 (ko) 2011-12-07

Family

ID=39769375

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097015546A KR101091235B1 (ko) 2007-05-21 2008-05-06 볼륨들의 볼륨 그룹에 대한 백업 동작 수행

Country Status (6)

Country Link
US (1) US7987326B2 (ko)
EP (1) EP2158541B1 (ko)
KR (1) KR101091235B1 (ko)
AT (1) ATE481680T1 (ko)
DE (1) DE602008002599D1 (ko)
WO (1) WO2008141920A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7991972B2 (en) * 2007-12-06 2011-08-02 International Business Machines Corporation Determining whether to use a full volume or repository for a logical copy backup space
US8631217B2 (en) * 2008-02-26 2014-01-14 International Business Machines Corporation Apparatus, system, and method for virtual machine backup
US8032730B2 (en) * 2008-05-15 2011-10-04 Hitachi, Ltd. Method and apparatus for I/O priority control in storage systems
JP5172574B2 (ja) 2008-09-29 2013-03-27 株式会社日立製作所 アプリケーションデータのバックアップ構成構築に用いる管理計算機
US8560787B2 (en) * 2009-03-30 2013-10-15 International Business Machines Corporation Incremental backup of source to target storage volume
CN101714916B (zh) * 2009-11-26 2013-06-05 华为数字技术(成都)有限公司 一种备份方法、设备和系统
US8688935B1 (en) * 2010-01-19 2014-04-01 Infinidat Ltd Storage system and method for snapshot space management
CA2794339C (en) 2010-03-26 2017-02-21 Carbonite, Inc. Transfer of user data between logical data sites
CN102841897B (zh) * 2011-06-23 2016-03-02 阿里巴巴集团控股有限公司 一种实现增量数据抽取的方法、装置及系统
US8990164B1 (en) * 2012-02-01 2015-03-24 Symantec Corporation Systems and methods for performing incremental backups
US9600376B1 (en) * 2012-07-02 2017-03-21 Veritas Technologies Llc Backup and replication configuration using replication topology
US8782005B2 (en) * 2012-12-12 2014-07-15 Storagecraft Technology Corporation Pruning previously-allocated free blocks from a synthetic backup
US9165001B1 (en) * 2012-12-19 2015-10-20 Emc Corporation Multi stream deduplicated backup of collaboration server data
US10210050B1 (en) * 2013-12-23 2019-02-19 EMC IP Holding Company LLC Consistency group driven backup
US10496556B1 (en) * 2014-06-25 2019-12-03 Pure Storage, Inc. Dynamic data protection within a flash storage system
US9852072B2 (en) * 2015-07-02 2017-12-26 Netapp, Inc. Methods for host-side caching and application consistent writeback restore and devices thereof
US9996267B2 (en) * 2015-08-11 2018-06-12 International Business Machines Corporation Adjustment of volume synchronization
US10416921B2 (en) 2017-03-31 2019-09-17 International Business Machines Corporation Point-in-time snap copy on asynchronous consistency group management
US11379335B2 (en) * 2017-10-05 2022-07-05 International Business Machines Corporation Self-reporting remote copy performance on a consistency group
US11010470B2 (en) * 2017-12-15 2021-05-18 Microsoft Technology Licensing, Llc Anti-virus file system cache for operating system remediation
US20190042413A1 (en) * 2018-03-02 2019-02-07 Intel Corporation Method and apparatus to provide predictable read latency for a storage device
JP2021170196A (ja) * 2020-04-15 2021-10-28 株式会社日立製作所 ストレージシステム及び計算機システム

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5454099A (en) 1989-07-25 1995-09-26 International Business Machines Corporation CPU implemented method for backing up modified data sets in non-volatile store for recovery in the event of CPU failure
JP3448068B2 (ja) * 1991-12-24 2003-09-16 富士通株式会社 データ処理システムおよびストレージ管理方法
US5574906A (en) 1994-10-24 1996-11-12 International Business Machines Corporation System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing
EP0899662A1 (en) 1997-08-29 1999-03-03 Hewlett-Packard Company Backup and restore system for a computer network
US6269381B1 (en) * 1998-06-30 2001-07-31 Emc Corporation Method and apparatus for backing up data before updating the data and for restoring from the backups
JP4044717B2 (ja) 2000-03-31 2008-02-06 株式会社日立製作所 記憶サブシステムのデータ二重化方法及びデータ二重化システム
US6779095B2 (en) 2000-06-19 2004-08-17 Storage Technology Corporation Apparatus and method for instant copy of data using pointers to new and original data in a data location
US6941328B2 (en) 2002-01-22 2005-09-06 International Business Machines Corporation Copy process substituting compressible bit pattern for any unqualified data objects
JP4411929B2 (ja) * 2003-02-28 2010-02-10 株式会社日立製作所 バックアップ方法、システム、及びプログラム
US7146474B2 (en) 2003-03-12 2006-12-05 International Business Machines Corporation System, method and computer program product to automatically select target volumes for a fast copy to optimize performance and availability
US7263590B1 (en) * 2003-04-23 2007-08-28 Emc Corporation Method and apparatus for migrating data in a computer system
US7133982B2 (en) * 2003-06-18 2006-11-07 International Business Machines Corporation Method, system, and article of manufacture for consistent copying of storage volumes
JP4267420B2 (ja) 2003-10-20 2009-05-27 株式会社日立製作所 ストレージ装置及びバックアップ取得方法
CA2548542C (en) * 2003-11-13 2011-08-09 Commvault Systems, Inc. System and method for performing a snapshot and for restoring data
JP4426262B2 (ja) 2003-11-26 2010-03-03 株式会社日立製作所 ディスクアレイ装置及びディスクアレイ装置の障害回避方法
JP4469252B2 (ja) 2004-10-19 2010-05-26 株式会社日立製作所 ストレージネットワークシステム及びホスト計算機並びに物理パス割当方法
US20070300033A1 (en) * 2006-06-21 2007-12-27 Hitachi, Ltd. System and method for reconfiguring continuous data protection system upon volume size change
JP2008065392A (ja) * 2006-09-04 2008-03-21 Hitachi Ltd ストレージ装置及びこれを用いたデータのバックアップ方法
JP4930934B2 (ja) * 2006-09-29 2012-05-16 株式会社日立製作所 データマイグレーション方法及び情報処理システム

Also Published As

Publication number Publication date
EP2158541A1 (en) 2010-03-03
US20080294859A1 (en) 2008-11-27
ATE481680T1 (de) 2010-10-15
KR20090113271A (ko) 2009-10-29
EP2158541B1 (en) 2010-09-15
DE602008002599D1 (de) 2010-10-28
WO2008141920A1 (en) 2008-11-27
US7987326B2 (en) 2011-07-26

Similar Documents

Publication Publication Date Title
KR101091235B1 (ko) 볼륨들의 볼륨 그룹에 대한 백업 동작 수행
US10261868B2 (en) Using a forward log storage and backward log storage to recover a storage to a forward or backward point-in-time
JP5756394B2 (ja) 順次バックアップ・デバイス内に格納されたバックアップ・オブジェクトからファイルの復元セットを復元するためのコンピュータ・プログラム、システム、および方法
EP2731013B1 (en) Backing up method, device, and system for virtual machine
US7650475B2 (en) Storage system and method for managing data using the same
US8725694B2 (en) Systems and methods for performing replication copy storage operations
US7873865B2 (en) Apparatus and method for controlling data recovery
JP4454342B2 (ja) ストレージシステム及びストレージシステムの制御方法
US7389292B2 (en) Systems and methods of information backup
US7870353B2 (en) Copying storage units and related metadata to storage
US7509466B2 (en) Backup method for a copy pair using newly created logical volume via virtual server device
US9442809B2 (en) Management computer used to construct backup configuration of application data
US7185048B2 (en) Backup processing method
US20070027935A1 (en) Backing up source files in their native file formats to a target storage
US20100250495A1 (en) Backing-up and restoring files including files referenced with multiple file names
JP2005031716A (ja) データバックアップの方法及び装置
US11175994B2 (en) Copying data from multiple point-in-time copies to a log storage to use to roll-back a source storage
KR100819022B1 (ko) 하나의 타겟 볼륨과 하나의 소스 볼륨 사이의 관계 관리
JP4917102B2 (ja) ローカル・ストレージおよびリモート・ストレージの混合環境におけるデータ・セット・バージョンのカウントのための方法、プログラム、およびシステム
US9063892B1 (en) Managing restore operations using data less writes
JP2008242744A (ja) Cdpに従うリカバリを実行するストレージ装置の管理装置及び方法
US10783047B2 (en) Forming a consistency group comprised of volumes maintained by one or more storage controllers
JP2005215940A (ja) ストレージシステム、サーバ装置及び先行コピーデータ生成方法
US20240020206A1 (en) Data control apparatus and data control method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee