KR20040010836A - 정보 백업 시스템 및 방법 - Google Patents

정보 백업 시스템 및 방법 Download PDF

Info

Publication number
KR20040010836A
KR20040010836A KR10-2004-7000135A KR20047000135A KR20040010836A KR 20040010836 A KR20040010836 A KR 20040010836A KR 20047000135 A KR20047000135 A KR 20047000135A KR 20040010836 A KR20040010836 A KR 20040010836A
Authority
KR
South Korea
Prior art keywords
job
master
jobs
backup
information
Prior art date
Application number
KR10-2004-7000135A
Other languages
English (en)
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 KR20040010836A publication Critical patent/KR20040010836A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • 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
    • 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/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
    • 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/1456Hardware arrangements for backup
    • 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
    • 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/1469Backup restoration techniques
    • 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
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • 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
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)
  • Retry When Errors Occur (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 정보를 백업 및 복원하는 시스템에 관한 것으로서, 이 시스템은, 백업 및 복원할 정보를 포함하는 적어도 하나의 컴퓨터 시스템; 및 백업될 정보의 적어도 일부를 수신하여, 이 정보를 저장하고 백업하는 저장 장치를 포함한다. 제어기는 사용자의 잡 큐에의 입력을 허용하는 스케줄링 시스템과, 상기 백업 또는 복원될 적어도 하나의 컴퓨터 시스템의 정보 중 일부 또는 그 이상의 부분을 나타내는 마스터 잡과, 상기 마스터 잡을 복수의 소규모의 잡들로 분할하여 상기 잡 큐에 입력하는 잡 제어 시스템을 포함한다.

Description

정보 백업 시스템 및 방법{SYSTEMS AND METHODS OF INFORMATION BACKUP}
백업 저장 장치는 정보를 서버나 그 외 다른 네트워크 기기 또는 장치에 정보를 백업하는 데 사용된다. 백업 저장 장치는 예컨대 파일, 데이터베이스, 시스템 정보 및 파일 등을 포함한 여러 종류의 정보를 백업하는 데 사용되곤 한다.
복수의 호스트 디바이스 사이에서 하나의 백업 저장 장치가 공유되면, 이 백업 저장 장치에 판독 또는 기입하기 위해 액세스할 경우에 문제가 발생할 수 있다. 도 1a에는 백업 저장 장치를 포함하는 LAN(local area network)의 일례가 도시되어 있다. LAN은 네트워크(9)를 통해 상호 접속되어 있는 하나 이상의 워크스테이션(5a∼5n)과 하나 이상의 서버(6a∼6n)와 적어도 하나의 백업 저장 장치(7)를 포함한다. 워크스테이션들(5a∼5n)과 서버들(6a∼6n)은 각각 서로 다른 오퍼레이팅 시스템을 사용할 수 있다. 백업 저장 장치(7)는 예컨대 테이프 라이브러리와 같은 테이프 장치일 수 있다. 워크스테이션(5a∼5n), 서버(6a∼6n) 등의 호스트 디바이스들이 동일한 저장 장치(7)를 공유하면, 오퍼레이팅 시스템들은 제각기 데이터를 저장 장치(7)의 동일 위치에 저장하려고 시도할 수 있다. 이러한 경우, 한 호스트 디바이스가 요청했던 데이터가, 그 이후에 다른 호스트 디바이스가 기입한 데이터로 덮어씌어질 수 있다. 또한, 어떤 오퍼레이팅 시스템은 저장 장치(7)의 특정 주소에 특수한 정보를 저장할 수 있다. 또 다른 어떤 오퍼레이팅 시스템은 동일 저장 영역 내의 하나 이상의 위치에 식별 정보를 저장하는 임의의 부속 저장 장치를 필요로 할 수 있다. 이는, 공유하는 저장 장치를 제공하는 데 있어서 충돌과 문제를 유발시킨다. 제어기는 저장 장치(7)에의 액세스를 제어하는 데 사용될 수 있다. 그러나, 제어기가 고장이 나서 멈추면, 저장 시스템 데이터가 영구히 소실될 수 있다.
호스트 디바이스들의 데이터를 백업하는 데에는 복수의 저장 장치가 제공될 수 있다. 그러나, 복수의 저장 장치를 복수의 호스트에 대해 백업과 복원을 허용하는 효율적이고 유효한 방식으로 관리하려면, 시간과 자원이 소모되고, LAN이나 WAN(wide area network)의 대역폭을 대량으로 사용하게 된다.
LAN이나 WAN의 대역폭 문제를 해소하기 위해 SAN(storage area network)이 사용될 수 있다. SAN은 저장 장치를 공유하는 고속 저장 네트워크이다. SAN은 LAN이나 WAN 상의 모든 호스트들이 모든 저장 장치를 이용할 수 있게 하여, LAN이나 WAN의 대역폭의 사용을 저감시킬 수 있다.
도 1b는 SAN 환경을 도시한다. SAN은 고속 네트워크(3)를 통해 백업 라이브러리(4a∼4n) 등의 하나 이상의 저장 장치에 연결되어 있는 복수의 분산 서버(2a∼2n)를 포함한다. 백업 장치(4a∼4n)는, 예컨대, 복수의 저장 매체, 피커(picker), 및 저장 매체에의 판독과 기입을 위한 하나 이상의 판독/기입 장치를 각각 포함하는 테이프 라이브러리를 포함할 수 있다. 분산 서버들(2a∼2n)과 백업 장치들(4a∼4n)은, 각종의 고속 스위치 및/또는 브릿지를 포함하는 고속/대용량의 네트워크(3)를 통해 상호 접속되어 있을 수 있다. 이러한 종류의 환경에서는 서버(2a∼2n)와 백업 장치(4a∼4n)가 공유될 수 있는 방법이 여러 가지가 있다. 예를 들면, 서버들(2a∼2n) 중 한 서버는 다른 모든 서버들에 대해 백업 장치(4a∼4n)에의 액세스를 승인하는 주요 중개인으로서의 역할을 할 수 있다. 이를 마스터/슬레이브(master/slave) 시스템이라고 칭하기도 한다. 마스터/슬레이브 시스템에서는, 마스터를 지능형으로 하며, 다른 서버가 백업 장치에 액세스하는 것을 허가하는 시기와 경우에 관한 권한을 갖는 결정권과 재량을 독점적으로 갖는다. 마스터는 네트워크 상의 저장 장치들 각각의 상태에 대한 정보를 생성 및 보유한다.
마스터/슬레이브 시스템이 갖는 문제점들 중 하나는, 마스터가 고장이 나서 멈춘 경우에 다른 서버를 마스터로서 구성하는 데 많은 시간과 노력이 소모된다는 점이다. 다른 모든 서버들은 또 다른 마스터가 시스템 관리자에 의해 지정되고 구성될 때까지 대기한다. 새로운 마스터는 네트워크에 관한 정보 목록을 다시 작성하고, 네트워크 상의 저장 장치들 각각의 상태에 관한 정보를 구축한다. 이는 시간을 소모하고, 비용 손모가 큰 과정일 수 있다.
다른 대안으로서는, 서버들 간에 백업 장치에의 액세스를 분할하여 각각의 서버가 해당 분할 기간 내에서 라이브러리의 슬롯 및 드라이브에만 액세스할 수 있게 하는 것이 있다. 그러나, 이러한 시스템은 백업 장치를 가장 효율적으로 이용할 수 있게 하지는 못한다.
여러 백업 동작에 있어서, 백업 애플리케이션은 데이터를 주(primary) 저장 장치로부터 서버 메모리로 읽어 들이고, 필요한 포맷팅을 행하여, 이를 적절한 백업 저장 장치로 전송한다. 이러한 처리들은 CPU, IO 채널, 및 시스템 메모리를 상당히 사용하게 되는 것을 수반한다. 백업 동작이 진행 중일 때 서버들이 어떠한 애플리케이션 프로세싱도 수행할 수 없게 될 가능성이 매우 높다. 이는, 시스템 관리자가 서버 상의 애플리케이션 로드(load)가 최소인 때에 백업을 수행하는 것을 선호하는 이유들 중 하나이다. 서버 시스템을 과도하게 사용하지 않고도 백업 동작들을 수행할 수 있게 하여, 정보 백업 동안에도 서버를 자유롭게 활용할 수 있게 하는 것이 바람직할 것이다.
본 건 출원은 2001년 7월 6일자로 출원된 미국특허가출원 제60/303,450호에 기초한 권리를 가지며, 상기 가출원의 기재 내용 모두는 본 건 출원의 명세서에 참조로서 인용되었다.
본 발명은 일반적으로 백업(backup) 시스템에 관한 것으로서, 특히 정보 백업을 제공하는 시스템 및 방법에 관한 것이다.
본 발명과 그에 수반하는 여러 장점들에 대한 보다 완전한 이해는, 첨부된 도면과 함께 이하의 상세한 설명을 참조하면 보다 용이하게 달성될 수 있다 :
도 1a는 LAN 환경의 블럭도.
도 1b는 SAN 환경의 블럭도.
도 2는 본 발명의 시스템 및 방법이 적용될 수 있는 네트워크 환경의 일례를 도시하는 블럭도.
도 3은 본 발명의 시스템 및 방법이 적용될 수 있는 SAN 환경의 일례를 도시하는 블럭도.
도 4 및 도 5는 사용자가 시스템을 구성할 수 있게 하기 위한 화면 표시예를 도시하는 도면.
도 6은 구성된 시스템을 예시하는 블럭도.
도 7∼도 12는 사용자가 잡 큐에 잡들을 셋업할 수 있게 하기 위한 화면 표시예를 도시하는 도면.
도 13은 사용자가 원격 서버를 백업할 수 있게 하기 위한 화면 표시예를 도시하는 도면.
도 14는 본 발명의 시스템 및 방법에 따른 서버들에 사용되는 각종 엔진들을 도시하는 블럭도.
도 15는 일 실시예에 따른 멀티플 스트림 백업(multiple stream backup)을설명하기 위한 흐름도.
도 16은 서버리스 백업(serverless backup)을 설명하기 위한 블럭도.
도 17∼도 19는 서버리스 백업의 다양한 양상을 설명하기 위한 흐름도.
도 20은 파일 및 파일의 데이터 블럭을 도시하는 도면.
도 21 및 도 22는 사용자가 라이브러리를 구성할 수 있게 하는 GUI를 도시하는 도면.
도 23∼도 25는 서버리스 백업 동작을 설명하기 위한 흐름도.
정보를 백업 및 복원하기 위한 시스템은, 백업 및 복원될 정보를 포함하는 적어도 하나의 컴퓨터 시스템; 및 백업될 정보의 적어도 일부를 수신하고, 그 정보를 저장 및 백업하기 위한 저장 장치를 포함한다. 제어기는, 사용자가 잡 큐(job queue)에 입력할 수 있게 하는 스케줄링 시스템; 마스터 잡(master job); 및 상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고, 이 복수의 소규모 잡들을 상기 잡 큐에 입력하는 잡 제어 시스템을 포함한다.
상기 사용자는 상기 마스터 잡을 상기 잡 큐에 입력할 경우에 상기 마스터 잡이 실행될 시간을 지정할 수 있다. 잡 엔진(job engine)은 실행될 잡들의 상기 잡 큐를 주기적으로 검사(scan)하고, 상기 마스터 잡이 실행될 시간일 때에 상기 잡 제어 시스템은 상기 마스터 잡을 상기 복수의 소규모 잡들로 분할한다. 상기 복수의 소규모 잡들 각각은 단일의 소스 엔티티(source entity)의 백업 또는 복원에 대응할 수 있다. 상기 마스터 잡은 전체 컴퓨터 시스템의 백업 또는 복원이며, 상기 단일 소스 엔티티는 상기 전체 컴퓨터 시스템의 파일 시스템 및 데이터베이스 중 하나일 수 있다. 상기 저장 장치는 테이프 장치를 포함할 수 있고, 테이프 라이브러리를 포함할 수 있다. 상기 적어도 하나의 컴퓨터 시스템은 서버 시스템을 포함할 수 있다.
또한, 컴퓨터 시스템 상의 정보를 백업 및 복원하는 방법이 개시된다. 이 방법은, 소정의 시간에 상기 컴퓨터 시스템 상의 정보 중 적어도 일부에 대해 수행될 백업과 복원 중 적어도 하나를 나타내는 마스터 잡을 잡 큐에 입력하는 단계; 수행될 마스터 잡의 상기 잡 큐를 검사하여, 상기 마스터 잡이 수행될 시간일 때, 상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고, 이 복수의 소규모 잡들을 상기 잡 큐에 입력하는 단계; 상기 소규모 잡들의 잡 큐를 검사하여, 상기 복수의 소규모 잡들 중 하나가 검출되면, 저장 장치가 이용 가능한지의 여부를 판정하는 단계; 및 이용 가능한 저장 장치 각각에 대해 상기 복수의 소규모 잡들 중 하나를 개시하는 단계를 포함한다.
상기 방법은, 한 소규모 잡이 완료되면, 사용되었던 저장 장치가 다시 이용가능하다는 표시를 제공하고, 상기 이용 가능하게 된 저장 장치를 이용하여 또 다른 소규모 잡을 개시하는 단계를 포함한다. 소규모 잡들의 잡 큐를 검사하는 상기 단계, 복수의 소규모 잡들 중 하나를 개시하는 상기 단계, 및 표시를 제공하는 상기 단계는 상기 소규모 잡들 각각이 완료될 때까지 반복적으로 수행될 수 있다. 상기 마스터 잡은, 상기 마스터 잡이 수행되기 전 또는 후에 적어도 하나의 동작을 수행하기 위한 명령어(insturction)를 포함할 수 있다. 상기 마스터 잡이 수행된 후에 수행되는 동작은 상기 마스터 잡에 상응하는 최후의 소규모 잡이 수행된 후에 수행될 수 있다. 상기 마스터 잡이 수행되기 전에 수행되는 동작은 상기 마스터 잡에 상응하는 최초의 소규모 잡이 수행되기 전에 수행될 수 있다.
또한, 정보를 백업 및 복원하기 위한 컴퓨터 실행 가능 코드를 포함하는 컴퓨터 기록 매체가 개시된다. 이 컴퓨터 기록 매체는, 사용자가 백업 또는 복원될 정보의 일부 또는 그 이상의 부분을 나타내는 마스터 잡을 잡 큐에 입력할 수 있게 하기 위한 코드; 및 상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고, 이 복수의 소규모 잡들을 상기 잡 큐에 입력하기 위한 코드를 포함한다.
사용자가 마스터 잡을 잡 큐에 입력할 수 있게 하기 위한 상기 코드는 상기 사용자가 상기 마스터 잡이 실행될 시간을 지정할 수 있게 할 수 있다. 상기 컴퓨터 기록 매체는, 실행될 잡들의 상기 잡 큐를 주기적으로 검사하여, 상기 마스터 잡이 실행될 시간일 때에, 상기 마스터 잡을 상기 보다 소규모의 복수의 잡들로 분할하기 위한 코드를 더 포함할 수 있다. 상기 복수의 소규모 잡들 각각은 단일의 소스 엔티티의 백업 또는 복원에 대응할 수 있다. 상기 마스터 잡은 전체 컴퓨터시스템의 백업 또는 복원일 수 있고, 상기 단일 소스 엔티티는 상기 전체 컴퓨터 시스템의 파일 시스템 및 데이터베이스 중 하나일 수 있다.
컴퓨터 시스템 상의 정보를 백업 및 복원하기 위한 컴퓨터 실행 가능 코드를 포함하는 컴퓨터 기록 매체는, 소정의 시간에 상기 컴퓨터 시스템 상의 정보 중 적어도 일부에 대해 수행되는 백업 및 복원 중 적어도 하나를 나타내는 마스터 잡을 잡 큐에 입력하기 위한 코드; 수행될 마스터 잡의 상기 잡 큐를 검사하여, 상기 마스터 잡이 수행될 시간일 때에, 상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고, 이 복수의 소규모 잡들을 상기 잡 큐에 입력하기 위한 코드; 상기 소규모 잡들의 잡 큐를 검사하여, 상기 복수의 소규모 잡들 중 하나가 검출되면, 저장 장치가 이용 가능한지의 여부를 판정하기 위한 코드; 및 이용 가능한 저장 장치 각각에 대해 상기 복수의 소규모 잡들 중 하나를 개시하기 위한 코드를 포함한다.
상기 컴퓨터 기록 매체는, 한 소규모 잡이 완료되면, 사용되었던 저장 장치가 다시 이용 가능하다는 표시를 제공하고, 상기 이용 가능하게 된 저장 장치를 사용하여 또 다른 소규모 잡을 개시하기 위한 코드를 더 포함할 수 있다. 상기 소규모 잡들의 잡 큐를 검사하는 것과, 상기 복수의 소규모 잡들 중 하나를 개시하는 것과, 상기 표시를 제공하는 것은, 상기 소규모 잡들 각각이 완료될 때까지 반복적으로 수행될 수 있다. 상기 마스터 잡은, 상기 마스터 잡이 수행되기 전 또는 후에 적어도 하나의 동작을 수행하기 위한 명령어를 포함할 수 있다. 상기 마스터 잡이 수행된 후에 수행되는 동작은 상기 마스터 잡에 상응하는 최후의 소규모 잡이 수행된 후에 수행될 수 있다. 상기 마스터 잡이 수행되기 전에 수행되는 동작은상기 마스터 잡에 상응하는 최초의 소규모 잡이 수행되기 전에 수행될 수 있다.
도면에 예시된 본 발명의 바람직한 실시예에는 설명을 간명하게 하기 위한 특정 용어들이 채택되어 있다. 그러나, 본 발명은 이와 같이 채택된 특정 용어들에 한정되도록 의도된 것이 아니며, 각각의 특정 요소는 유사한 방식으로 동작할 수 있는 모든 기술적 균등물을 포함하는 것임을 이해하여야 한다.
본 발명의 시스템 및 방법은 LAN 환경 뿐만 아니라 SAN 환경 등을 포함한 각종 다른 유형의 환경에서 구현될 수 있다.
도 2는 후술될 실시예들의 하드웨어 및 소프트웨어 환경을 예시한다. 이 시스템은 하나 이상의 네트워크를 통해 상호 연결되어 있는 하나 이상의 워크스테이션(10a∼10n)과 하나 이상의 서버(11a∼11n)와 하나 이상의 백업 장치(13a∼13n)를 포함한다. 이들 워크스테이션(10a∼10n)과 서버(11a∼11n)는 동일한 또는 상이한 오퍼레이팅 시스템을 사용할 수 있다. 워크스테이션(10a∼10n)은 하나 이상의 데스트탑 컴퓨터, 랩탑 컴퓨터, 메인프레임(mainframe) 등을 포함할 수 있다. 도 2에 도시된 실시예에서, 네트워크는 LAN 환경이고, 워크스테이션(10a∼10n)과 서버(11a∼11n)와 백업 시스템(13a∼13n)은 LAN(15)을 통해 상호 연결되어 있다.
또한, 상술한 LAN 환경의 대안으로서, SAN 환경이 제공될 수 있다. SAN 환경에서는, 워크스테이션(10a∼10n)이 도 2에 관하여 상술한 바와 같이 LAN을 통해 하나 이상의 복수의 서버(12a∼12n)에 연결되어 있을 수 있다. 그러나, SAN 환경에서는 도 3에 도시된 바와 같이 서버(12a∼12n)가 네트워크(16)를 통해 하나 이상의 백업 저장 장치(14a∼14n)에 연결되어 있다. 이후에 보다 상세히 설명할 것이지만, 서버(12a∼12n)는 분산 서버(distributed server), 주서버(primary server), 및 백업 저장 장치를 포함하는 서버 그룹으로 지정될 수 있다. 네트워크(16)는, 파이버 채널 네트워크(fibre channel network)의 일부를 형성하는 스위치 및 브릿지의 시스템을 포함할 수 있는 고속 네트워크이다. SAN은 데이터 통신용 고속 고대역폭 시스템을 형성한다. 고속 네트워크(16)는 예컨대 파이버 채널 네트워크, 공유 SCSI 시스템, 또는 SSA 타입 시스템일 수 있다.
여기서는 단 하나의 서버 그룹을 설명하지만, SAN 상에서는 복수의 서버 그룹이 제공될 수 있다. 주서버는 SAN 서버 그룹의 서버들 전부에 대한 정보 흐름을 제어한다. 이는, 2개의 서버가 동시에 장치나 매체를 할당받고자 하는 경우의 충돌을 방지한다.
파이버 채널 어댑터와 파이버 채널 라이브러리는 네트워크(16)에 연결될 수 있어, 노드(node)라고도 지칭된다. 노드는 스위치/허브에 연결되어, 링(ring)을 생성할 수 있다. 파이버 채널 중재 루프(arbitrated loop)라고도 지칭되는 파이버채널 링은 파이버 채널 허브에 의해 연결되어 있는 노드들을 포함하며, 각각의 노드이 다른 노드와 서로 통신할 수 있게 한다. 노드는 전원을 기동할 때나 처음 링에 접속할 때 링에 로그인(log in)한다. 이는, 링에 대한 이벤트를 링의 다른 모든 노드들이 수신할 수 있게 하여, 노드들 각각이 새로운 노드를 인지하게 한다. 링의 노드들 각각에는 제조사에서 정한 단일의 월드-와이드(world-wide) 어드레스 또는 ID가 할당되어, 각각의 노드가 링으로 로그인할 때 식별될 수 있게 한다. 허브에 연결된 테이프 라이브러리와 같은 백업 장치는 네트워크 저장을 인식하고 있는 애플리케이션을 사용하므로, 이 애플리케이션은 백업 장치에 액세스하는 다른 애플리케이션과 인터페이싱하는 일 없이 백업 장치에 액세스할 수 있다.
본 명세서에서 개시하는 SAN 환경에서는 본 발명에 따른 소프트웨어 시스템이 서버(12a∼12n)에 인스톨(install)되어 있다. 그리고, 이 시스템은 주서버와 분산 서버를 정하고, 각각의 서버를 그룹별로 할당하도록 구성된다. 예를 들어, 일 실시예에 따르면, 도 4에 도시된 바와 같은 표시예가 사용자에게 제공된다. 이 표시는, 좌측 측면에, 주서버와 분산 서버의 구성을 트리 뷰(tree view)로 제공하는 패널(20)을 포함한다. 이 표시의 우측 측면의 패널(22)은, 본 발명의 소프트웨어를 인스톨하였으나 아직 서버 그룹에 할당하지 않은 이용 가능한 모든 서버를 보여주는 것이다. 사용자는 우선 커서(도시되지 않음)를 움직여, 상기 표시의 우측 측면에 있는 리스트의 서버들 중 하나를 선택한 다음, Make Primary 버튼(24)을 클릭함으로써 주서버를 선택한다. 또한, 커서를 움직여, 좌측 패널에서 상기 선택된 서버를 선택한 다음, Delete Primary 버튼(26)을 클릭함으로써, 선택된 주서버를선택 해제할 수도 있다. 주서버를 선택한 후에는 분산 서버를 선택하고, 해당 주서버에 할당하여, 서버 그룹을 형성한다. 화면의 오른쪽 윈도우에서 분산 서버를 선택하고, Assign Distributed 버튼(28)을 클릭한다. 분산 서버를 그룹에서 삭제하기 위해서는, 왼쪽 패널에서 해당 서버 명칭을 선택하고, Remove Distributed 버튼(30)을 클릭한다. 이러한 처리는, 사용자가 희망하는 대로 서버 그룹이 구성될 때까지 반복된다.
다음으로, 저장 장치가 서버 그룹에 할당된다. 이 처리는 주서버에서 수행된다. 예를 들어, 공유할 라이브러리를 서버 그룹에 할당하기 위해서는, 주서버 장치에서 Device Group Configuration 다이얼로그를 선택한다. 이는 도 5에 도시된 바와 같은 윈도우로 나타내어지며, 도 5의 윈도우는, 좌측 패널(32)에는 각 서버 그룹을, 우측 패널(34)에는 이용 가능한 저장 매체 장치를 리스트로 보여준다. 본 발명은 저장 매체 장치로서 테이프 라이브러리에 관하여 주로 설명하지만, 테이프 라이브러리에 대한 대안으로서 혹은 테이프 라이브러리에 추가하여, 다른 종류의 저장 매체 장치를 사용할 수 있다. 그룹에 현재 할당되지 않은 테이프 라이브러리는 우측의 Available Devices 패널(34)에 표시된다. 테이프 라이브러리를 그룹에 할당하기 위해서는, Available Devices 패널(34)에 리스트된 라이브러리를 클릭하여 선택한다. 그러면, 사용자가 라이브러리를 추가하고자 하는 그룹이 좌측 패널(32)에서 하이라이트된다. 다음으로, Assign 버튼(36)을 클릭한다. 그러면, 해당 라이브러리는 우측 패널(34)에서 삭제되고, 좌측 패널(32) 내의 장치 그룹의 바로 아래에 배치된다. 더 추가할 라이브러리는 상술한 단계들을 반복하여 그룹에추가할 수 있다. 종료 시에는 OK 버튼(38)을 클릭한다.
도 6은 상술한 바와 같이 하여 구성된 서버 그룹의 일례를 도시한다. 이제, 네트워크는 주서버(13), 분산 서버(15a∼15n), 및 저장 매체 장치(16a∼16n)를 포함한다.
각각의 서버는 수행하여야 할 잡의 잡 큐를 보유한다. 도 7에는 잡 큐의 일례가 도시되어 있다. 잡 큐 탭(40)을 클릭하면, 도시된 바와 같이, 윈도우부(42)에 잡 큐가 표시된다. 도시된 바와 같이, 잡 큐는 잡에 관련된 서버, 잡 번호, 잡 ID, 각각의 잡의 상태, 각각의 잡의 실행 시간을 식별한다.
잡을 실행시킬 때 혹은 실행시키기 위해 스케줄링할 때, 사용자는 해당 잡을 잡 큐에 입력한다. 본 발명의 시스템은 실행될 준비가 된 잡들의 잡 큐를 계속적으로 검사한다. 잡 큐에서 잡을 선택하여 각종 제어 옵션을 오른쪽 클릭(right-click)함으로써, 잡을 제어할 수 있다. 예를 들면, 사용자는 잡의 상태를 HOLD 또는 (현재 HOLD 상태라면) READY로 변경하는 옵션을 제공받을 수 있다. HOLD는 잡이 실행되도록 스케줄링되지 않았다는 것을 의미하고, READY는 잡이 실행될 수 있다는 것을 뜻한다. 또한, 사용자는 미리 저장된 스크립트(script)를 사용하여 잡을 잡 큐에 신속하게 입력할 수 있다. 스크립트는 파일에 저장되어 있는 잡이다. 스크립트는 잡의 원시 소스(original source), 목적지(destination), 옵션, 스케줄 정보를 포함한다. 잡은 새로운 잡을 생성할 필요없이 기존의 잡에 옵션이나 추가의 소스를 부가함으로써 변경될 수 있다. 잡은 잡의 실행 날짜, 시간, 또는 상태를 신속히 변경하도록 재 스케줄링될 수 있다. 또한, 이는, 사용자가 수행된 잡을재 입력하여 여전히 잡 큐에 있게 할 수도 있게 한다. 예를 들면, 사용자는 잡이 처음 실행되었을 때 성공적으로 수행되지 않으면 이를 다시 행하기를 원할 것이다. 또한, 사용자는 잡 큐에서 실행될 잡을 취소하고, 그에 후속하는 일정한 시기에 이를 재 스케줄링할 수도 있다. 잡은 잡 큐에서 완전히 취소되고 제거될 수 있다. 잡을 제거하는 것은 잡 큐에서 잡을 완전히 중단하고 삭제하는 것으로, 이 잡은 재 스케줄링되지 않는다. 사용자가 이 잡을 복귀시키기를 원하면 (이 잡이 스크립트 파일에 미리 저장되어 있지 않은 경우에) 이 잡을 재 생성할 수 있다.
사용자는 잡을 잡 큐에 부가함으로써, 수행될 잡을 셋업할 수 있다. 백업 관리자를 사용하여, 잡을 잡 큐에 부가할 수 있다. 예를 들면, 사용자는 각각의 잡의 소스, 목적지, 스케줄 정보를 설정할 수 있다. 소스를 지정하면, 사용자는 백업하고자 하는 항목들을 지정할 수 있다. 목적지를 지정하면, 사용자는 소스 정보를 백업하고자 하는 장소를 지정할 수 있다. 스케줄 정보를 지정하면, 사용자는 백업을 수행하고 싶은 시간을 지정할 수 있다. 백업 관리자는 백업 위저드(wizard)를 포함한다. 백업 위저드는 사용자에게, 옵션을 선택하고 잡 큐 정보를 지정하기 위한 각종 윈도우를 제공한다. 소스, 목적지, 및 스케줄 정보는 백업 위저드를 사용함으로써 지정될 수 있다.
예를 들어, 백업 위저드가 시동되면, 사용자는 백업하고자 하는 소스 또는 서버를 지정하기 위해 서버 명칭, 사용자 명칭, 및 패스워드를 입력하라는 요청을 받는다. 시스템이 상기 정보를 확인한 후에, 사용자에게는 도 8에 도시된 바와 같은 윈도우(100)가 제공된다. 도시된 바와 같이, 브라우저는 장치 트리(100)를 표시하여, 사용자가 백업을 위한 도메인, 장치, 볼륨(드라이브), 공유, 디렉토리, 및 파일을 선택할 수 있게 한다. 예를 들면, 전체 서버 장치를 백업하기 위해서는, 사용자는 "My Computer"를 하이라이트시킨 다음, Next 버튼(104)을 클릭한다. 그러면, 시스템은 도 9에 도시된 바와 같은 윈도우(106)를 표시한다. 이 윈도우는 사용자에게 백업용 매체를 선택하게 하여 백업 목적지를 정할 것을 요청하는 것이다. 사용자는 백업용 매체를 선택한 후에 Next 버튼(104)을 클릭한다. 그러면, 사용자에게는 도 10에 도시된 바와 같은 백업 옵션 화면(108)이 제공된다. 이 화면은 사용자가 백업될 파일의 범위를 선택하게 함으로써 백업 잡을 커스터마이징할 수 있게 하는 것이다. 예를 들면, 사용자는 Full Backup(110)이나 Incremental Backup(112)을 선택할 수 있다. Incremental Backup이 선택되었다면, 새로운 (또는, 이전의 백업 이후에 변경된 적이 있는) 파일들만이 백업된다. 또한, 이 화면은 사용자가 Verification(114) 및/또는 Compression(116)으로 백업하도록 설정할 수 있게 한다. Next 버튼(104)을 클릭한 후, 사용자에게는 도 11에 도시된 바와 같은 윈도우(118)가 제공될 수 있다. 이 윈도우는 입력된 정보를 보여주고, 사용자에게 그 정보의 확인을 요구하는 것이다. 만일 정보가 잘못되었다면, 사용자는 Back 버튼(103)을 클릭하여 되돌아가, 소정의 엔트리(entry)를 변경할 수 있다. 사용자는 상기 정보를 만족하면, 버튼(104)을 클릭한다. 그러면, 도 12에 도시된 바와 같은 윈도우(120)가 제공된다. 윈도우(120)는 사용자가, 백업 잡을 지금 실행할 지(122), 혹은 특정 날짜와 시간에 실행하도록 스케줄링할지(124)를 선택할 수 있게 한다. 만일 Schedule 버튼(124)이 선택되었다면, 사용자에게는 백업 잡의개시 날짜/시간, 반복 방식, 반복 간격(예컨대, 월, 일, 시, 분) 및 (필요하다면) 백업 잡을 수행하지 않는 날짜를 선택하는 일련의 옵션들이 제공된다.
이와 같이, 본 발명의 시스템은 백업 잡을 스케줄링하는 데 쉽고 직관적인 방법을 제공한다. 또한, 본 발명의 시스템은, 다른 서버 그룹의 원격 서버/기기 또는 어떤 서버 그룹과도 연관되지 않는 원격 서버/기기가, 로컬 서버로부터 백업될 수 있게 한다. 원격 기기는 로컬 서버에 의해 식별될 수 있으며 백업될 데이터가 검색 및 백업될 수 있도록 그에 대한 적절한 에이전트(agent)를 구비하여야 한다. 원격 기기의 에이전트는 목표로 하는 디렉토리들을 브라우징하고 데이터를 패키지화하여 대용량의 데이터 패킷들을 펄스 형태로 로컬 서버에 전송한다. 또한, 로컬 서버는 데이터를, 지정된 저장 장치에 저장하기 위한 준비를 행한다.
에이전트는 제각기 액세스 제어 리스트(access control list : ACL)를 구비할 수 있다. ACL은 해당 에이전트를 통해 어느 로컬 서버가 데이터를 백업 또는 복원할 수 있는지를 식별하기 위한 것이다. ACL은 에이전트를 통해 데이터를 백업/복원하는 것을 거부하거나 허가하는 개별 사용자 및/또는 IT 어드레스를 식별할 수 있다.
본 발명의 시스템은 에이전트가 설치된 노드에서의 로그온(logon) 검증을 받은 사용자를 인증하는 보안 시스템을 제공한다. 로컬 서버로부터 에이전트(에이전트 노드)를 구비한 기기로의 접속은, 사용자가 해당 에이전트 노드에 로그인 액세스를 한 경우에만 확립된다. 또한, 본 발명의 시스템은, 사용자가 에이전트 노드를 성공적으로 조작하기 위해서는 에이전트 노드에 대한 (로그인 액세스 외에도)물리적인 액세스를 하여야 하므로, 한층 부가된 보안 레벨을 제공한다.
ACL은, 개별 에이전트 노드마다, 해당 에이전트 노드를 제어하고 그 기능에 액세스할 수 있는 (기업형 네트워크 상의) 시스템 서버들을 정의한다. 이 기능은, 에이전트를 호스팅한 노드에 셋팅되며, 이 기능을 조작하기 위해서는 물리적인 로컬 노드 액세스가 요구된다. ACL은 해당 노드의 사용자가 그 노드를 액세스할 수 있는 서버들의 포함 리스트 혹은 제외 리스트를 작성하는 것을 가능케 한다. ACL은, 디폴트(default)로서, 모든 서버가 에이전트에 액세스할 수 있도록 설정될 수 있다.
개개의 에이전트의 ACL을 변경하려면, 사용자는 해당 노드에 로그인하고, 에이전트 운영 유틸리티(Agent admin utility)를 사용하여 ACL을 조작하면 된다. 사용자는 에이전트 운영 유틸리티를 실행시켜, Access Control List 다이얼로그를 통해 액세스 요청을 추가하거나 삭제할 수 있다.
지금부터는 도 13을 참조하여 백업을 위해 원격 서버를 추가하는 일례를 설명한다. 백업 관리자 화면(130)이 로컬 서버의 사용자에게 제공된다. 이 예에서, 백업될 원격 서버는 윈도우즈 NT가 운용되는 서버이다. 사용자는 도시된 바와 같이 윈도우(132)로부터 "Windows NT/Windows 2000 System"을 하이라이트시키고, 이를 클릭한다. 그러면, 사용자에게는 도시된 바와 같이 "Add Machine" 또는 "Add Using Auto-Discovery"라는 옵션이 제공된다. Auto-Discovery를 클릭하면, 적절한 에이전트를 구비한 기기를 검색하게 된다. 예컨대, 이 예에서는, Auto-Discovery가 선택된 경우, 시스템은 네트워크 상에서 Windows NT/Windows 2000 System 에이전트를 갖는 기기를 검색한다. 도시된 바와 같이 Add Machine을 선택하면, 사용자에게는 일련의 다이얼로그 박스가 제시되며, 이 다이얼로그 박스는 사용자가 원격 서버/기기의 호스트 명을 입력할 수 있게 하고, 사용자에게, 원격 서버/기기를 브라우징하고 그 원격 서버/기기에 백업을 수행할 수 있도록 사용자에게 부여된 사용자 명칭 및 패스워드(password)를 질의하며, 사용자가 백업할 목적지를 설정할 수 있게 한다.
본 발명의 시스템의 각각의 서버는 백업, 복원 등의 각종 기능을 수행하기 위한 엔진을 포함할 수 있다. 예를 들면, 도 14에 도시된 바와 같이, 각각의 서버는 잡 엔진(136), 테이프 엔진(138), 및 데이터베이스 엔진(140)을 포함할 수 있다. 이 엔진들은, 백업 및 복원 동작을 처리 및 모니터링하고, 활동 로그(activity log) 및 데이터베이스의 성능에 관련된 정보를 갱신하는 등, 본 발명의 시스템의 작업을 수행한다.
잡 엔진은 지정된 날짜와 시간에 잡 큐의 잡들을 처리한다. 잡 엔진은 잡 큐를 검사하여 실행된 준비가 된 잡에 찾고, 이를 적절한 핸들러(handler)로 보낸다. 잡 엔진을 실행하는 각각의 서버는 사용자마다의 필요에 부응하도록 구성될 수 있다. 따라서, 잡 엔진은 잡 큐의 잡들의 실행 시간을 제어한다. 잡 엔진은 잡 큐를 정기적으로 검사하여, 실행 날짜와 시간이 도달한 잡을 개시한다. 잡 엔진의 각종 특성들이 사용자에 의해 제어될 수 있다. 예컨대, 선택 구성 메뉴를 선택하면, 각종 옵션들이 구성될 수 있다. 예를 들어, 앞서 설명한 바와 같이, 잡 엔진은 잡 큐를 지속적으로 검사하여 실행되어야 할 잡을 찾는다. 디폴트로서, 잡큐는 10초마다 검사된다. 이러한 시간격을 변경하려면, 사용자는 시간격 수를 1∼999초 중에서 선정할 수 있다. 또한, 완료된 잡의 보류 시간도 제어될 수 있다. 즉, "DONE"이라는 최종 상태의 잡은, 해당 필드(field)에서 시간이 지정된 잡 큐에 남겨진다. 디폴트로서, DONE 잡은 다시 호출되지 않는 한, 잡 큐에서 24 시간 동안 보유되었다가 삭제된다. 상기 시간을 변경하려면, 0∼999의 숫자 중 하나를 입력하면 된다.
또한, 본 시스템은 사용자가 열람할 수 있는 Activity Log를 포함할 수 있다. Activity Log는 시스템의 활동 전부에 대한 정보를 포함한다. 디폴트로서, 본 시스템을 실행하는 동안 발생되는 알림, 경고, 오류를 Activity Log에서 확인할 수 있다. Activity Log에 보유될 수 있는 메시지의 종류를 변경하려면, 사용자는, 어떤 메시지도 보여주지 않게 하는 "None"과, 본 시스템이 실행되는 동안 발생되는 오류만을 보여주는 "Errors"와, 본 시스템이 실행되는 동안 발생되는 경고와 오류를 보여주는 "Warnings & Errors", 본 시스템이 실행되는 동안 발생되는 모든 알림, 경고, 오류를 보여주는 "Notes, Warnings & Errors", 문제 해결용으로 사용될 수 있는 디버그(debug) 정보를 보여주는 "Debug" 등의 값을 지정하면 된다.
테이프 엔진은 저장 장치와 통신하고 이를 제어하는 역할을 한다. 테이프 엔진은 잡에 필요한 저장 장치를 선택한다. 즉, 테이프 엔진은 본 시스템에 접속되어 있는 모든 저장 장치를 식별하고, 잡이 개시될 때 이들을 활성화시킨다. 테이프 엔진의 구성을 변경하는 것은 권고되지 않는다. 문제를 해결하기 위한 목적을 제외하고는 정규 상태에서는 디폴트 구성이 사용된다. 대신, 본 발명의 시스템은 각종의 테이프 엔진 옵션들을 제공한다. 만일 "Level" 옵션이 디폴트("None")로 되어 있으면, 사용자는 어떤 것도 지정할 필요가 없다. 그러나, 희망하는 경우에 따라, 다음과 같은 값들이 이용될 수 있다. 즉, "None"(디폴트)은 어떤 정보도 로그되지 않는 것이다. 이러한 디폴트가 유지되면, Tape Engine Log는 Job Status Manager에 표시되지 않는다. 만일 "Detail"로 설정되면, 저장 장치들로부터 전송된 각각의 메시지들이 로그되고, 시스템은 테이프 엔진을 모니터링하며, 수신된 모든 정보를 로그한다. 만일 "Engine Log" 옵션이 선택되면, Tape Engine Log는 Job Status Manager에 표시되지 않는다. 만일 앞서 설명한 바와 같이 "Output"이 지정되고 "Detail"이 설정되면, 사용자는 메시지가 송신될 곳을 지정할 수 있다. 사용자는 이하와 같은 값들 중 하나를 지정할 수 있다. 즉, "Both Screen and File"은 메시지가 Tape Engine Log에 기록될 뿐만 아니라 DOS box(Tape Engine Message 윈도우)로 보내어지는 것이다. 만일 "Screen Only"가 지정되면, 메시지는 Tape Engine Message 윈도우에 보내어지기만 한다. 만일 "File Only"가 지정되면, 메시지는 Tape Engine Log에 기록되기만 한다. 사용자는 Job Status Manager에서 Tape Engine Log를 볼 수 있다.
본 시스템 내에서 수행되는 모든 동작들은 데이터베이스 엔진에 의해 기록된다. 데이터베이스 엔진은 본 시스템이 백업하거나 복제(copy)한 파일, 디렉토리, 드라이브, 기기의 이력을 보유하는 역할을 한다. 또한, 데이터베이스 엔진은 잡의 종류, 로그, 잡의 최종 결과, 개시 시간, 종료 시간 등, 본 시스템에 의해 처리된 잡들에 관한 정보를 보유하는 역할도 한다. 또한, 데이터베이스 엔진은 매체의 종류, 명칭, 최초로 포맷된 날짜, 폐기된 날짜, 세션 등, 본 시스템이 사용하는 매체의 이력을 보유하는 역할도 한다. 데이터베이스 엔진은 처리된 모든 잡들의 통계 정보를 저장한다. 저장된 잡 정보에는 어떤 파일과 디렉토리가 백업, 복제, 복원된 것인지와, 본 시스템이 처리한 잡과, 저장 장치와, 잡에 사용된 매체가 포함된다.
각종의 데이터베이스 엔진 옵션들은 유저 인터페이스를 통해 사용자에 의해 제어될 수 있다. 예를 들어, "Minimum Free Disk Space Required (M Bytes)" 옵션은 사용자가 시스템 데이터베이스에 예약하고자 하는 최소량의 디스크 공간을 (메가바이트 단위로) 지정할 수 있게 한다. 디폴트로서, 5 MB의 디스크 공간이 지정되어 있다. 필요로 하는 디스크 공간의 양으로 변경하려면, 사용자는 숫자 1∼10 중에서 지정하면 된다. "Enable Database Pruning" 옵션을 설정하면, 데이터베이스 프루닝(pruning)이 실행될 때, 데이터베이스 세션 내에서 백업되거나 복제된 파일과 디렉토리에 관한 정보가 삭제될 수 있다. 디폴트로서는, 데이터페이스 파일에 의한 공간을 해제하기 위해 이러한 옵션이 선택된다. 그러나, 사용자가 차후에 복원할 목적으로 상세 정보를 남겨두려 한다면 이러한 옵션을 설정 해제하는 것이 바람직할 수 있다. 단, 데이터베이스를 프루닝하지 않는다는 것은 데이터베이스가 급격히 채워지게 될 수 있음을 의미한다는 점을 유의해야 한다. "Prune Database Records Older Than _ Day(s)" 옵션은 Enable Database Pruning 옵션이 실행되는 경우에만 활성화된다. 사용자는 데이터베이스의 기록이 일정 시간 보유된 후 삭제될 수 있도록 지정할 수 있다. 디폴트로서, (인에이블되어 있다면) 기록은 데이터베이스에서 30일간 보유된 후에 삭제된다. 이 기간을 변경하려면, 사용자는 숫자 1∼365 중에서 지정하면 된다. "Run Database Pruning at _ " 옵션은 "Enable Database Pruning Option"이 실행되는 경우에만 활성화된다. 이 옵션은 사용자가 프루닝 동작이 실행될 시간을 지정할 수 있게 하는 것이다. 디폴트로서는, (인에이블되어 있다면) 프루닝은 오전 12시에 실행된다. 또한, "Delete Media-Related database Records ONLY when Pruning" 옵션이 제공될 수 있다. 사용자가 매체를 재 포맷하거나 소거할 경우, 본 시스템은 그 테이프에 연관된 데이터베이스의 기록을 삭제한다. 그러나, 이러한 특수한 처리를 수행하면, 시간이 상당히 걸리는 처리가 될 수 있다. 따라서, 사용자는 프루닝이 수행될 때까지 이 기록들의 삭제를 연기하기 위해 "Delete Media-Related database Records ONLY when Pruning"을 선택할 수 있다. "Submit Database Pruning now" 옵션은 사용자가 소정의 파라미터와 함께 데이터베이스 프루닝 잡을 잡 큐에 즉시 입력할 수 있게 하는 것이다. "Enable Remote Database" 옵션은 서버가 원격 데이터베이스를 그 종류에 관계없이 자신의 데이터베이스로서 사용할 수 있게 하는 것이다. 이러한 데이터베이스는 복원 잡을 로컬 기기에 입력하는 데 사용될 수 있다. 원격 데이터베이스의 구성은 이 단계에서 양호하게 수행될 수 있다. 사용자는 서버 명칭, 로그인 명칭, 패스워드 및 사용자가 인에블시키고자 하는 원격 데이터베이스의 서버 오퍼레이팅 시스템 종류를 입력한다.
또한, 본 발명의 시스템은 본 시스템을 관리하기 위한 여러 다른 종류의 관리자를 포함할 수 있다. 원격 관리자는 본 발명의 시스템에 의해 이미 백업된 데이터를 복원한다. 사용자는 복원 동작들을 스케줄링하고 관리하기 위한 정책(policy)을 설정할 수 있다. 원격 관리자는 데이터 복원의 전체 혹은 일부를 수행할 수 있다.
데이터베이스 관리자는, 본 시스템에 의해 처리되는 잡들, 사용된 매체, 본 시스템에 의해 사용되는 장치 등, 데이터베이스로부터의 정보를 표시한다.
잡 상태 관리자는 Job Status Manager 윈도우에서의 진행 중인 잡, 완료된 잡, 활성 중 잡 등의 모든 잡들을 모니터링한다. 또한, 잡 상태 관리자는 사용자 요청에 응답하여, 진행 중인 잡이나 완료된 잡을 재 스케줄링하고, 새로운 잡을 입력하고, 잡을 삭제하고, 활성 중인 잡들을 중지한다. 로그 정보는 완료된 잡마다 제공된다.
장치 관리자는 저장 장치 및 매체에 관한 정보를 표시한다. 장치 관리자는 사용자가 드라이브 압축 모드를 변경할 수 있게 하며, 압축, 포맷, 소거, 폐기, 압축 해제(retensioning) 등의 매체 기능을 수행한다.
보고서 관리자는 데이터베이스의 데이터로부터 보고서를 작성한다. 각종의 보고서는 스케줄 정책, 매체 오류, 세션, 백업 장치, 및 매체 정책에 관한 정보를 포함한다.
매체 풀(Media Pool) 관리자는 백업의 용이한 식별을 위한 매체의 논리적 그룹핑을 관리, 생성, 및 유지하여, 매체의 재사용과 유지의 스케줄링을 효율적이게 한다. 사용자는 소정의 문서 보관(archive) 필요를 충족시키기 위한 매체 교체 방식을 지정할 수 있다. 보고서는, 매체 상태 및 세션 정보를 포함하여 매체 교체방식에서 사용되는 매체 풀의 매체 정보를 상술한다.
경고 관리자는, 본 시스템의 기능의 실행 중에 발생하는 이벤트에 대해, 각종의 통신 방법을 이용하여 조직체 내 구성원들에게 메시지를 보낸다.
백업 잡을 실행할 때마다, 시스템은 백업된 기기, 디렉토리, 파일 및 사용된 매체에 관한 정보를 자신의 데이터베이스에 기록한다. 이는 사용자가 이들을 복원할 필요가 있을 때마다 파일들의 위치를 알 수 있게 한다. 데이터베이스 정보는 사용자가 시스템 홈(home) 디렉토리를 백업할 때마다 디폴트로 백업된다. 사용자는 시스템 홈 디렉토리가 백업에 선택되는지의 여부에 관계없이 모든 백업 잡에서 데이터베이스 파일을 백업하도록 선택할 수 있다.
또한, 본 발명의 시스템은 파일을 관리하는 데 사용될 수 있는 여러 유틸리티를 제공한다. 예를 들어, 데이터베이스 복원이 수행되면, 데이터베이스 내의 데이터가 어떤 이유로 잘못 변경될 수도 있다. 복원 데이터베이스 유틸리티는 사용자가 기존의 데이터베이스 파일을 덮어쓰기하는 방식으로 데이터베이스 백업으로부터 베이터베이스로 정보를 복원할 수 있게 한다. 사용자는 화재나 홍수와 같은 재난 혹은 기기 파손과 같이 데이터베이스 파일이 소실되는 어느 경우에나 이 유틸리티를 사용할 수 있다. 데이터데이스를 복원하기 위해 데이터를 지정하는 옵션을 포함한, 여러 고급 데이터베이스 복원 옵션들이 이용 가능하다. 이러한 경우, 해당 날짜에 혹은 그 이전에 생성된 데이터베이스 세션이 백업에 사용된다. 다른 옵션으로는 사용자가 잡에 대한 매체 옵션들을 지정할 수 있게 하는 것이 있다. 또 다른 옵션으로는 사용자가 복원 잡의 전 및/또는 후에 명령이나 배치 파일을 실행할 수 있게 하는 것이 있다. 또한, 사용자가 Job Queue Log에 기록될 상세 정보의 수준을 결정할 수 있게 하는 옵션이 제공될 수 있다.
데이터베이스 내의 빈 슬롯에 정보를 삽입할 수 있게 하는 병합(merge) 유틸리티가 제공될 수 있다. 이 기능은, 사용자가, 데이터베이스가 상주하는 서버 외의 다른 서버로부터의 데이터를 복원할 수 있게 한다. 예를 들면, 데이터베이스 백업이 다른 기기 상에서 본 발명의 시스템을 이용하여 형성된 경우에, 사용자는 병합 유틸리티를 사용하여 시스템 홈 디렉토리의 데이터베이스에 매체 정보를 저장할 수 있다. 이와 같이, 병합 유틸리티는 사용자가 하나 이상의 백업 세션을 포함하는 매체를 취하고, 이 매체로부터의 정보를 기존의 데이터베이스에 부가할 수 있게 한다. 이는, 데이터베이스에서 상세 정보가 프루닝된 경우에 유용하다. 고급 병합 옵션으로는, 잡에 대한 매체 옵션을 지정하는 옵션과, 잡의 전 및/또는 후에 명령이나 배치 파일을 실행하는 옵션과, 사용자가 Job Queue Log에 기록하고자 하는 상세 정보의 수준을 결정하는 옵션과, 동작 중의 이벤트에 관한 메시지를 보내는 옵션을 포함한다.
검사(scan) 기능은 임의의 매체 백업 세션에 관한 정보를 제공한다. 백업에 선택되는 소스는 개별 세션으로서 매체에 저장된다. 사용자는 단일 세션 또는 전체 매체를 검사할 수 있다. 검사 잡의 결과는 잡 큐에서 확인할 수 있다. 이 기능은 사용자가 서버를 복원하고자 하거나, 데이터베이스를 복원하기 위해 데이터베이스의 가장 최근의 백업을 찾을 필요가 있을 경우에 특히 유용하다. 또한, 사용자는 백업된 파일들의 리스트를 필요로 할 경우에 검사 기능을 사용할 수 있다.고급 검사 기능으로는, 잡에 대한 매체 옵션을 지정하는 옵션과, CRC 검증으로 파일을 검사하거나 데이베이스의 기록을 인에이블시키는 등의 잡에 대한 일반적인 옵션을 지정하는 옵션과, 잡의 전 및/또는 후에 명령이나 배치 파일을 실행하는 옵션과, Job Queue Log에 사용자가 기록하고자 하는 상세 정보의 수준을 결정하는 옵션과, 동작 중의 이벤트에 관한 메시지를 보내는 옵션을 포함한다.
비교(compare) 기능은 매체 세션의 내용과 기기 상의 파일을 비교하는 것이다. 또한, 비교 잡의 결과는 잡 큐에서 확인할 수 있다. 사용자는 백업 처리가 오류없이 모든 파일을 매체로 복제한 것을 확인하기 위해 백업 후에 이러한 특성을 이용할 수 있다. 고급 비교 기능으로서는, 잡에 대한 매체 옵션을 지정하는 옵션과, 데이터베이스의 기록을 인에이블할지의 여부를 지정하는 옵션과, 잡의 전 및/또는 후에 명령이나 배치 파일을 실행하는 옵션과, Job Queue Log에 사용자가 기록하고자 하는 상세 정보의 수준을 결정하는 옵션과, 동작 중의 이벤트에 관한 메시지를 보내는 옵션을 포함한다.
카운트(count) 기능은 기기 상의 파일과 디렉토리의 수를 카운트하는 것이다. 카운트 기능의 결과는 잡 큐에서 확인할 수 있다. 이러한 옵션은 복제 기능이 한 디스크로부터 다른 디스크로 오류없이 모든 파일을 복제하였는지를 확인하기 위해 복제 잡 이후에 사용될 수 있다. 고급 카운트 옵션으로는, 데이터베이스의 기록을 인에이블할지의 여부를 지정하는 옵션과, 잡의 전 및/또는 후에 명령이나 배치 파일을 실행하는 옵션과, Job Queue Log에 사용자가 기록하고자 하는 상세 정보의 수준을 결정하는 옵션과, 동작 중의 이벤트에 관한 메시지를 보내는 옵션을포함한다.
퍼지(purge) 기능은 사용자가 기기에서 파일과 디렉토리를 삭제할 수 있게 하는 것이다. 그 결과는 잡 큐에서 확인할 수 있다. 고급 퍼지 기능으로는, 디렉토리를 제거하거나 데이터베이스의 기록을 인에이블하는 등과 같이 잡에 대한 일반적인 옵션을 지정하는 옵션과, 잡의 전 및/또는 후에 명령이나 배치 파일을 실행하는 옵션과, Job Queue Log에 사용자가 기록하고자 하는 상세 정보의 수준을 결정하는 옵션과, 동작 중의 이벤트에 관한 메시지를 보내는 옵션을 포함한다.
복제(copy) 기능은 사용자가 파일을 한 위치로부터 다른 위치로 복제할 수 있게 하는 것이다. 예를 들어, 사용자는 매체에 백업하고자 하는 파일과 디렉토리를 다른 기기에 저장하기 위해 로컬 기기 상에서 복제 잡을 실행시킬 수 있다. 복제 기능은 복제 동작 동안 혹은 그 후에 발생하는 관련 행위를 결정한다. 예를 들면, 파일을 열고 공유하는 옵션들을 재시도할 시간을 지정하는 옵션이 제공된다. 또한, 데이터베이스의 기록을 인에이블할지의 여부를 지정하는 옵션이 제공된다. 또 다른 옵션으로는 소스 기기의 미러 이미지(mirror image)를 목적지의 매체에 생성하는 것이 있다. 소스 기기로부터의 파일 및 디렉토리를 복제하고 소스 기기 상에서 분명하지 않은 파일 및 디렉토리를 모두 삭제하는 옵션이 제공된다. 또한, 소스 기기로부터의 파일을 목적지의 기기로 복제한 후 삭제하는 옵션이 제공된다. NTFS 볼륨 상에서 파일을 액세스하기 위해 파일 레벨의 보안 정보를 복제하는 옵션이 이용 가능하다. 또한, 잡이 실행되기 전 및/또는 후에 명령이나 배치 파일을 실행하는 옵션이 제공된다. Job Queue Log에 사용자가 기록하고자 하는 상세 정보를 결정하는 옵션이 제공된다. 다른 옵션으로는 파일을 복제하기 전에 파일의 바이러스 감염 여부를 검사하는 것이 있다. 또 다른 옵션으로는 동작 중의 이벤트에 관한 메시지를 보내는 것이 있다.
본 발명의 시스템은 다중 스트리밍(multiple streaming)을 이용하여 저장 동작들을 병렬로 실행함으로써 데이터를 백업할 수 있게 한다. 즉, 본 시스템은 자동으로 혹은 사용자가 선택한 옵션에 응답하여 테이프 장치의 이용 가능성을 기초로 백업 잡에 대한 백업 다중 스트림을 생성하도록 구성될 수 있다. 데이터를 병렬 스트림에 걸쳐 배포함으로써, 이러한 방안은 백업 동작에 필요한 시간을 크게 감축시킨다. 백업 데이터의 전부 혹은 대부분을 동시에 복원하기 위해, 이용 가능한 모든 장치가 연동하므로, 재난에 기인한 손실 후의 복구도 보다 신속하게 이루어진다.
이와 같이, 다중 스트리밍은, 2개 이상의 테이프 장치를 이용하여 단일 백업 잡을 복수의 잡으로 분할함으로써, 사용자가 시스템 상의 이용 가능한 모든 테이프 장치를 이용할 수 있게 한다. 결과적으로, 다중 스크리밍은 순차적 방법에 비해 전체적인 백업 처리량(throughput)을 증가시킨다. 시스템 내에서 하나 이상의 드라이브와 하나 이상의 볼륨이 이용 가능한 경우에는, 사용자가 다중 스트리밍을 이용하는 것이 선택 가능하다.
다중 스트리밍은 로컬 장치와 원격 장치 모두에 대해 작동한다. 다중 스트리밍 옵션을 이용하여 원격 소스를 백업하는 것은 노드(컴퓨터) 레벨로 지원된다. 사용자는 모든 저장 매체 장치들을 사용하거나, (시스템 내에서 저장 매체 장치의종류가 혼합되어 있는 경우에) 단일 그룹의 저장 매체 장치들만을 지정할 수 있다. (후술되는 바와 같이) 라이브러리 옵션이 시스템 상에 설치되어 있으면, (다중 스트리밍이 선택된 경우에) 다중 스트리밍은 이용 가능한 모든 라이브러리 장치들을 사용한다. 만일 라이브러리 옵션이 설치되어 있지 않다면, 사용자는 저장 매체 장치들을 개별 그룹별로 나눌 수 있다.
생성된 스트림(슬레이브 잡)의 총 수는 이용 가능한 저장 매체 장치의 수에 따른다. 한편, 체인저(changer)가 있는 경우에는, 저장 매체 장치 그룹의 수에 따른다.
다중 스트리밍은 정규 파일의 경우에 볼륨 레벨로 수행되고 (2개의 볼륨이 2개의 각각의 장치 상에서 동시에 수행될 수 있다), 로컬 데이터베이스 서버의 경우 데이터베이스 레벨로 수행된다. 다중 스트리밍은 공유 폴더(Preferred Shared Folder), 원격 데이터베이스 서버, 및 윈도우즈 NT/2000 클라이언트 에이전트의 경우에 노드 레벨로 수행된다.
본 시스템은 동시에 실행되는 복수의 잡들을 시스템 상의 다수의 장치/그룹의 수만큼 가질 수 있다. 다중 스트리밍 옵션이 선택되면, 사용자에 의해 마스터 잡이 생성될 경우에, 이용 가능한 저장 매체 장치의 볼륨만큼 슬레이브 잡들을 트리거(trigger)하게 된다. 잡이 한 볼륨에 대해 완료되면, 더 이상 실행될 잡이 없을 때까지 다른 잡이 실행된다.
다중 스트리밍을 실행할 때, 사용자는 테이프가 덮어씌여지는 것을 방지하기 위해 매체 풀을 선택하기를 희망할 수 있다. 개개의 테이프 장치는 정규의 드라이브에 대한 개별 그룹으로 구성되어야 한다. 체인저를 구비한 테이프 시스템들의 경우, 이 시스템들은 동일 그룹으로 구성될 수 있다. 마스터 잡을 취소(cancel)한다는 것은 모든 슬레이브 잡들을 취소한다는 것을 뜻한다. 사용자는 마스터 잡을 취소하거나 다중 스트리밍 잡 전체를 완전히 취소하기 위한 슬레이브 잡들 중 임의의 하나를 취소할 수 있다. 상술한 바와 같이, 잡이 잡 큐에 입력되면, 잡이 수행되기 전 또는 후에 동작이 수행될 수 있다. 예를 들면, 메시지가 여러 구성원들에게 보내어질 수 있다. 이는 사전/사후 동작(pre/post operations)이라고 지칭된다. 사전/사후 동작 및 그 주해(comment)는 마스터 잡 레벨로 지원된다. 즉, 사전/사후 동작은 각각의 슬레이브 잡에서는 수행되지 않는다. 대신, 사전/사후 동작은 슬레이브 잡들로 분할될 전체 잡이 실행되기 전 또는 후에 수행된다. 각각의 슬레이브 잡은 MULTISTREAM[JOB[MID]] SUBJOB[SID]와 같은 패턴을 갖는, 잡 큐의 디폴트 잡 기술(description)을 갖는다. 여기서, MID는 마스터 잡 ID이고, SID는 시퀀스 ID이다. 다중 스트림 옵션은 시스템이 단 하나의 저장 매체 장치만을 구비하는 경우에는 무시된다. 다중 스트리밍 잡을 사용하여 최적의 성능을 달성하기 위해서는, 복수의 프로세서와 프로세서 당 적어도 256 MB의 메모리를 구비한 최첨단 서버 기기를 사용하면 좋다.
도 15는 본 발명의 일 실시예에 따른 멀티스트림 백업(multistream backup)을 설명하기 위한 흐름도이다. 단계 S2에서, 사용자는 마스터 백업 잡을 생성한다. 단계 S4에서, 잡 엔진은 잡 큐를 검사하여, 스케줄링된 실행 날짜와 시간을 기초로 실행 준비된 잡들을 검색한다. 단계 S6에서, 스케줄링된 개시 시간에 기초하여 실행될 잡이 있는지를 판정한다. 마스터 잡이 실행될 시간이 아닌 경우(단계 S6에서의 아니오)이면, 잡 엔진은 마스터 잡이 실행될 시간이 될 때(단계 S6에서의 예)까지 잡 큐를 계속해서 검사한다. 단계 S8에서, 시스템은 마스터 잡을 보다 소규모의 복수의 슬레이브 잡들로 분할한다. 각각의 슬레이브 잡들은 단일 소스 엔티티(파일 시스템, 데이터베이스 등)의 백업/복원에 대응한다. 다음으로, 시스템은 이 소규모의 슬레이브 잡들을 잡 큐로 보낸다(단계 S10). 단계 S12에서, 잡 엔진은 잡에 대해 잡 큐를 지속적으로 검사한다. 이는, 새로운 슬레이브 잡이 검출될 때까지 계속된다(단계 S14에서의 예). 새로운 슬레이브 잡이 검출되면, 잡 엔진은 테이프 장치가 백업을 개시하는 데 이용 가능(단계 S16에서 루프(loop)를 돌지 않음)한지의 여부를 판정하기 위해 테이프 엔진과 통신한다. 이는, 테이프 장치가 이용 가능하다고 판정될 때까지 계속된다. 테이프 장치가 이용 가능하다고 판정되면(단계 S16에서의 예), 이용 가능한 저장 장치를 갖는 잡 각각에 대해 상기 소규모의 슬레이브 잡들이 개시된다. 각각의 슬레이브 잡이 완료될 때마다, 슬레이브 장치가 이용하였던 테이프 장치가 다시 이용 가능하다는 정보가 테이프 엔진으로 반환된다(단계 S20). 그러면, 잡 엔진은 후속하는 슬레이브 잡을 찾아 잡 큐를 검사하고, 모든 슬레이브 잡이 수행 완료될 때까지 이러한 과정은 반복된다. 모든 잡이 완료되었는지의 여부를 판정한다. 만일 완료되지 않았다면(단계 S20에서의 아니오), 본 처리는 수행할 슬레이브 잡을 찾기 위해 잡 큐를 다시 검사한다(단계 S12). 각각의 슬레이브 잡이 완료되었으면(단계 S20에서의 예), 처리는 종료되고(단계 S22), 마스터 잡이 완료된 것으로 간주된다. 이 때, 임의의 사후 잡 동작이 있으면 이를 수행한다.
또한, 본 발명의 시스템은 서버리스 백업(serverless backup)을 수행할 수 있다. 서버리스 백업은 시스템 관리자의 여러 통상적인 백업 관련 문제들을 해결한다. 서버리스 백업은 사용자가 시스템 CPU에 거의 영향을 주지 않고 백업을 수행할 수 있게 하며, 서버 상의 애플리케이션이 백업의 진행 중에도 계속적으로 실행될 수 있게 한다. 서버리스 백업은 백업 윈도우를 필요로 하지 않으므로, 가능한 최상의 백업/복원 성능을 제공하며, 백업이 수행되는 동안에도 애플리케이션들이 데이터의 액세스를 계속 수행할 수 있게 한다.
서버리스 백업은 산업 표준 확장형 복제 명령(extened copy command)을 사용하여 구현되며, 확장형 복제 명령을 지원하는 장치를 구비한 SAN 환경을 지원한다.
확장형 복제 명령을 사용함으로써, 서버리스 백업은 데이터 백업 전송 경로에서 서버를 완전히 효과적으로 배제하고, 디스크로부터 테이프로, 혹은 테이프로부터 디스크로의 데이터 직접 전송을 달성한다. 데이터 전송을 개시하면, 서버 레벨에서 발생하는 활동만이 있을 뿐이고, 실제 데이터 전송은 SAN 상에서 데이터 이동 레벨(Data Mover level)에서 이루어진다. 본 발명에 따른 서버리스 백업은 "Data Movers"를 이용하여 디스크와 테이프 사이에 데이터를 전송한다. Data Mover는 확장형 복제 명령을 지원하는 장치로서, 데이터를 서버로의 모든 경로를 통해 옮겨야 하는 필요를 일소하고, 최단거리의 데이터 경로를 달성한다. 이는, 백업 성능을 현격히 증진시키고, 가능한 최상의 백업/복원 속도를 달성한다. 이는, 애플리케이션들이 백업이 진행인 중에도 서버로의 액세스가 계속될 수 있게 한다. 이러한 기능은 백업 윈도우의 필요를 일소하고, 시스템 관리자가 어느 때에나 백업을 수행할 수 있게 한다.
도 16에는 서버리스 백업의 시스템 예가 도시되어 있다. 도시된 바와 같이, 시스템은 서버(150a∼150n), 디스크 어레이(152), 및 백업 저장 매체(154)를 포함하며, 이들은 모두, SAN 상에서 라우터, 브릿지 등을 포함할 수 있는 고속 네트워크(160)를 통해 상호 연결되어 있다. 디스크 어레이(152)는 각종 워크스케이션들(도시되지 않음)로부터 데이터를 저장할 수 있다.
SAN은 서버를 거칠 필요없이 디스크 어레이(152)로부터 백업 저장 매체(154)로 직접 데이터를 전송할 수 있는 "확장형 복제"를 지원한다. 도 16의 화살표 A로 표시된 바와 같이, 데이터 백업을 위한 데이터 경로는 디스크 어레이(152)에서 출발하여, 네트워크(160)를 거쳐서, 백업 저장 매체(154)에 도달한다. 이러한 데이터 경로는 서버의 이용을 포함하지 않으므로, 백업을 서버리스라고 한 것이다.
서버가 포함되는 오직 한 경로는 백업과 관련된 데이터를 수신하는 것뿐이다. 예를 들면, 서버는 백업 등에 관한 메타데이터를 얻기 위해 시스템의 각종 부분들과 통신할 수 있다. 또한, 백업 처리를 개시하고 제어하는 데 서버가 사용될 수도 있지만, 백업될 데이터는 어떤 서버의 CPU도 거치지 않고 디스크 어레이(152)로부터 백업 저장 장치(154)로 직접 이동된다.
서버리스 백업의 한 특성으로는, 볼륨마다의 파일 맵핑 테이블(file-mapping table)의 파싱(parsing)에 기초한다는 것이다. 도 23은 본 발명의 일 실시예에 따른 서버리스 백업의 특성을 설명하기 위한 흐름도이다. 본 시스템은 우선, NT 파일 시스템(NT file system : NTFS)의 루트 디렉토리와 구조를 오픈하고(단계 S70), 각 파일의 할당 테이블을 파싱하여(단계 S72), 각 파일의 속성을 알아낸다(단계 S74). 각 파일의 속성을 조사할 때, 본 시스템은 해당 파일이 상주하는 것인지의 여부를 판정한다(단계 S76). 만일 해당 파일이 상주하는 것이면(단계 S76에서의 예), 모든 속성들을 백업한다(단계 S80). 만일 해당 파일이 상주하지 않는 것이면(단계 S76에서의 아니오), 본 시스템은 파일 속성(또는 속성들)뿐만 아니라 파일에 속하는 데이터 블럭들도 백업하여(단계 S78), 완전한 데이터 보호를 위해 해당 볼륨 상에 상주하는 모든 파일에 관하여 전체 볼륨을 맵핑한다. 파일 할당 테이블(file allocation table : FAT)을 지원하는 시스템의 경우, 이 시스템은 FAT 스키마(schema)를 번역(translating)함으로써 블럭들을 번역할 수 있다. 그 결과로 얻게 되는 방안이, 파일 레벨의 복원을 제공할 수 있는 확장형 복제 기법을 이용한 서버리스 백업이다.
도 24에 도시된 바와 같이, NTFS의 경우, 본 발명의 시스템은 한 볼륨을 오픈하고(단계 S82), 부트 섹터를 판독하여(단계 S83), 바이오스 파라미터 블럭(bios parameter block : BPB)을 획득한다(단계 S86). 다음으로, 본 시스템은 섹터 사이즈, 클러스터 사이즈, 파일 레코드 세그먼트 사이즈, 인덱스 할당 버퍼(Index Allocation Buffer) 당 클러스터를 결정한다(단계 S88).
본 시스템은 우선, 인덱스 루트 엔트리에 따라 루트 디렉토리를 트래버싱(traversing)하여(본 시스템은 루트 디렉토리의 파일 레퍼런스(file reference)에 기초하여, 루트 디렉토리의 파일 레코드 세그먼트를 판독함)(단계S90), 그 대상이 파일인지의 여부를 판정한다(단계 S92). 그 대상이 파일이면(단계 S92에서의 예), 시스템은 그 파일의 속성(보안성, 데이터 속성 등)을 검사하고, 그 속성의 해당 값을 백업한다. 다음으로, 파일이 상주하는 것인지 아닌지에 대하여 판정한다(단계 S96). 만일 상주하는 것라면(단계 S96에서의 예), 시스템은 해당 속성을 포함하는 파일 레코드 세그먼트를 백업한다. 만일 상주하는 것이 아니라면(단계 96에서의 아니오), 시스템은 LCN/VCN(실행 리스트)을 알아내고, 그 정보를 기억해 둔다(단계 S100).
만일 그 대상이 파일이 아니라면(단계 S92에서의 아니오), 다른 단계들이 수행된다(단계 S102). 예를 들어, 루트 엔트리가 인덱스 노드이면, 시스템은 인덱스 할당 속성을 찾는다. 만일 그 대상이 디렉토리이면, 시스템은 디렉토리를 통해 트래버싱한다. 다음으로, 시스템은 비트맵(bitmap)에 기초하여, 아직 리스트에 있지 않은 다른 모든 클러스터를 부가한다.
도 25에 도시된 바와 같이, FAT/FAT32의 경우, 시스템은 볼륨을 오픈하고(단계 S104), 부트 섹터를 판독하여(단계 S106), BPB를 획득한다(단계 S108). 시스템은 루트 디렉토리를 판독하고(단계 S110), 루트의 각 엔트리에 기초하여, 그 엔트리별로 상이하게 파싱할 수 있다. 예컨대, 만일 엔트리가 서브디렉토리(sub directory)이면(단계 S112), 시스템은 그 디렉토리의 클러스터 체인(cluster chain)을 정하고(단계 S114), 그 서브디렉토리를 판독하여(단계 S116), 트래버싱한다(단계 S118). 만일 엔트리가 파일이라면(단계 S112), 시스템은 FAT 테이블을 사용하여 그 파일의 클러스터 체인을 정한다(단계 S120).
스냅샷(snapshot)의 경우, 본 시스템은 백업 전에 볼륨의 캐쉬(cache)를 플러시(flush)한다. 다음으로, 본 시스템은 그 볼륨을 프리즈(freeze)시킨다 (예컨대, 스냅샷을 취득한다). 백업 분석 단계 중에, 스냅샷 드라이버는 실제의 데이터 백업 시, 원래의 데이터를 서버리스/이미지로 반환한다. 서버리스 시스템에서, 원시 디스크(raw disk)에 데이터 이동이 발생하면, data mover는 원래의 데이터를 다시 제공할 수 없게 될 수도 있다. 따라서, 서버리스 백업의 종료 시에, 시스템은 스냅샷 드라이버에게, 변경된 클러스터들의 원래의 데이터 모두를 제공할 것을 요청할 수 있으며, 시스템은 복원 시에 이러한 정보를 적용한다.
도 17에는 서버리스 백업을 수행하기 위한 시스템 흐름의 또 다른 예가 도시되어 있다. 서버리스 백업을 달성하기 위해, 본 발명의 시스템은 디스크 어레이(152) 또는 그 일부의 스태틱 뷰(static view)를 획득하고(단계 S40), 데이터 블럭들이 속하는 파일에 디스크 세트 상의 데이터 블럭들을 맵핑하여(단계 S42), 데이터를 디스크 어레이(152)로부터 백업 저장 매체(154)로 직접 이동시킨다(단계 S44).
디스크 어레이에서 데이터의 스태틱 뷰를 획득하기 위해, 본 발명의 시스템은 백업 미러(mirror) 시스템을 사용할 수 있다. 도 18에는, 백업 미러 시스템을 사용하여 디스크 어레이에서 데이터의 스태틱 뷰를 획득하기 위한 흐름의 일례가 도시되어 있다. 먼저, 미러를 설정한다(단계 S46). 다음으로, 디스크 어레이에의 기입을 행하던 임의의 애플리케이션을 중단한 후(단계 S48), 미러를 분할한다(단계 S50).
스태틱 뷰를 획득하기 위한 또 다른 방법은 스냅샷을 사용하는 것이다. 이 경우, 도 19에 도시된 바와 같이, 시스템은 우선, 디스크에의 기입을 행하던 임의의 애플리케이션을 중단한 후(단계 S52), 스냅샷을 생성한다(단계 S54).
이제, 시스템은 백업할 디스크 어레이의 스태틱 뷰를 구비하였다. 데이터가 디스크 어레이(152)로부터 백업 저장 매체(154)로 전송될 때, 데이터는 파일로서 전송되는 것이 아니라 데이터 블럭으로서 전송될 수 있다. 따라서, 최종적으로 파일을 복원하는 데 있어서, 본 시스템은 어느 블럭이 어느 파일에 속하는지를 식별할 테이블 또는 맵을 생성한다. 예를 들면, 도 20에 도시된 바와 같이, 파일 A는 데이터 블럭 A, B, C로 구성된다. 파일 B는 데이터 블럭 D, E, F로 구성된다. 스냅샷 또는 분할 미러가 생성될 때, 이러한 맵핑은 또 다른 분할 미러 또는 스냅샷이 생성될 때까지 그대로 유지된다. 본 발명의 시스템은 파일 A 및 파일 B에 대한 데이터 블럭 연관 관계를 기록한 테이블 또는 맵을 생성한다. 그러면, 사용자가 예컨대 파일 A를 복원하고자 할 경우에, 본 발명의 시스템은 파일 A와 연관된 블럭들을 찾아서 이들을 복원한다. 디스크 어레이(152)로부터 백업 저장 매체(154)로 보내어질 데이터 블럭들은 확장형 복제 명령을 사용하여 직접 전송된다.
서버에 독립적인 백업 시스템(server-free backup system)으로부터 데이터를 복원할 때, 사용자는 전체 드라이브를 복원하기 위한 이미지 레벨로, 또는 개개의 파일이나 디렉토리를 복원하기 위한 파일 레벨로 데이터를 복원하는 옵션을 갖는다.
이미지 레벨 복원은 백업 저장 매체(154)로부터 디스크 어레이(152)로 전체이미지를 역으로 복제한다. 파일 레벨 복원은 서버에 독립적인 복원과 마찬가지로 행하여져, 선택된 파일(들)을 백업 저장 매체(154)로부터 디스크 어레이(152)로 복제한다.
이미지 레벨의, 서버에 독립적인 복원을 수행하기 위해, 본 발명의 시스템은 데이터를 복원하고자 하는 스냅샷 또는 분할 미러를 생성한다. 다음으로, 본 발명의 시스템은 확장형 복제 명령을 사용하여, 백업 데이터를 백업 저장 매체(154)로부터 디스크(152)로 직접 복원한다.
상술한 실시예들에서는, 드라이브에 기입을 행하는 임의의 애플리케이션들이 중단되는 한편, 드라이브의 스냅샷 또는 이미지가 획득된다. 그러나, 드라이브에의 기입을 행하는 애플리케이션을 중단하는 것 대신, 본 발명의 시스템은 스냅샷 또는 이미지를 취득하는 데 있어서 적절한 기간을 대기할 수도 있다. 예를 들면, 본 시스템은 드라이브(152)와 동기화하여 드라이브(152)의 기입 휴지(write inactivity) 기간 동안 대기할 수 있다. 디폴트로서는, 본 시스템이 드라이브를 프리즈(예컨대, 스냅샷을 취득)하기 전에 면하게 되는 기입 휴지 기간은 3초이다. 그러나, 이 기간은 사용자가 희망하는 대로 변경될 수 있다. 만일 소정의 기입 휴지 기간(3초)이 알려지지 않으면, 소정의 제한 시간(예컨대, 80초) 후에 동기화는 시한이 다 되어, 프리즈 요청이 실패로 된다. 소정의 기입 휴지 기간은, 드라이브가 안전하게 프리즈되었다고 보여지기 전에 드라이브에 있어야 할 수초간의 휴지 기간이다. 또한, 제한 시간도 사용자가 희망하는 대로 변경될 수 있다. 드라이브가 안전하게 프리즈되었다고 본 후에는, 드라이브의 스냅샷 또는 이미지가 수행될수 있다. 이러한 방식에 의해, 수행되고 있을 수 있는 처리의 중간에도 애플리케이션은 강제로 중지되지 않게 된다.
또한, 본 발명의 시스템은 하나 이상의 테이프 라이브러리를 관리하기 위한 GUI를 포함할 수 있다. 라이브러리는 수동적인 간섭없이 대용량의 데이터를 백업할 수 있게 하는 로봇식 피커(robotic picker) 등의 자동 매체 전송 시스템과 함께 하나 이상의 테이프 드라이브를 포함하는 장치이다. 라이브러리는 (라이브러리가 바코드 ID를 지원하는 경우에) 바코드 ID를 포함하는 각종의 구성 요소를 포함할 수 있다. 본 발명의 시스템은 바코드 ID를 사용하여 매체에 부착된 바코드를 판독함으로써 개개의 매체의 위치를 신속하게 알아낼 수 있다. 또한, 라이브러리는, 하나 이상의 (테이프 매체 등의) 저장 매체 그룹이 저장되는 하나 이상의 매거진(magazine)(또는 빈(bin))을 포함할 수 있다. 로봇식 피커는 매거진 슬롯과 드라이브 사이에 저장 매체 유닛들을 이동시키도록 제공될 수 있다. 라이브러리는 컴퓨터 또는 서버와 저장 매체 사이에 데이터를 전송(백업 또는 복원)하는 장치에 하나 이상의 드라이브를 포함할 수 있다. 라이브러리는 하나 이상의 드라이브와 하나 내지 수백개의 매거진을 포함할 수 있다. 보다 소형의 라이브러리는 때때로 오토로더(autoloader) 또는 체인저라고 칭하여진다. 본 명세서에서 사용된 바와 같이, "라이브러리"라 함은, 임의의 사이즈의 라이브를 일컫는다.
라이브러리는 단일의 저장 드라이브와 유사하게 고려될 수 있다. 그러나, 주요 차이점들 중 하나는, 라이브러리는 통상적으로 적어도 2개의 SCSI ID 즉, 라이브러리 자체용의 ID와 라이브러리의 드라이브용의 ID를 사용한다는 점이다. 어떤 라이브러리는 단일의 SCSI ID를 사용하기도 한다. 라이브러리가 단 하나의 SCSI ID를 사용하는 경우, 라이브러리와 라이브러리 드라이브는, 드라이브와 라이브러리를 차별화하기 위해 그 각각에 논리적 단위 장치 번호(Logical Unit Number : LUN)를 할당할 수 있다. 결국, 단일 SCSI ID는 2개의 ID로 분할된다. 라이브러리를 이용하는 것은 개개의 저장 단위 장치의 사용에 있어 여러 장점을 제공한다. 예를 들어, 라이브러리를 사용하면, 백업 및 복원 동작 중에 수동적인 간섭이 필요없다. 또한, 라이브러리는 복수의 저장 드라이브와 다수의 매체를 포함할 수 있어서, 대용량의 용량 능력을 제공한다.
본 발명의 시스템은 단 하나의 드라이브를 구비한 라이브러리 뿐만 아니라 복수의 드라이브를 구비한 라이브러리도 지원할 수 있다. 또한, 본 발명의 시스템은 복수의 라이브러리도 지원한다. 본 발명의 시스템은 사용자가 어떤 한 위치로부터 라이브러리의 초기화 처리를 추적하고 제어할 수 있게 한다. 복수의 드라이브 라이브러리의 경우, 테이프 엔진은 초기화 처리에 모든 드라이브를 사용한다. 또한, 본 발명의 시스템은 임의의 특정한 슬롯을 소제(clean)하는 저장 드라이브를 포함하여 복수의 연동하는 장치 관리 기능들을 허용한다. 또한, 포맷 슬롯 범위, 소거 슬롯 범위(단기 및 장기 둘 다), 투입/배출(import/export), 인벤터리 슬롯(inventory slot), 매거진의 마운트(mount), 매거진의 마운트 해제(dismount), 소제 라이브러리 드라이브를 포함한 각종의 라이브러리 장치 관리 기능들을 지원한다. 본 발명의 시스템은 라이브러리 상의 모든 이용 가능한 장치들을 사용할 수 있다. 복수의 드라이브들이 이용 가능한 경우, 드라이브 관리 기능들이 동시에 수행될 수 있다.
본 발명의 시스템은 매체에 부착될 수 있는 바코드를 판독함으로써 개개의 매체의 위치를 신속하게 알아낼 수 있다. 초기화가 완료되고, 테이프 엔진이 처음으로 기동한 후에는, 전체 라이브러리가 조사되고 기록된다. 본 발명의 시스템은 드라이브 구성을 제공하며, 라이브러리가 이러한 특징을 지원하면, 라이브러리를 소제하기 위한 스케줄링이 가능하다. 라이브러리는 그룹화될 수 있다. 라이브러리 그룹은 라이브러리 그룹이 슬롯에 기초하는 점을 제외하면 장치 그룹(예컨대, 서버 그룹)과 동일한 개념을 적용한다. 슬롯들 중의 어떤 것들은 라이브러리 그룹을 형성하는 데 선택될 수 있다. 라이브러리가, 스팬(span)된 테이프들에 대해 모두 실행 완료한 경우, 사용자는 새로운 테이프를 삽입할 수 있고, 본 발명의 시스템은 삽입된 테이프를 사전에 정해진 그룹의 일부로서 식별할 수 있다. 본 발명의 시스템은 새로운 매체를 조사하여, 사용자가 새로운 매체를 라이브러리에 삽입한 후에도 중단되는 일없이 백업 또는 복원 동작을 지속할 수 있게 한다. 복수의 드라이브 라이브러리에서 한 드라이브가 결함이 있는 경우, 결함이 있는 드라이브는 오프라인에서 마킹(marking)될 수 있다. 이는, 테이프 엔진이 라이브러리 내에서 그 나머지의 결함이 없는 드라이브들을 이용하여 지속적으로 동작할 수 있게 한다. 본 발명의 시스템은 사용자의 기호에 따라 매체의 명칭이나 슬롯의 번호로 검색할 수 있다. 본 발명의 시스템은 대용량의 라이브러리를 지원하며, 1000개 이상의 슬롯을 가진 체인저를 사용자에게 리스트로 표시해 준다. 슬롯들은 큰 아이콘, 작은 아이콘, 상세 정보, 리스트의 4 가지 방식으로 표시될 수 있다.
라이브러리는 Device Configuration 메뉴로부터 구성될 수 있다. 먼저, 테이프 라이브러리를 Device Configuration 메뉴에서 선택한다. 그러면, 라이브러리 셋업 화면이 나타난다. 테이프 엔진이 실행되고 있는 중이라면, 사용자가 이 엔진을 중단시킬 수 있도록 하기 위한 윈도우가 나타난다. 라이브러리 장치를 구성하기 위해서는 테이프 엔진이 중단되어야 하기 때문이다. 라이브러리가 장치 일련 번호를 지원하는 경우, 장치들은 이미 구성되어 있어야 하며, Library Devices 리스트에 나타날 것이다. 드라이브들이 라이브러리에 자동으로 할당되지 않았다면, 이 드라이브들은 수동으로 할당될 수 있다. 이는, 우선 Drive와 Library를 하이라이트시킨 후에 Assign 버튼을 클릭하면 완료될 수 있다. 드라이브를 라이브러리에 할당하면, 본 발명의 시스템이 라이브러리에 존재하는 드라이브를 인식할 수 있게 된다. 드라이브를 수동으로 할당할 경우, 복수의 드라이브를 구비한 라이브러리 내의 드라이브들은 정확한 순서로 할당되어야 한다. 예를 들면, 통상적으로 라이브러리는 제조업자에 의해 제1 라이브러리 드라이브가 최하위의 SCSI ID 번호를 갖고 최종 라이브러리 드라이브가 최상위의 SCSI ID 번호를 갖는 방식으로 구성되어 있다. 그러나, 항상 이와 같은 방식으로 되어 있는 것은 아니다.
다음으로, 후속의 셋업 윈도우가 표시된다. 사용자는 해당 라이브러리를 하이라이트시키고, Properties 버튼을 클릭하면, Properties 다이얼로그가 나타난다. Properties 다이얼로그는 사용자가 어느 슬롯이 (소제할 테이프가 있는 경우에) 소제할 테이프를 보유하는지, 바코드 판독기가 설치되어 있는지를 지정할 수 있게 한다.
라이브러리를 구성한 후에, 본 발명의 시스템은 인벤터리(inventory)를 실행한다. 이 단계에서, 사용자는 온라인 혹은 오프라인으로 드라이브를 마킹할 수 있다. 이러한 방식으로, (복수의 드라이브를 구비한 라이브러리에서) 결함이 있는 드라이브들은 오프라인에서 마킹될 수 있어서, 본 발명의 시스템은 그 나머지의 결함이 없는 드라이브들을 이용하여 지속적으로 동작할 수 있다. 드라이브를 수리하거나 교체할 경우에는 상술한 라이브러리 셋업 과정을 다시 수행함으로써 온라인으로 용이하게 전환될 수 있다.
또한, 본 발명의 시스템은 광범위한 저장 요구들을 처리할 수 있는 가상 라이브러리 특징을 포함한다. 가상 라이브러리 특징에 의하면, 물리적인 라이브러리가 보다 소규모의 가상(논리적인) 라이브러리로 구성될 수 있게 하면서도, 동일한 로봇 공학, 투입/배출 슬롯, 및 소제 매체를 공유할 수 있게 한다. 가상 라이브러리 특징은 대규모의 라이브러리를 보다 소규모의 라이브러리들로 구성하는 유연성을 제공하여, 사용자가 RAID 레벨의 장치 및/또는 독립형(stand alone) 테이프 라이브러리의 여러 가지의 조합을 형성할 수 있게 한다.
가상 라이브러리 구성 유틸리티는 모든 가상 라이브러리를 셋업하는 데 사용된다. 이 유틸리티는 사용자가 가상 라이브러리 및 그 파라미터와, 라이브러리에 필요한 복수의 슬롯 및 장치 등을 정의할 수 있게 한다. 최소한, 가상 라이브러리는 그에 연관된 적어도 하나의 슬롯과 장치를 구비하여야 한다.
사용자는 다음과 같은 단계들을 이용하여 가상 라이브러리를 생성할 수 있다. 우선, 사용자는 Device Configuration 메뉴를 선택한다. Next 버튼을 클릭하면, Device Configuration 다이얼로그가 표시된다. 사용자는 Virtual Library를 선택하고, Next 버튼을 클릭하면 된다. 그러면, 화면이 표시되는데, 이 화면은 사용자가 Available Library 윈도우에서, 가상 라이브러리를 구성할 라이브러리를 선택할 수 있게 한다. 선택 후에는, 부모(parent)가 되는 물리적 라이브러리와 연관되는 특성들이 Detail 필드에 표시된다. 어댑터 카드, SCSI 버스, SCSI ID, LUN에 관련된 정보가 표시된다. 또한, 한 필드는 해당 가상 라이브러리에 이용 가능한 전체 슬롯을 표시한다. 표시된 라이브러리 트리로부터, 사용자는 새롭게 생성된 가상 라이브러리와 연관시킬 드라이브들을 선택할 수 있다. 드라이브들은 가상 라이브러리에 임의의 순서로 할당될 수 있으나, 드라이브들이 가상 라이브러리들 간에 공유될 수는 없다. 또한, 각각의 가상 라이브러리는 적어도 하나의 드라이브와 그에 할당된 하나의 슬롯을 구비하여야 한다. 다음으로, 사용자는 해당 가상 라이브러리에 할당될 슬롯의 수를 선택한다. 그러면, 새롭게 생성된 가상 라이브러리가 Virtual Libraries 윈도우에 표시된다. 만일 이러한 단계 이후에도 특정 라이브러리에 드라이브가 할당되지 않으면, 이용 가능한 자원이 "Available Library" 윈도우에 표시된다. 동작될 물리적 라이브러리 전체를 가상 라이브러리로 구성할 수도 있다. 선택된 물리적 라이브러리용으로 모든 드라이브와 슬롯이 사용될 수도 있다.
본 발명의 시스템은 라이브러리의 슬롯들을 그룹별로 분류하는 것을 허용한다. 슬롯들을 그룹화하면, 여러 종류의 잡들이 동시에 실행될 수 있다. 또한, 여러 슬롯들이 한 그룹 내에서 이용 가능한 경우에는, 라이브러리를 그룹의 매체에스팬(span)시킬 수 있다. 디폴트로서는, 본 발명의 시스템이 처음으로 기동될 때, 기기에 부속된 라이브러리 각각의 모든 슬롯이 자동적으로 해당 라이브러리 그룹에 할당된다. 예컨대, 기기에 부속된 라이브러리가 2개 있으면, 2개의 라이브러리 그룹이 형성된다. 제1 라이브러리의 모든 슬롯은 GROUP 0에 할당되고, 제2 라이브러리의 모든 슬롯은 GROUP 1에 할당된다. 이러한 라이브러리 그룹 명칭이 그대로 사용될 수도 있고, 혹은 사용자가 다시 그룹화하고 이들을 재명명할 수도 있다. 라이브러리의 슬롯들 각각은 가상 저장 드라이브로서 간주되므로, 각각의 슬롯은 자기 자신의 그룹으로 할당될 수도 있다.
본 발명의 시스템은 사용자가 GUI를 사용하여 라이브러리를 구성할 수 있게 한다. 사용자는 Device Manager를 개시하여 라이브러리를 구성(혹은, 라이브러리의 구성을 변경)할 수 있다. 본 시스템이 라이브러리 장치 정보를 검색한 후에는, 사용자는 Device View를 선택하여, 구성하고자 하는 라이브러리 장치의 위치를 알아내어 선택할 수 있다. 사용자에게는 도 21에 도시된 바와 같은 화면이 제공될 수 있다. 장치를 구성하려면, Device Group Configuration 윈도우가 나타날 때, 사용자는 Device 탭(161)을 클릭한다. 장치 윈도우(도 22) 상에는 2개의 서브윈도우(sub-window)가 존재한다. 좌측 윈도우(160) 상에는 그룹들이 나타나 있고, 우측 윈도우(162) 상에는 이용 가능한 장치들이 나타나 있다. 사용자는 Groups 리스트에서 드라이브를 선택하여 Available Devices 리스트에 놓는다. 예컨대, 소정의 드라이브를 Groups 리스트로부터 Available Devices 리스트로 이동시키기 위해서는, 사용자는 이동시키고자 하는 장치를 클릭하고, Remove 버튼(164)을 클릭한다.이로써, 해당 드라이브는 사용자가 구성하고자 하는 라이브러리에 이용 가능하게 된다. 다음으로, 사용자가 Library 탭(166)을 클릭하면, 사용자가 이동시킨 테이프 드라이브는 Available Devices 리스트에서의 이전 탭에 있고, Groups 리스트에서의 변경 대상(changer)에 있게 된다.
새로운 그룹을 생성하기 위해서는, 사용자는 Groups 리스트의 변경 대상을 클릭하고, New 버튼(168)을 클릭한다. New Group 다이얼로그가 나타난다. 그러면, 사용자는 새로운 그룹의 이름을 8개 이하의 문자로 타이핑하고, 개시 및 종료 슬롯 범위를 선택한 후, OK를 클릭한다. 또한, 그룹도 Assign 버튼(170)을 이용하여 유사한 방식으로 할당할 수 있다.
본 발명의 시스템 및 방법은 SAN 환경에서 작동할 수 있어서, SAN 내에서 연결된 서버들 각각은 SAN 내의 공유 저장 장치의 정보를 보유하며, 이 장치의 테이프 드라이브와 매체를 사용하여 작동시키고자 하는 것을 결정하여, 이러한 결정을 다른 서버도 알 수 있게 하고, 또한, 이로써 개시된 장치의 임의의 상태 변화를 공유한다.
도 6에 관하여 상술한 바와 같이, 루프 내의 한 서버는 주서버로서 지정되고, 그 나머지 서버들은 분산 서버로서 지정된다. 주서버(13)는 SAN 상에 연결된 장치들을 개시하고 관리할 책임이 있다. 또한, 주서버(13)는 "sanghost"라고 불리는 글로벌 로킹 프로세스(global locking process)를 실행하여, 여러 서버들 간의 저장 장치들에의 액세스를 동기화시킨다. 분산 서버들(15a∼15n)은 주서버(13)로부터 장치 정보 상세를 취득하여, 자신들의 내부 구조를 초기화한다. 모든 서버가셋업되어 실행되면, 스스로 결정하는 데 충분히 독립적이며 지능적이게 된다. 서버들 간의 통신은 SAN 내의 모든 서버 상에서 활성화되는 피어 시스템 층(peer system layer)을 통한다.
한 서버(예컨대, 분산 서버(15b))가 데이터를 백업하고자 하여 백업 저장 장치(16a)의 한 드라이브와 매체를 사용할 것을 결정하면, 이 서버는 우선 주서버(13) 상에서 실행되는 "snapshot"으로부터 글로벌 록(global lock)을 요청한다. 어떤 서버도 이 록을 보유하고 있지 않다면, 글로벌 록을 요청한 이 서버는 록을 취득하고, 그 동작을 안전하게 진행할 수 있다. 만일 어떤 서버가 이 록을 보유한 경우에, 이 글로벌 록 요청 서버는 글로벌 록을 취득할 수 있을 때까지 대기하여야 한다. 일단 서버(15b)가 글로벌 록을 취득할 수 있게 되면, 이 서버는 자신의 내부 테이블을 체크하여, 임의의 다른 서버나 혹은 자신이 해당 드라이브와 매체를 이미 로킹했는지의 여부를 판정한다. 만일 드라이브와 매체가 로킹된 적이 없다면, 서버(15b)는 이 드라이브와 매체를 로킹된 것으로 마킹하고, 그 피어 시스템을 통해 SAN 상의 다른 서버들에게 그 정보를 전달한다. 그리고 나서, 이 서버는 다른 서버들이 다른 드라이브와 매체를 사용하여 희망하는 작업을 수행할 수 있도록 글로벌 록을 해제한다. 서버가 슬롯으로부터 드라이브로, 혹은 그 반대로 매체를 이동시키므로, 서버는 이러한 동작에 관하여 다른 서버들을 갱신시켜, 다른 서버들이 그들의 내부 테이블을 갱신할 수 있게 한다. 매체가 포맷(혹은 재 포맷된) 경우에, 정보는 다른 모든 서버들에게 전달된다. 서버(15b)가 그 동작을 완료한 후에는, 다시 글로벌 록을 요청한 다음, 다른 모든 서버들에게 해당 드라이브와매체가 록 해제(unlock)됨을 알린다. 또한, 서버(15b)는 자신의 내부 테이블에서 드라이브와 매체를 록 해제하고 나서, 글로벌 록을 해제한다.
주서버(13)가 고장나서 멈춘 경우, 다른 모든 서버들은 그 장치의 상태를 알게 되면, 임의의 다른 서버가 주서버로서 온 더 플라이(on the fly)로 진행될 수 있다.
본 발명은 본 명세서에 기술된 원리에 따라 프로그래밍된 하나 이상의 통상의 범용 디지털 컴퓨터 및/또는 서버를 사용하여 알맞게 구현될 수 있다. 적절한 소프트웨어 코딩은 본 발명의 원리에 기초하여 숙련된 프로그래머에 의해 용이하게 작성될 수 있다. 또한, 본 발명은 통상의 구성 회로들의 적절한 네트워크를 상호 연결함으로써 혹은 소정의 전용 집적 회로들을 구성함으로써 구현될 수 있다.
상술한 원리에서 볼 때, 본 발명에 대한 추가의 다양한 변경 및 변형이 가능하다. 그러므로, 이하의 특허청구범위의 범주 내에서, 본 발명은 본 명세서에서 구체적으로 설명된 실시 형태 이외의 실시 형태에 의해서도 실시될 수 있다는 것을 이해하여야 한다.

Claims (24)

  1. 정보를 백업 및 복원하기 위한 시스템에 있어서,
    백업 및 복원될 정보를 포함하는 적어도 하나의 컴퓨터 시스템;
    백업될 정보의 적어도 일부를 수신하고, 그 정보를 저장 및 백업하기 위한 저장 장치; 및
    사용자의 잡 큐(job queue)에의 입력을 허용하는 스케줄링 시스템과, 백업 혹은 복원될 상기 적어도 하나의 컴퓨터 시스템의 정보의 일부 또는 그 이상의 부분을 나타내는 마스터 잡(master job)과, 상기 마스터 잡을 보다 소규모의 복수의 잡(job)들로 분할하고 이 복수의 소규모 잡들을 상기 잡 큐에 입력하는 잡 제어 시스템을 포함하는 제어기
    를 포함하는 정보 백업/복원 시스템.
  2. 제1항에 있어서,
    상기 사용자가 상기 마스터 잡을 상기 잡 큐에 입력할 경우, 상기 사용자는 상기 마스터 잡이 실행될 시간을 지정할 수 있고,
    잡 엔진(job engine)은 실행될 잡들의 상기 잡 큐를 주기적으로 검사하고, 상기 마스터 잡이 실행될 시간일 경우에 상기 잡 제어 시스템은 상기 마스터 잡을 상기 복수의 소규모 잡들로 분할하는 정보 백업/복원 시스템.
  3. 제1항에 있어서,
    상기 복수의 소규모 잡들 각각은 단일의 소스 엔티티(source entity)의 백업 또는 복원에 대응하는 정보 백업/복원 시스템.
  4. 제3항에 있어서,
    상기 마스터 잡은 전체 컴퓨터 시스템의 백업 또는 복원이며, 상기 단일 소스 엔티티는 상기 전체 컴퓨터 시스템의 파일 시스템 및 데이터베이스 중 하나인 정보 백업/복원 시스템.
  5. 제1항에 있어서,
    상기 저장 장치는 테이프 장치를 포함하는 정보 백업/복원 시스템.
  6. 제5항에 있어서,
    상기 테이프 장치는 테이프 라이브러리를 포함하는 정보 백업/복원 시스템.
  7. 제1항에 있어서,
    상기 적어도 하나의 컴퓨터 시스템은 서버 시스템을 포함하는 정보 백업/복원 시스템.
  8. 컴퓨터 시스템 상의 정보를 백업 및 복원하는 방법에 있어서,
    소정의 시간에 상기 컴퓨터 시스템 상의 정보 중 적어도 일부에 대해 수행될 백업과 복원 중 적어도 하나를 나타내는 마스터 잡을 잡 큐에 입력하는 단계;
    수행될 마스터 잡의 상기 잡 큐를 검사하여, 상기 마스터 잡이 수행될 시간일 때, 상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고 이 복수의 소규모 잡들을 상기 잡 큐에 입력하는 단계;
    상기 소규모 잡들의 잡 큐를 검사하여, 상기 복수의 소규모 잡들 중 하나가 검출되면, 저장 장치가 이용 가능한지의 여부를 판정하는 단계; 및
    이용 가능한 저장 장치 각각에 대해 상기 복수의 소규모 잡들 중 하나를 개시하는 단계
    를 포함하는 정보 백업/복원 방법.
  9. 제8항에 있어서,
    한 소규모의 잡이 완료되면, 사용되었던 저장 장치가 다시 이용 가능하다는 표시를 제공하고, 상기 이용 가능하게 된 저장 장치를 이용하여 또 다른 소규모 잡을 개시하는 단계
    를 더 포함하는 정보 백업/복원 방법.
  10. 제9항에 있어서,
    소규모 잡들의 잡 큐를 검사하는 상기 단계와, 복수의 소규모 잡들 중 하나를 개시하는 상기 단계와, 표시를 제공하는 상기 단계는 상기 소규모 잡들 각각이완료될 때까지 반복적으로 수행되는 정보 백업/복원 방법.
  11. 제8항에 있어서,
    상기 마스터 잡은, 상기 마스터 잡이 수행되기 전 또는 후에 적어도 하나의 동작을 수행하기 위한 명령어(insturction)를 포함하는 정보 백업/복원 방법.
  12. 제11항에 있어서,
    상기 마스터 잡이 수행된 후에 수행되는 동작은, 상기 마스터 잡에 상응하는 최후의 소규모 잡이 수행된 후에 수행되는 정보 백업/복원 방법.
  13. 제11항에 있어서,
    상기 마스터 잡이 수행되기 전에 수행되는 동작은, 상기 마스터 잡에 상응하는 최초의 소규모 잡이 수행되기 전에 수행되는 정보 백업/복원 방법.
  14. 정보를 백업 및 복원하기 위한 컴퓨터 실행 가능 코드를 포함하는 컴퓨터 기록 매체에 있어서,
    사용자가 백업 또는 복원될 정보의 일부 또는 그 이상의 부분을 나타내는 마스터 잡을 잡 큐에 입력할 수 있게 하기 위한 코드; 및
    상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고, 이 복수의 소규모 잡들을 상기 잡 큐에 입력하기 위한 코드
    를 포함하는 컴퓨터 기록 매체.
  15. 제14항에 있어서,
    사용자가 마스터 잡을 잡 큐에 입력할 수 있게 하기 위한 상기 코드는, 상기 사용자가 상기 마스터 잡이 실행될 시간을 지정할 수 있게 하는 컴퓨터 기록 매체.
  16. 제15항에 있어서,
    실행될 잡들의 상기 잡 큐를 주기적으로 검사하여, 상기 마스터 잡이 실행될 시간일 때에 상기 마스터 잡을 상기 보다 소규모의 복수의 잡들로 분할하기 위한 코드
    를 더 포함하는 컴퓨터 기록 매체.
  17. 제14항에 있어서,
    상기 복수의 소규모 잡들 각각은 단일의 소스 엔티티의 백업 또는 복원에 대응하는 컴퓨터 기록 매체.
  18. 제17항에 있어서,
    상기 마스터 잡은 전체 컴퓨터 시스템의 백업 또는 복원이고, 상기 단일 소스 엔티티는 상기 전체 컴퓨터 시스템의 파일 시스템 및 데이터베이스 중 하나인 컴퓨터 기록 매체.
  19. 컴퓨터 시스템 상의 정보를 백업 및 복원하기 위한 컴퓨터 실행 가능 코드를 포함하는 컴퓨터 기록 매체에 있어서,
    소정의 시간에 상기 컴퓨터 시스템 상의 정보 중 적어도 일부에 대해 수행되는 백업 및 복원 중 적어도 하나를 나타내는 마스터 잡을 잡 큐에 입력하기 위한 코드;
    수행될 마스터 잡의 상기 잡 큐를 검사하여, 상기 마스터 잡이 수행될 시간일 때에 상기 마스터 잡을 보다 소규모의 복수의 잡들로 분할하고, 이 복수의 소규모 잡들을 상기 잡 큐에 입력하기 위한 코드;
    상기 소규모 잡들의 잡 큐를 검사하여, 상기 복수의 소규모 잡들 중 하나가 검출되면, 저장 장치가 이용 가능한지의 여부를 판정하기 위한 코드; 및
    이용 가능한 저장 장치 각각에 대해 상기 복수의 소규모 잡들 중 하나를 개시하기 위한 코드
    를 포함하는 컴퓨터 기록 매체.
  20. 제19항에 있어서,
    한 소규모 잡이 완료되면, 사용되었던 저장 장치가 다시 이용 가능하다는 표시를 제공하고, 상기 이용 가능하게 된 저장 장치를 사용하여 또 다른 소규모 잡을 개시하기 위한 코드
    를 더 포함하는 컴퓨터 기록 매체.
  21. 제20항에 있어서,
    상기 소규모 잡들의 잡 큐를 검사하는 것과, 상기 복수의 소규모 잡들 중 하나를 개시하는 것과, 상기 표시를 제공하는 것은 상기 소규모 잡들 각각이 완료될 때까지 반복적으로 수행되는 컴퓨터 기록 매체.
  22. 제19항에 있어서,
    상기 마스터 잡은, 상기 마스터 잡이 수행되기 전 또는 후에 적어도 하나의 동작을 수행하기 위한 명령어를 포함하는 컴퓨터 기록 매체.
  23. 제19항에 있어서,
    상기 마스터 잡이 수행된 후에 수행되는 동작은, 상기 마스터 잡에 상응하는 최후의 소규모 잡이 수행된 후에 수행되는 컴퓨터 기록 매체.
  24. 제19항에 있어서,
    상기 마스터 잡이 수행되기 전에 수행되는 동작은, 상기 마스터 잡에 상응하는 최초의 소규모 잡이 수행되기 전에 수행되는 컴퓨터 기록 매체.
KR10-2004-7000135A 2001-07-06 2002-07-03 정보 백업 시스템 및 방법 KR20040010836A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US30345001P 2001-07-06 2001-07-06
US60/303,450 2001-07-06
PCT/US2002/021051 WO2003005158A2 (en) 2001-07-06 2002-07-03 Systems and methods of information backup

Publications (1)

Publication Number Publication Date
KR20040010836A true KR20040010836A (ko) 2004-01-31

Family

ID=23172139

Family Applications (4)

Application Number Title Priority Date Filing Date
KR10-2004-7000135A KR20040010836A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법
KR10-2004-7000138A KR20040013113A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법
KR10-2004-7000136A KR20040010837A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법
KR10-2004-7000137A KR20040010838A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR10-2004-7000138A KR20040013113A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법
KR10-2004-7000136A KR20040010837A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법
KR10-2004-7000137A KR20040010838A (ko) 2001-07-06 2002-07-03 정보 백업 시스템 및 방법

Country Status (8)

Country Link
US (5) US7734594B2 (ko)
EP (4) EP1405188B1 (ko)
JP (4) JP2005521114A (ko)
KR (4) KR20040010836A (ko)
CN (4) CN1524221A (ko)
CA (4) CA2453070A1 (ko)
IL (4) IL159582A0 (ko)
WO (4) WO2003005245A2 (ko)

Families Citing this family (232)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6418478B1 (en) 1997-10-30 2002-07-09 Commvault Systems, Inc. Pipelined high speed data transfer mechanism
US7581077B2 (en) 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
IL159582A0 (en) * 2001-07-06 2004-06-01 Computer Ass Think Inc Systems and methods of information backup
JP4204977B2 (ja) * 2001-10-22 2009-01-07 アップル インコーポレイテッド メディアプレーヤーのためのインテリジェントなシンクロ操作
US20030167318A1 (en) * 2001-10-22 2003-09-04 Apple Computer, Inc. Intelligent synchronization of media player with host computer
US7177823B2 (en) * 2001-11-06 2007-02-13 International Business Machines Corporation In-queue jobs information monitoring and filtering
JP4434543B2 (ja) * 2002-01-10 2010-03-17 株式会社日立製作所 分散ストレージシステム、ストレージ装置、およびデータのコピー方法
US7350149B1 (en) * 2002-03-28 2008-03-25 Emc Corporation Backup reporting framework graphical user interface
US7404145B1 (en) 2002-03-28 2008-07-22 Emc Corporation Generic mechanism for reporting on backups
US7099814B2 (en) * 2002-03-29 2006-08-29 International Business Machines Corportion I/O velocity projection for bridge attached channel
US7788324B2 (en) * 2002-03-29 2010-08-31 Atto Technology, Inc. Method and system for improving the efficiency and ensuring the integrity of a data transfer
US7680849B2 (en) * 2004-10-25 2010-03-16 Apple Inc. Multiple media type synchronization between host computer and media device
US8150937B2 (en) 2004-10-25 2012-04-03 Apple Inc. Wireless synchronization between media player and host device
US7711847B2 (en) 2002-04-26 2010-05-04 Sony Computer Entertainment America Inc. Managing users in a multi-user network game environment
US20030217135A1 (en) 2002-05-17 2003-11-20 Masayuki Chatani Dynamic player management
JP4467257B2 (ja) * 2002-06-28 2010-05-26 株式会社日立製作所 データベース管理方法および装置並びにその処理プログラム
US8131802B2 (en) 2007-10-05 2012-03-06 Sony Computer Entertainment America Llc Systems and methods for seamless host migration
US8560707B2 (en) * 2007-10-05 2013-10-15 Sony Computer Entertainment America Llc Seamless host migration based on NAT type
GB2410106B (en) 2002-09-09 2006-09-13 Commvault Systems Inc Dynamic storage device pooling in a computer system
GB2409553B (en) 2002-09-16 2007-04-04 Commvault Systems Inc System and method for optimizing storage operations
JP2004145735A (ja) * 2002-10-25 2004-05-20 Hitachi Ltd データベース管理方法及び管理システム
JP4136615B2 (ja) * 2002-11-14 2008-08-20 株式会社日立製作所 データベースシステム及びデータベースのアクセス方法
US7136885B2 (en) * 2002-12-20 2006-11-14 International Business Machines Corporation Free space management
US7461131B2 (en) * 2003-03-07 2008-12-02 International Business Machines Corporation Use of virtual targets for preparing and servicing requests for server-free data transfer operations
US7904599B1 (en) 2003-03-28 2011-03-08 Cisco Technology, Inc. Synchronization and auditing of zone configuration data in storage-area networks
US7433300B1 (en) * 2003-03-28 2008-10-07 Cisco Technology, Inc. Synchronization of configuration data in storage-area networks
JP4891521B2 (ja) 2003-03-28 2012-03-07 三洋電機株式会社 データ入出力方法、およびその方法を利用可能な記憶装置およびホスト装置
CA2520498C (en) 2003-04-03 2012-09-25 Commvault Systems, Inc. System and method for dynamically performing storage operations in a computer network
US7181476B2 (en) * 2003-04-30 2007-02-20 Oracle International Corporation Flashback database
US7376744B2 (en) * 2003-05-09 2008-05-20 Oracle International Corporation Using local locks for global synchronization in multi-node systems
US7353509B2 (en) * 2003-05-27 2008-04-01 Akamai Technologies, Inc. Method and system for managing software installs in a distributed computer network
TW200428237A (en) * 2003-06-06 2004-12-16 Hon Hai Prec Ind Co Ltd System and method of scheduling and naming for database backup and recovery
US7287086B2 (en) 2003-07-09 2007-10-23 Internatinonal Business Machines Corporation Methods, systems and computer program products for controlling data transfer for data replication or backup based on system and/or network resource information
US7251708B1 (en) * 2003-08-07 2007-07-31 Crossroads Systems, Inc. System and method for maintaining and reporting a log of multi-threaded backups
US7447852B1 (en) 2003-08-07 2008-11-04 Crossroads Systems, Inc. System and method for message and error reporting for multiple concurrent extended copy commands to a single destination device
US7552294B1 (en) 2003-08-07 2009-06-23 Crossroads Systems, Inc. System and method for processing multiple concurrent extended copy commands to a single destination device
JP4267420B2 (ja) * 2003-10-20 2009-05-27 株式会社日立製作所 ストレージ装置及びバックアップ取得方法
JP4385215B2 (ja) * 2003-10-21 2009-12-16 日本電気株式会社 スナップショットシミュレーション機能を有するディスクアレイ装置
KR20050041898A (ko) * 2003-10-30 2005-05-04 주식회사 오토브레인 데이터 백업 시스템 및 방법과 그 기록 매체
CA2544063C (en) 2003-11-13 2013-09-10 Commvault Systems, Inc. System and method for combining data streams in pilelined storage operations in a storage network
US7409641B2 (en) * 2003-12-29 2008-08-05 International Business Machines Corporation Method for replying to related messages
US7818680B2 (en) * 2003-12-29 2010-10-19 International Business Machines Corporation Method for deleting related messages
US8805933B2 (en) * 2003-12-29 2014-08-12 Google Inc. System and method for building interest profiles from related messages
US7412437B2 (en) * 2003-12-29 2008-08-12 International Business Machines Corporation System and method for searching and retrieving related messages
JP2005209014A (ja) * 2004-01-23 2005-08-04 Canon Inc ジョブ管理装置、方法、制御プログラム
US20060047855A1 (en) 2004-05-13 2006-03-02 Microsoft Corporation Efficient chunking algorithm
US7962453B2 (en) * 2004-04-26 2011-06-14 Oracle International Corporation Dynamic redistribution of a distributed memory index when individual nodes have different lookup indexes
US20060080507A1 (en) * 2004-05-18 2006-04-13 Tyndall John F System and method for unit attention handling
US20070110074A1 (en) 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US10972536B2 (en) 2004-06-04 2021-04-06 Apple Inc. System and method for synchronizing media presentation at multiple recipients
US8443038B2 (en) 2004-06-04 2013-05-14 Apple Inc. Network media device
US8797926B2 (en) 2004-06-04 2014-08-05 Apple Inc. Networked media station
US8898246B2 (en) * 2004-07-29 2014-11-25 Hewlett-Packard Development Company, L.P. Communication among partitioned devices
JP2006048122A (ja) * 2004-07-30 2006-02-16 Ntt Docomo Inc 通信システム
US20060053177A1 (en) * 2004-09-07 2006-03-09 Riku Suomela System and method for backup and restoration
US7567974B2 (en) * 2004-09-09 2009-07-28 Microsoft Corporation Method, system, and apparatus for configuring a data protection system
US8145601B2 (en) * 2004-09-09 2012-03-27 Microsoft Corporation Method, system, and apparatus for providing resilient data transfer in a data protection system
US7769709B2 (en) * 2004-09-09 2010-08-03 Microsoft Corporation Method, system, and apparatus for creating an archive routine for protecting data in a data protection system
US7865470B2 (en) * 2004-09-09 2011-01-04 Microsoft Corporation Method, system, and apparatus for translating logical information representative of physical data in a data protection system
US7502961B2 (en) * 2004-09-09 2009-03-10 Microsoft Corporation Method, system, and apparatus for providing alert synthesis in a data protection system
US7613787B2 (en) * 2004-09-24 2009-11-03 Microsoft Corporation Efficient algorithm for finding candidate objects for remote differential compression
US7975061B1 (en) 2004-11-05 2011-07-05 Commvault Systems, Inc. System and method for performing multistream storage operations
US7536291B1 (en) 2004-11-08 2009-05-19 Commvault Systems, Inc. System and method to support simulated storage operations
GB0425857D0 (en) * 2004-11-25 2004-12-29 Ibm A method and apparatus for controlling data access
US7461102B2 (en) 2004-12-09 2008-12-02 International Business Machines Corporation Method for performing scheduled backups of a backup node associated with a plurality of agent nodes
CN100409196C (zh) * 2004-12-22 2008-08-06 国际商业机器公司 使用数个存储介质来存储和恢复数据文件的方法
US11314378B2 (en) 2005-01-07 2022-04-26 Apple Inc. Persistent group of media items for a media device
US20060212866A1 (en) * 2005-01-27 2006-09-21 Mckay Michael S System and method for graphically displaying scheduling information
US20060184528A1 (en) * 2005-02-14 2006-08-17 International Business Machines Corporation Distributed database with device-served leases
US7930409B2 (en) * 2005-02-23 2011-04-19 Aol Inc. Configuring output on a communication device
US20060206821A1 (en) * 2005-03-08 2006-09-14 Giga-Byte Technology Co., Ltd. Data moving method and user window interface
US7814260B2 (en) * 2005-03-09 2010-10-12 Bakbone Software, Inc. Tape image on non-tape storage device
WO2006098569A1 (en) * 2005-03-14 2006-09-21 Samsung Electronics Co., Ltd. Method and apparatus for backing up and restoring domain information
KR100644696B1 (ko) 2005-03-14 2006-11-10 삼성전자주식회사 도메인 정보를 백업/복구하는 방법 및 장치
US20060218435A1 (en) * 2005-03-24 2006-09-28 Microsoft Corporation Method and system for a consumer oriented backup
GB0507350D0 (en) * 2005-04-12 2005-05-18 Ibm A method, system and computer program for providing atomicity for a unit of work
US7672979B1 (en) * 2005-04-22 2010-03-02 Symantec Operating Corporation Backup and restore techniques using inconsistent state indicators
US20060271579A1 (en) * 2005-05-10 2006-11-30 Arun Batish Storage usage analysis
JP2006339268A (ja) * 2005-05-31 2006-12-14 Canon Inc 半導体製造装置及びその制御方法並びにデバイス製造方法
US20070027734A1 (en) * 2005-08-01 2007-02-01 Hughes Brian J Enterprise solution design methodology
US8621275B1 (en) 2010-08-06 2013-12-31 Open Invention Network, Llc System and method for event-driven live migration of multi-process applications
US8584145B1 (en) 2010-08-06 2013-11-12 Open Invention Network, Llc System and method for dynamic transparent consistent application-replication of multi-process multi-threaded applications
US9141481B1 (en) * 2010-08-06 2015-09-22 Open Invention Network, Llc System and method for reliable non-blocking messaging for multi-process application replication
US8589953B1 (en) * 2010-08-06 2013-11-19 Open Invention Network, Llc System and method for transparent consistent application-replication of multi-process multi-threaded applications
US8126768B2 (en) * 2005-09-13 2012-02-28 Computer Associates Think, Inc. Application change request to deployment maturity model
US8886551B2 (en) * 2005-09-13 2014-11-11 Ca, Inc. Centralized job scheduling maturity model
CN101346634B (zh) * 2005-11-04 2012-10-24 甲骨文国际公司 用于通信网络中的网守的系统和方法
US20070104186A1 (en) * 2005-11-04 2007-05-10 Bea Systems, Inc. System and method for a gatekeeper in a communications network
CN100397364C (zh) * 2005-11-08 2008-06-25 英业达股份有限公司 在存储器中执行备份和恢复程序以备份和恢复硬盘资料的方法
US7693889B1 (en) 2005-12-28 2010-04-06 Emc Corporation Automated backup and recovery for content repository
US8832705B1 (en) * 2005-12-28 2014-09-09 Emc Corporation Ordered mutual exclusion
US7574461B1 (en) * 2005-12-28 2009-08-11 Emc Corporation Dividing data for multi-thread backup
US7831821B2 (en) * 2005-12-30 2010-11-09 Intel Corporation System backup and recovery solution based on BIOS
US20070179997A1 (en) * 2006-01-30 2007-08-02 Nooning Malcolm H Iii Computer backup using native operating system formatted file versions
US7529777B1 (en) * 2006-02-28 2009-05-05 Emc Corporation Cross-object attribute restoration
US7941404B2 (en) * 2006-03-08 2011-05-10 International Business Machines Corporation Coordinated federated backup of a distributed application environment
US7660836B2 (en) 2006-03-09 2010-02-09 International Business Machines Corporation Controlling incremental backups using opaque object attributes
US7698520B2 (en) * 2006-03-10 2010-04-13 Seiko Epson Corporation Method for processing backup, devices for backup processing, and storage mediums for storing a program for operating a backup processing device
JP4532423B2 (ja) * 2006-03-16 2010-08-25 富士通株式会社 サーバシステム
JP4921013B2 (ja) * 2006-03-30 2012-04-18 日本電気株式会社 メールサーバのバックアップシステム、メールサーバのバックアップ方法、プログラム及び記録媒体
CN101048008B (zh) * 2006-03-31 2012-08-29 株式会社日立制作所 无源光网络中iptv业务的频道切换系统和方法
US8010495B1 (en) * 2006-04-25 2011-08-30 Parallels Holdings, Ltd. Method and system for fast generation of file system snapshot bitmap in virtual environment
US8171466B2 (en) * 2006-05-16 2012-05-01 Oracle International Corporation Hitless application upgrade for SIP server architecture
US8219697B2 (en) * 2006-05-17 2012-07-10 Oracle International Corporation Diameter protocol and SH interface support for SIP server architecture
US20070271316A1 (en) * 2006-05-22 2007-11-22 I3Archives, Inc. System and method for backing up medical records
US7624134B2 (en) * 2006-06-12 2009-11-24 International Business Machines Corporation Enabling access to remote storage for use with a backup program
US8370853B2 (en) * 2006-08-04 2013-02-05 Apple Inc. Event notification management
US8166415B2 (en) 2006-08-04 2012-04-24 Apple Inc. User interface for backup management
US7853566B2 (en) * 2006-08-04 2010-12-14 Apple Inc. Navigation of electronic backups
US20080034004A1 (en) * 2006-08-04 2008-02-07 Pavel Cisler System for electronic backup
US8311988B2 (en) * 2006-08-04 2012-11-13 Apple Inc. Consistent back up of electronic information
US9009115B2 (en) * 2006-08-04 2015-04-14 Apple Inc. Restoring electronic information
US7860839B2 (en) 2006-08-04 2010-12-28 Apple Inc. Application-based backup-restore of electronic information
US7574574B2 (en) * 2006-09-11 2009-08-11 Apple Inc. Backup of media libraries
US7587565B1 (en) 2006-09-28 2009-09-08 Emc Corporation Generating automated and scheduled SAN copy sessions for ISB protocol systems
US7584339B1 (en) * 2006-09-28 2009-09-01 Emc Corporation Remote backup and restore operations for ISB protocol systems
US7487310B1 (en) 2006-09-28 2009-02-03 Emc Corporation Rotation policy for SAN copy sessions of ISB protocol systems
US7725669B1 (en) 2006-09-28 2010-05-25 Emc Corporation Backup and restore operations using coherency groups for ISB protocol systems
US7661027B2 (en) * 2006-10-10 2010-02-09 Bea Systems, Inc. SIP server architecture fault tolerance and failover
US20080114700A1 (en) * 2006-11-10 2008-05-15 Moore Norman T System and method for optimized asset management
US8073880B2 (en) * 2006-11-10 2011-12-06 Computer Associates Think, Inc. System and method for optimizing storage infrastructure performance
US8078737B2 (en) * 2006-12-13 2011-12-13 Oracle International Corporation System and method for efficient storage of long-lived session state in a SIP server
KR200454395Y1 (ko) * 2006-12-19 2011-06-30 현대중공업 주식회사 에어벤트 유닛
JP2008152662A (ja) * 2006-12-19 2008-07-03 Kwok-Yan Leung 大量のハードディスク群から迅速に検索するシステムおよび方法
US8150810B1 (en) * 2006-12-21 2012-04-03 Symantec Corporation Method and apparatus for file sharing between continuous and scheduled backups
US8312323B2 (en) 2006-12-22 2012-11-13 Commvault Systems, Inc. Systems and methods for remote monitoring in a computer network and reporting a failed migration operation without accessing the data being moved
US8631088B2 (en) 2007-01-07 2014-01-14 Apple Inc. Prioritized data synchronization with host device
US20080168525A1 (en) * 2007-01-07 2008-07-10 David Heller Background Data Transmission between Media Device and Host Device
US8850140B2 (en) * 2007-01-07 2014-09-30 Apple Inc. Data backup for mobile device
US7962432B2 (en) 2007-01-16 2011-06-14 Timmins Software Corporation Analyzing information technology systems using collaborative intelligence data anonimity
US20080215731A1 (en) * 2007-01-19 2008-09-04 Brandt Christian Redd Attribute grouping for online course
US8306057B1 (en) * 2007-02-23 2012-11-06 Nextel Communications, Inc. Method and system for providing presence information related to a communications network
US20080208863A1 (en) * 2007-02-28 2008-08-28 Microsoft Corporation Compound Item Locking Technologies
US7941405B2 (en) * 2007-03-30 2011-05-10 Data Center Technologies Password protection for file backups
US8010900B2 (en) 2007-06-08 2011-08-30 Apple Inc. User interface for electronic backup
US8468136B2 (en) * 2007-06-08 2013-06-18 Apple Inc. Efficient data backup
US8725965B2 (en) * 2007-06-08 2014-05-13 Apple Inc. System setup for electronic backup
US20080307017A1 (en) 2007-06-08 2008-12-11 Apple Inc. Searching and Restoring of Backups
US8307004B2 (en) 2007-06-08 2012-11-06 Apple Inc. Manipulating electronic backups
US8099392B2 (en) 2007-06-08 2012-01-17 Apple Inc. Electronic backup of applications
US8745523B2 (en) 2007-06-08 2014-06-03 Apple Inc. Deletion in electronic backups
DE602007006932D1 (de) * 2007-06-22 2010-07-15 Software Ag Datenbanksystem und Verfahren zur externen Datensicherung
JP5224240B2 (ja) 2008-03-25 2013-07-03 株式会社日立製作所 計算機システム及び管理計算機
US7882342B1 (en) * 2008-03-31 2011-02-01 Symantec Corporation Systems and methods for imaging a computer system
WO2009124208A1 (en) * 2008-04-03 2009-10-08 Memeo, Inc. Online-assisted backup and restore
US8452731B2 (en) * 2008-09-25 2013-05-28 Quest Software, Inc. Remote backup and restore
JP2010097292A (ja) * 2008-10-14 2010-04-30 Canon Inc 情報処理装置及び情報処理方法
US8965926B2 (en) * 2008-12-17 2015-02-24 Microsoft Corporation Techniques for managing persistent document collections
JP5294014B2 (ja) * 2008-12-26 2013-09-18 株式会社日立製作所 ファイル共有方法、計算機システム及びジョブスケジューラ
US9003411B2 (en) * 2009-05-13 2015-04-07 Verizon Patent And Licensing Inc. Automated provisioning and configuration of virtual and physical servers
US8407613B2 (en) * 2009-07-13 2013-03-26 Apple Inc. Directory management on a portable multifunction device
US8621067B2 (en) * 2009-09-10 2013-12-31 At&T Intellectual Property I, Lp Apparatus and method for managing communications
JP5451277B2 (ja) * 2009-09-14 2014-03-26 キヤノン株式会社 管理装置、情報処理装置、ログ情報管理方法、及びコンピュータプログラム
US8886610B2 (en) * 2009-10-01 2014-11-11 Hewlett-Packard Development Company, L. P. Backup simulation for backing up filesystems to a storage device
CN101710901B (zh) * 2009-10-22 2012-12-05 乐视网信息技术(北京)股份有限公司 一种具有p2p功能的分布式存储系统和方法
US8347048B2 (en) * 2009-10-30 2013-01-01 Ca, Inc. Self learning backup and recovery management system
US8595188B2 (en) * 2009-11-06 2013-11-26 International Business Machines Corporation Operating system and file system independent incremental data backup
US8224879B2 (en) * 2010-02-23 2012-07-17 Hitachi, Ltd. Management system and management method for storage system
JP5509973B2 (ja) * 2010-03-25 2014-06-04 富士ゼロックス株式会社 印刷ジョブ情報管理装置、印刷装置、印刷ジョブ情報管理プログラム
US8407795B2 (en) * 2010-05-18 2013-03-26 Ca, Inc. Systems and methods to secure backup images from viruses
US8843444B2 (en) 2010-05-18 2014-09-23 Ca, Inc. Systems and methods to determine security holes of a backup image
US20110289417A1 (en) * 2010-05-21 2011-11-24 Schaefer Diane E User interface for configuring and managing the cluster
US9507670B2 (en) 2010-06-14 2016-11-29 Veeam Software Ag Selective processing of file system objects for image level backups
KR101753313B1 (ko) * 2010-07-08 2017-07-19 삼성전자주식회사 파일 백업 장치 및 방법
US8762344B2 (en) 2010-09-17 2014-06-24 Hitachi, Ltd. Method for managing information processing system and data management computer system
US8666944B2 (en) 2010-09-29 2014-03-04 Symantec Corporation Method and system of performing a granular restore of a database from a differential backup
JP5816424B2 (ja) * 2010-10-05 2015-11-18 富士通株式会社 情報処理装置、テープ装置、およびプログラム
US9087069B1 (en) * 2010-10-25 2015-07-21 Symantec Corporation Systems and methods for duplicating backup images
CN102457567B (zh) * 2010-11-08 2015-01-21 中标软件有限公司 一种web管理方式的镜像备份/恢复方法及工具
WO2012070292A1 (ja) * 2010-11-22 2012-05-31 インターナショナル・ビジネス・マシーンズ・コーポレーション 分散データベースの負荷均衡のためのコネクション配分を実現する情報処理システム、情報処理装置、負荷均衡方法、データベース配置計画方法およびプログラム
US9244976B1 (en) 2010-12-16 2016-01-26 The George Washington University and Board of Regents Just-in-time analytics on large file systems and hidden databases
US9244975B2 (en) * 2010-12-16 2016-01-26 The George Washington University Just-in-time analytics on large file systems
US20120173488A1 (en) * 2010-12-29 2012-07-05 Lars Spielberg Tenant-separated data storage for lifecycle management in a multi-tenancy environment
CN102073558B (zh) * 2010-12-30 2012-11-28 东方口岸科技有限公司 实现智能卡中文件安全完整的方法
US8984029B2 (en) 2011-01-14 2015-03-17 Apple Inc. File system management
US8943026B2 (en) 2011-01-14 2015-01-27 Apple Inc. Visual representation of a local backup
US8478726B2 (en) * 2011-03-03 2013-07-02 Microsoft Corporation Parallel database backup and restore
US9110851B2 (en) * 2011-09-29 2015-08-18 Oracle International Corporation System and method for persisting transaction records in a transactional middleware machine environment
US8949367B2 (en) * 2011-10-31 2015-02-03 Oracle International Corporation Cooperative storage management
US8949197B2 (en) 2011-10-31 2015-02-03 Oracle International Corporation Virtual full backups
CN102521072B (zh) * 2011-11-25 2013-09-11 华为数字技术(成都)有限公司 虚拟磁带库设备及数据恢复方法
JP5749197B2 (ja) * 2012-02-24 2015-07-15 日本電信電話株式会社 サーバ装置およびプログラム停止方法
CN103309873B (zh) * 2012-03-09 2018-06-12 阿里巴巴集团控股有限公司 数据的处理方法、装置及系统
US10467104B1 (en) * 2012-09-28 2019-11-05 EMC IP Holding Company LLC Method and system for distributed systems backup configuration wizard
US10635128B1 (en) * 2012-10-29 2020-04-28 Veritas Technologies Llc Storing backup data using snapshots
JP6060628B2 (ja) 2012-11-07 2017-01-18 日本電気株式会社 ライブラリ装置
CN102968320B (zh) * 2012-11-16 2016-02-10 武汉钢铁(集团)公司 基于云备份的工控设备自动恢复系统及其运行方法
CN102999400A (zh) * 2012-11-22 2013-03-27 中国电信股份有限公司云计算分公司 一种云存储系统数据备份方法及装置
US10379988B2 (en) 2012-12-21 2019-08-13 Commvault Systems, Inc. Systems and methods for performance monitoring
US9286106B1 (en) * 2013-04-16 2016-03-15 Ca, Inc. Scheduling periodic tasks with dependencies and determining improper loop dependencies between tasks placed in a waiting tasks set and in a unfinished dependent tasks set
CN103246510B (zh) * 2013-04-23 2016-12-28 小米科技有限责任公司 一种进行系统复制和还原的方法和装置
US20140380242A1 (en) * 2013-06-24 2014-12-25 International Business Machines Corporation Displaying data protection levels
US9391865B1 (en) * 2013-09-20 2016-07-12 Veritas Technologies Llc Systems and methods for facilitating fault-tolerant backup jobs
US9268836B2 (en) * 2013-11-14 2016-02-23 Vmware, Inc. Intelligent data propagation in a highly distributed environment
US9230001B2 (en) 2013-11-14 2016-01-05 Vmware, Inc. Intelligent data propagation using performance monitoring
CN104714858A (zh) * 2013-12-13 2015-06-17 中国移动通信集团公司 数据备份方法及装置、数据恢复方法及装置
CN104753987B (zh) * 2013-12-26 2019-03-01 北京东方通科技股份有限公司 一种分布式会话管理方法及系统
US10992747B2 (en) 2014-02-27 2021-04-27 Clevx, Llc Data storage system with removable device and method of operation thereof
US9612912B2 (en) 2014-03-10 2017-04-04 Oracle International Corporation Centralized tape management for databases
US9645766B1 (en) * 2014-03-28 2017-05-09 EMC IP Holding Company LLC Tape emulation alternate data path
CN105095245B (zh) * 2014-05-04 2019-10-18 阿里巴巴集团控股有限公司 基于关联型数据库的归档日志同步方法及系统
US20160098162A1 (en) * 2014-10-06 2016-04-07 Lenovo (Singapore) Pte. Ltd. Pen based locking mechanism
US9898213B2 (en) 2015-01-23 2018-02-20 Commvault Systems, Inc. Scalable auxiliary copy processing using media agent resources
US9904481B2 (en) 2015-01-23 2018-02-27 Commvault Systems, Inc. Scalable auxiliary copy processing in a storage management system using media agent resources
CN104881334B (zh) * 2015-02-06 2018-04-10 北京华胜天成软件技术有限公司 缓存数据的防掉电保护方法及系统
US10248512B2 (en) 2015-05-19 2019-04-02 International Business Machines Corporation Intelligent data protection system scheduling of open files
US9703646B2 (en) * 2015-07-20 2017-07-11 Bank Of America Corporation Centralized database system
US10157103B2 (en) 2015-10-20 2018-12-18 Veeam Software Ag Efficient processing of file system objects for image level backups
US10069909B1 (en) * 2015-12-18 2018-09-04 EMC IP Holding Company LLC Dynamic parallel save streams for block level backups
US10305962B1 (en) 2015-12-30 2019-05-28 EMC IP Holding Company LLC Unit testing clients of web services
US10430293B1 (en) * 2015-12-30 2019-10-01 EMC IP Holding Company LLC Backup client agent
US10452490B2 (en) * 2016-03-09 2019-10-22 Commvault Systems, Inc. Data management and backup of distributed storage environment
US10733591B2 (en) 2016-10-11 2020-08-04 International Business Machines Corporation Tiered model for event-based serverless computing
US11010261B2 (en) 2017-03-31 2021-05-18 Commvault Systems, Inc. Dynamically allocating streams during restoration of data
US10649861B1 (en) * 2017-08-02 2020-05-12 EMC IP Holding Company LLC Operational recovery of serverless applications in a cloud-based compute services platform
WO2019030698A1 (en) * 2017-08-08 2019-02-14 Perry + Currier Inc. METHOD, SYSTEM AND APPARATUS FOR PROCESSING DATABASE UPDATES
US11297369B2 (en) 2018-03-30 2022-04-05 Apple Inc. Remotely controlling playback devices
US10783929B2 (en) 2018-03-30 2020-09-22 Apple Inc. Managing playback groups
US10993274B2 (en) 2018-03-30 2021-04-27 Apple Inc. Pairing devices by proxy
US10592136B2 (en) * 2018-06-29 2020-03-17 EMC IP Holding Company LLC Block based striped backups
US10614857B2 (en) 2018-07-02 2020-04-07 Apple Inc. Calibrating media playback channels for synchronized presentation
US10942814B2 (en) * 2018-07-31 2021-03-09 EMC IP Holding Company LLC Method for discovering database backups for a centralized backup system
US10705921B2 (en) * 2018-07-31 2020-07-07 EMC IP Holding Company LLC Client data driven smart backup scheduler
US10765952B2 (en) 2018-09-21 2020-09-08 Sony Interactive Entertainment LLC System-level multiplayer matchmaking
US10695671B2 (en) 2018-09-28 2020-06-30 Sony Interactive Entertainment LLC Establishing and managing multiplayer sessions
CN109951319B (zh) * 2019-02-22 2020-11-13 北京深思数盾科技股份有限公司 备份加密机管理员锁的方法和加密机设备
CN110471794A (zh) * 2019-07-23 2019-11-19 深圳康佳电子科技有限公司 支持数据备份的网络存储方法、系统及存储介质
CN110659162B (zh) * 2019-09-27 2022-10-25 厦门市美亚柏科信息股份有限公司 一种tpsfs文件系统的数据恢复方法、装置、系统及存储介质
CN112684974B (zh) * 2019-10-18 2024-04-16 伊姆西Ip控股有限责任公司 用于作业管理的方法、设备和计算机程序产品
CN111737059A (zh) * 2020-07-02 2020-10-02 中国工商银行股份有限公司 数据备份方法、装置、电子设备和介质
CN111831483A (zh) * 2020-07-20 2020-10-27 北京百度网讯科技有限公司 备份管理方法、系统、电子设备以及介质
US11593223B1 (en) 2021-09-02 2023-02-28 Commvault Systems, Inc. Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants

Family Cites Families (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4644496A (en) 1983-01-11 1987-02-17 Iowa State University Research Foundation, Inc. Apparatus, methods, and systems for computer information transfer
US4697266A (en) 1983-03-14 1987-09-29 Unisys Corp. Asynchronous checkpointing system for error recovery
US4774658A (en) 1987-02-12 1988-09-27 Thomas Lewin Standardized alarm notification transmission alternative system
US5133065A (en) * 1989-07-27 1992-07-21 Personal Computer Peripherals Corporation Backup computer program for networks
JPH0827755B2 (ja) * 1991-02-15 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション データの単位を高速度でアクセスする方法
JP2533266B2 (ja) * 1991-06-14 1996-09-11 インターナショナル・ビジネス・マシーンズ・コーポレイション 共用デ―タシステムにおけるデ―タ資源のロッキング方法及びシステム間のデ―タロック管理方法
US5408653A (en) * 1992-04-15 1995-04-18 International Business Machines Corporation Efficient data base access using a shared electronic store in a multi-system environment with shared disks
JPH0827754B2 (ja) * 1992-05-21 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムにおけるファイル管理方法及びファイル管理システム
US5408644A (en) 1992-06-05 1995-04-18 Compaq Computer Corporation Method and apparatus for improving the performance of partial stripe operations in a disk array subsystem
JP3360905B2 (ja) 1993-01-04 2003-01-07 ゼロックス・コーポレーション プリンティングシステム
US5615373A (en) 1993-08-26 1997-03-25 International Business Machines Corporation Data lock management in a distributed file server system determines variable lock lifetime in response to request to access data object
US6256704B1 (en) 1993-09-16 2001-07-03 International Business Machines Corporation Task management for data accesses to multiple logical partitions on physical disk drives in computer systems
US5515502A (en) * 1993-09-30 1996-05-07 Sybase, Inc. Data backup system with methods for stripe affinity backup to multiple archive devices
US5943495A (en) * 1993-10-20 1999-08-24 Mci Communication Corp. Copy utility method and apparatus for non-stop database applications
WO1995013580A1 (en) * 1993-11-09 1995-05-18 Arcada Software Data backup and restore system for a computer network
JPH07219885A (ja) 1994-02-04 1995-08-18 Canon Inc 情報処理システム及び電子機器及び制御方法
US5889896A (en) 1994-02-09 1999-03-30 Meshinsky; John System for performing multiple processes on images of scanned documents
US5537585A (en) * 1994-02-25 1996-07-16 Avail Systems Corporation Data storage management for network interconnected processors
US5835953A (en) * 1994-10-13 1998-11-10 Vinca Corporation Backup system that takes a snapshot of the locations in a mass storage device that has been identified for updating prior to updating
US5901331A (en) * 1995-01-31 1999-05-04 Sep Elektronik Gmbh Method for continuous data safeguarding on a magnetic tape and data restoring therefrom
US5621885A (en) 1995-06-07 1997-04-15 Tandem Computers, Incorporated System and method for providing a fault tolerant computer program runtime support environment
US5907672A (en) * 1995-10-04 1999-05-25 Stac, Inc. System for backing up computer disk volumes with error remapping of flawed memory addresses
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US5829046A (en) * 1995-10-27 1998-10-27 Emc Corporation On-line tape backup using an integrated cached disk array
US5742818A (en) * 1995-12-15 1998-04-21 Microsoft Corporation Method and system of converting data from a source file system to a target file system
US5870542A (en) 1995-12-28 1999-02-09 Sterling Commerce, Inc. Security apparatus and method for a data processing system
US5950218A (en) 1996-11-04 1999-09-07 Storage Technology Corporation Method and system for storage and retrieval of data on a tape medium
US6208999B1 (en) * 1996-12-12 2001-03-27 Network Associates, Inc. Recoverable computer file system with a signature area containing file integrity information located in the storage blocks
US6154817A (en) * 1996-12-16 2000-11-28 Cheyenne Software International Sales Corp. Device and method for managing storage media
US6081875A (en) * 1997-05-19 2000-06-27 Emc Corporation Apparatus and method for backup of a disk storage system
EP0899622A2 (en) 1997-08-27 1999-03-03 Xerox Corporation Development apparatus having adjustable ac frequency
WO1999012098A1 (en) * 1997-08-29 1999-03-11 Hewlett-Packard Company Data backup and recovery systems
EP0899662A1 (en) * 1997-08-29 1999-03-03 Hewlett-Packard Company Backup and restore system for a computer network
JP3320342B2 (ja) 1997-09-12 2002-09-03 インターナショナル・ビジネス・マシーンズ・コーポレーション 印刷をプリンタ・システムに実行させる方法、印刷実行方法、コンピュータ、及びプリンタ・システム
US5848410A (en) * 1997-10-08 1998-12-08 Hewlett Packard Company System and method for selective and continuous index generation
US6199074B1 (en) * 1997-10-09 2001-03-06 International Business Machines Corporation Database backup system ensuring consistency between primary and mirrored backup database copies despite backup interruption
US7581077B2 (en) * 1997-10-30 2009-08-25 Commvault Systems, Inc. Method and system for transferring data in a storage operation
US6061770A (en) * 1997-11-04 2000-05-09 Adaptec, Inc. System and method for real-time data backup using snapshot copying with selective compaction of backup data
US6088697A (en) * 1997-12-18 2000-07-11 International Business Machines Corporation Dynamic change management in an extended remote copy operation
US6173293B1 (en) * 1998-03-13 2001-01-09 Digital Equipment Corporation Scalable distributed file system
US6182226B1 (en) * 1998-03-18 2001-01-30 Secure Computing Corporation System and method for controlling interactions between networks
US6088694A (en) * 1998-03-31 2000-07-11 International Business Machines Corporation Continuous availability and efficient backup for externally referenced objects
US6480876B2 (en) 1998-05-28 2002-11-12 Compaq Information Technologies Group, L.P. System for integrating task and data parallelism in dynamic applications
US6611895B1 (en) 1998-06-08 2003-08-26 Nicholas J. Krull High bandwidth cache system
US6279011B1 (en) * 1998-06-19 2001-08-21 Network Appliance, Inc. Backup and restore for heterogeneous file server environment
US6366986B1 (en) * 1998-06-30 2002-04-02 Emc Corporation Method and apparatus for differential backup in a computer storage system
US6973455B1 (en) * 1999-03-03 2005-12-06 Emc Corporation File server system providing direct data sharing between clients with a server acting as an arbiter and coordinator
US6260124B1 (en) * 1998-08-13 2001-07-10 International Business Machines Corporation System and method for dynamically resynchronizing backup data
US6353878B1 (en) * 1998-08-13 2002-03-05 Emc Corporation Remote control of backup media in a secondary storage subsystem through access to a primary storage subsystem
US6269431B1 (en) * 1998-08-13 2001-07-31 Emc Corporation Virtual storage and block level direct access of secondary storage for recovery of backup data
US6341302B1 (en) 1998-09-24 2002-01-22 Compaq Information Technologies Group, Lp Efficient inter-task queue protocol
JP4094752B2 (ja) 1998-11-27 2008-06-04 株式会社日立製作所 トランザクション処理方法及びその実施装置並びにその処理プログラムを記録した媒体
US6401110B1 (en) * 1998-11-30 2002-06-04 International Business Machines Corporation Method for managing concurrent processes using dual locking
US6487561B1 (en) * 1998-12-31 2002-11-26 Emc Corporation Apparatus and methods for copying, backing up, and restoring data using a backup segment size larger than the storage block size
US6385706B1 (en) * 1998-12-31 2002-05-07 Emx Corporation Apparatus and methods for copying a logical object to a primary storage device using a map of storage locations
US6400730B1 (en) * 1999-03-10 2002-06-04 Nishan Systems, Inc. Method and apparatus for transferring data between IP network devices and SCSI and fibre channel devices over an IP network
US6741980B1 (en) 1999-03-23 2004-05-25 Microstrategy Inc. System and method for automatic, real-time delivery of personalized informational and transactional data to users via content delivery device
US6938057B2 (en) * 1999-05-21 2005-08-30 International Business Machines Corporation Method and apparatus for networked backup storage
US6721713B1 (en) 1999-05-27 2004-04-13 Andersen Consulting Llp Business alliance identification in a web architecture framework
DE60043873D1 (de) * 1999-06-01 2010-04-08 Hitachi Ltd Verfahren zur Datensicherung
JP3853540B2 (ja) 1999-06-30 2006-12-06 日本電気株式会社 ファイバチャネル接続磁気ディスク装置およびファイバチャネル接続磁気ディスク制御装置
US6845395B1 (en) * 1999-06-30 2005-01-18 Emc Corporation Method and apparatus for identifying network devices on a storage network
US6446175B1 (en) * 1999-07-28 2002-09-03 Storage Technology Corporation Storing and retrieving data on tape backup system located at remote storage system site
US7289964B1 (en) 1999-08-31 2007-10-30 Accenture Llp System and method for transaction services patterns in a netcentric environment
US6760324B1 (en) 1999-09-10 2004-07-06 Array Telecom Corporation Method, system, and computer program product for providing voice over the internet communication
US6343324B1 (en) 1999-09-13 2002-01-29 International Business Machines Corporation Method and system for controlling access share storage devices in a network environment by configuring host-to-volume mapping data structures in the controller memory for granting and denying access to the devices
US6574749B1 (en) 1999-10-29 2003-06-03 Nortel Networks Limited Reliable distributed shared memory
US6714952B2 (en) 1999-11-10 2004-03-30 Emc Corporation Method for backup and restore of a multi-lingual network file server
TW454120B (en) * 1999-11-11 2001-09-11 Miralink Corp Flexible remote data mirroring
US6848007B1 (en) 1999-11-12 2005-01-25 Crossroads Systems, Inc. System for mapping addresses of SCSI devices between plurality of SANs that can dynamically map SCSI device addresses across a SAN extender
US6549992B1 (en) 1999-12-02 2003-04-15 Emc Corporation Computer data storage backup with tape overflow control of disk caching of backup data stream
US6341341B1 (en) * 1999-12-16 2002-01-22 Adaptec, Inc. System and method for disk control with snapshot feature including read-write snapshot half
US6651074B1 (en) 1999-12-20 2003-11-18 Emc Corporation Method and apparatus for storage and retrieval of very large databases using a direct pipe
US6584582B1 (en) 2000-01-14 2003-06-24 Sun Microsystems, Inc. Method of file system recovery logging
US6662195B1 (en) 2000-01-21 2003-12-09 Microstrategy, Inc. System and method for information warehousing supporting the automatic, real-time delivery of personalized informational and transactional data to users via content delivery device
US7181417B1 (en) 2000-01-21 2007-02-20 Microstrategy, Inc. System and method for revenue generation in an automatic, real-time delivery of personalized informational and transactional data
US6460113B1 (en) * 2000-01-25 2002-10-01 Dell Products L.P. System and method for performing backup operations using a fibre channel fabric in a multi-computer environment
US6920454B1 (en) * 2000-01-28 2005-07-19 Oracle International Corporation Techniques for DLM optimization with transferring lock information
US7051173B2 (en) * 2000-02-04 2006-05-23 Fujitsu Limited Backup system and method thereof in disk shared file system
US6880005B1 (en) 2000-03-31 2005-04-12 Intel Corporation Managing policy rules in a network
US6490659B1 (en) 2000-03-31 2002-12-03 International Business Machines Corporation Warm start cache recovery in a dual active controller with cache coherency using stripe locks for implied storage volume reservations
US7058798B1 (en) 2000-04-11 2006-06-06 Sun Microsystems, Inc. Method ans system for pro-active credential refreshing
US6892221B2 (en) * 2000-05-19 2005-05-10 Centerbeam Data backup
US6971016B1 (en) 2000-05-31 2005-11-29 International Business Machines Corporation Authenticated access to storage area network
US20020034606A1 (en) 2000-06-05 2002-03-21 Miller Scott C. Low weight cushioned carpet, carpet tile and method
US7031986B2 (en) * 2000-06-27 2006-04-18 Fujitsu Limited Database system with backup and recovery mechanisms
US6950871B1 (en) 2000-06-29 2005-09-27 Hitachi, Ltd. Computer system having a storage area network and method of handling data in the computer system
US7185192B1 (en) * 2000-07-07 2007-02-27 Emc Corporation Methods and apparatus for controlling access to a resource
US6671820B1 (en) * 2000-08-10 2003-12-30 Dell Products, L.P. System and method for the prevention of corruption of networked storage devices during backup data recovery
US6738923B1 (en) * 2000-09-07 2004-05-18 International Business Machines Corporation Network station adjustable fail-over time intervals for booting to backup servers when transport service is not available
US6977927B1 (en) 2000-09-18 2005-12-20 Hewlett-Packard Development Company, L.P. Method and system of allocating storage resources in a storage area network
US7072057B1 (en) 2000-10-10 2006-07-04 Nexpress Digital Llc System and method for interfacing with a production scanner
US6721902B1 (en) 2000-10-12 2004-04-13 Hewlett-Packard Development Company, L.P. Method and system for providing LUN-based backup reliability via LUN-based locking
US7689560B2 (en) 2000-10-13 2010-03-30 Miosoft Corporation Persistent data storage techniques
US7587428B2 (en) 2000-10-13 2009-09-08 Microsoft Corporation Maintaining a relationship between two different items of data
US20020078117A1 (en) 2000-12-19 2002-06-20 Wang Baldonado Michelle Q. System for creating efficient multi-step document conversion services
US6799258B1 (en) 2001-01-10 2004-09-28 Datacore Software Corporation Methods and apparatus for point-in-time volumes
US7146432B2 (en) * 2001-01-17 2006-12-05 International Business Machines Corporation Methods, systems and computer program products for providing failure recovery of network secure communications in a cluster computing environment
US6968463B2 (en) 2001-01-17 2005-11-22 Hewlett-Packard Development Company, L.P. System for controlling access to resources in a storage area network
US6704886B1 (en) * 2001-01-25 2004-03-09 Emc Corporation Data backup system having independent data restore execution
US20020161846A1 (en) 2001-01-29 2002-10-31 Ulrich Thomas R. Data path controller architecture
JP3758154B2 (ja) 2001-02-20 2006-03-22 セイコーエプソン株式会社 マルチファンクションプリンタ
US20020161784A1 (en) * 2001-02-28 2002-10-31 Tarenskeen Herbert J. Method and apparatus to migrate using concurrent archive and restore
US7154621B2 (en) 2001-03-20 2006-12-26 Lightsurf Technologies, Inc. Internet delivery of digitized photographs
US6691109B2 (en) 2001-03-22 2004-02-10 Turbo Worx, Inc. Method and apparatus for high-performance sequence comparison
US6587921B2 (en) 2001-05-07 2003-07-01 International Business Machines Corporation Method and apparatus for cache synchronization in a clustered environment
US6976039B2 (en) * 2001-05-25 2005-12-13 International Business Machines Corporation Method and system for processing backup data associated with application, querying metadata files describing files accessed by the application
US20020188697A1 (en) 2001-06-08 2002-12-12 O'connor Michael A. A method of allocating storage in a storage area network
US6728848B2 (en) * 2001-06-11 2004-04-27 Hitachi, Ltd. Method and system for backing up storage system data
US20040172631A1 (en) 2001-06-20 2004-09-02 Howard James E Concurrent-multitasking processor
IL159582A0 (en) 2001-07-06 2004-06-01 Computer Ass Think Inc Systems and methods of information backup
US6721851B2 (en) * 2001-08-07 2004-04-13 Veritas Operating Corporation System and method for preventing sector slipping in a storage area network
US20030126225A1 (en) * 2001-12-28 2003-07-03 Camble Peter Thomas System and method for peripheral device virtual functionality overlay
US6796039B2 (en) * 2002-01-23 2004-09-28 Kirt L. Walbrink Archery sight
US6985914B2 (en) * 2002-02-20 2006-01-10 Emc Corporation Cluster meta file system of file system cells managed by respective data movers of a network file server
US6862668B2 (en) 2002-02-25 2005-03-01 International Business Machines Corporation Method and apparatus for using cache coherency locking to facilitate on-line volume expansion in a multi-controller storage system
US7054173B2 (en) * 2003-05-07 2006-05-30 Toshiba International Corporation Circuit with DC filter having a link fuse serially connected between a pair of capacitors
JP4429634B2 (ja) * 2003-06-02 2010-03-10 株式会社日立製作所 ストレージシステム、及びストレージシステムの制御方法

Also Published As

Publication number Publication date
CA2453073A1 (en) 2003-01-16
EP1405188B1 (en) 2016-04-20
JP2005521113A (ja) 2005-07-14
EP1415425B1 (en) 2019-06-26
IL159444A0 (en) 2004-06-01
US20100132022A1 (en) 2010-05-27
WO2003005625A3 (en) 2003-05-30
WO2003005158A9 (en) 2004-05-06
KR20040010838A (ko) 2004-01-31
WO2003005158A2 (en) 2003-01-16
WO2003005245A2 (en) 2003-01-16
KR20040010837A (ko) 2004-01-31
EP1405152B1 (en) 2016-04-27
US7552214B2 (en) 2009-06-23
US8370450B2 (en) 2013-02-05
EP1405152A2 (en) 2004-04-07
JP2005521112A (ja) 2005-07-14
JP2005521110A (ja) 2005-07-14
US9002910B2 (en) 2015-04-07
IL159381A0 (en) 2004-06-01
US7389292B2 (en) 2008-06-17
WO2003005247A2 (en) 2003-01-16
CA2453070A1 (en) 2003-01-16
WO2003005158A3 (en) 2003-12-04
WO2003005625A2 (en) 2003-01-16
CN1524223A (zh) 2004-08-25
CN1524224A (zh) 2004-08-25
EP1405188A2 (en) 2004-04-07
JP2005521114A (ja) 2005-07-14
CN1524221A (zh) 2004-08-25
EP1405189B1 (en) 2016-05-04
KR20040013113A (ko) 2004-02-11
US20050055444A1 (en) 2005-03-10
US20050038836A1 (en) 2005-02-17
CA2453082A1 (en) 2003-01-16
EP1405189A2 (en) 2004-04-07
IL159587A0 (en) 2004-06-01
WO2003005247A3 (en) 2003-08-07
WO2003005245A3 (en) 2003-11-13
US20050172093A1 (en) 2005-08-04
US20050165868A1 (en) 2005-07-28
CA2452866A1 (en) 2003-01-16
US7734594B2 (en) 2010-06-08
IL159582A0 (en) 2004-06-01
CN1524222A (zh) 2004-08-25
EP1415425A2 (en) 2004-05-06

Similar Documents

Publication Publication Date Title
EP1405152B1 (en) Systems and methods of information backup
US7406473B1 (en) Distributed file system using disk servers, lock servers and file servers
US7647327B2 (en) Method and system for implementing storage strategies of a file autonomously of a user
US7949635B1 (en) Backup server architecture
US20080208926A1 (en) Data management in a data storage system using data sets
US7487310B1 (en) Rotation policy for SAN copy sessions of ISB protocol systems
EP2126701A1 (en) Data management in a data storage system using data sets
AU2002327188A1 (en) Systems and methods of information backup
AU2002316525A1 (en) Systems and methods of information backup
AU2002346066A1 (en) Systems and methods of information backup
AU2002318181A1 (en) Systems and methods of information backup
Leins et al. Using Tivoli Storage Manager in a SAN Environment

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid