KR20050009696A - 재난 복구 방법 및 시스템 - Google Patents

재난 복구 방법 및 시스템 Download PDF

Info

Publication number
KR20050009696A
KR20050009696A KR10-2004-7016829A KR20047016829A KR20050009696A KR 20050009696 A KR20050009696 A KR 20050009696A KR 20047016829 A KR20047016829 A KR 20047016829A KR 20050009696 A KR20050009696 A KR 20050009696A
Authority
KR
South Korea
Prior art keywords
database
information
incremental
backup
folder
Prior art date
Application number
KR10-2004-7016829A
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
Priority claimed from PCT/US2003/011204 external-priority patent/WO2003101704A1/en
Application filed by 컴퓨터 어소시에이츠 싱크, 인코포레이티드 filed Critical 컴퓨터 어소시에이츠 싱크, 인코포레이티드
Publication of KR20050009696A publication Critical patent/KR20050009696A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/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/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/80Database-specific techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Alarm Systems (AREA)
  • Hardware Redundancy (AREA)

Abstract

재난 복구 방법은 백업 정보로서 제 1 데이터베이스로부터의 적어도 일부 정보를 백업 시스템으로 복사하는 과정을 포함한다. 본 방법은 또한 점증적 변경 사항을 제 2 데이터베이스에 저장하는 과정을 포함한다. 점증적 변경 사항은 제 1 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타낸다. 본 방법은 또한 백업 정보와 점증적 변경 사항 중 적어도 하나를 이용하여 제 1 데이터베이스를 복구하는 과정을 포함한다.

Description

재난 복구 방법 및 시스템{METHOD AND SYSTEM FOR DISASTER RECOVERY}
재난 복구 시스템은 일반적으로 데이터 손실을 방지하기 위해서 컴퓨터 파일을 백업해 둔다. 통상적 재난 복구 시스템에 있어서는, 파일이 테입이나 기타 백업 시스템으로 주기적으로 복사된다. 일반적으로 이와 같은 작업은 설정된 시간 주기 동안, 예컨대 일이 끝난 후 밤이나 주말 동안에 발생한다. 컴퓨터 시스템이 고장난 경우, 재난 복구 시스템은 최신 백업을 이용하여 그 컴퓨터 시스템을 복구시킬 수 있다. 이는 일반적으로 백업 시스템으로부터의 파일을 컴퓨터 시스템으로 복사함으로써 이루어진다.
통상적 재난 복구 시스템에 있어서의 문제점은 컴퓨터 시스템이 최종 백업시 존재했던 상태로만 복구될 수 있다는 점이다. 통상적으로, 최종 백업 이후에 발생했던 모든 변화가 손실된다.
본 발명은 전반적으로는 컴퓨팅 시스템 분야에 관한 것이며, 보다 구체적으로는 재난 복구용 시스템 및 방법에 관한 것이다.
본 발명을 보다 자세히 설명하기 위하여, 다음의 상세한 설명에서는 첨부 도면에 관한 참조가 이루어진다.
도 1은 본 발명의 일 실시예에 따르는 재난 복구 시스템을 도시한 예시적 블록도,
도 2a 및 도 2b는 본 발명의 일 실시예에 따르는 1차(primary) 및 2차(secondary) 데이터베이스를 도시한 예시적 블록도,
도 3은 본 발명의 일 실시예에 따르는 재난 복구 아키텍처 일부를 도시한 예시적 블록도,
도 4는 본 발명의 일 실시예에 따르는 재난 복구 방법을 나타내는 예시적 흐름도,
도 5는 본 발명의 일 실시예에 따르는 1차 서버에서의 파일 백업을 위한 방법을 나타내는 예시적 흐름도,
도 6은 본 발명의 일 실시예에 따르는 2차 서버에서의 파일 백업을 위한 방법을 나타내는 예시적 흐름도,
도 7은 본 발명의 일 실시예에 따르는 2차 서버에서의 파일 복구를 위한 방법을 나타내는 예시적 흐름도,
도 8은 본 발명의 일 실시예에 따르는 1차 서버에서의 파일 복구를 위한 방법을 나타내는 예시적 흐름도.
본 발명은 종래의 시스템 및 방법에 관한 문제점 및 단점들을 실질적으로 줄이거나 제거하도록 하는 재난 복구를 위한 개선된 방법 및 시스템을 제공한다. 특히, 데이터베이스에 대한 점증적 변경 사항(incremental changes)이, 데이터베이스 풀 백업(full backup)을 수행함에 더하여, 점증적 백업(incremental backup)을 수행함으로써 기록되고 저장될 수 있다. 데이터베이스는 그 풀 백업, 하나 이상의 점증적 백업, 및/또는 현재의 비기록형(unarchived) 점증적 변경 사항을 이용하여 복구될 수 있다.
일 실시예에서, 재난 복구를 위한 방법은 제 1 데이터베이스로부터 적어도 일부의 정보를 백업 정보로서 백업 시스템으로 복사하는 단계를 포함한다. 이 방법은 또한 제 2 데이터베이스에 점증적 변경 사항을 저장하는 단계를 포함한다. 그 점증적 변경 사항이란 제 1 데이터베이스에서 발생한 적어도 일부의 정보에 대한 변경 사항을 나타낸다. 본 방법은 또한 백업 정보와 그 점증적 변경 사항 중 적어도 하나를 이용하여 제 1 데이터베이스를 복구하는 단계를 포함한다.
구체적 실시예에서, 본 방법은 제 2 데이터베이스로부터의 제 2 점증적 변경 사항을 백업 시스템에 복사하는 단계를 더 포함한다. 이러한 실시예에서는, 제 1 데이터베이스를 복구하는 단계가 백업 정보, 제 2 데이터베이스에 저장된 점증적 변경 사항, 및 그 백업 시스템에 저장된 제 2 점증적 변경 사항 중 적어도 하나를 이용하는 단계를 포함한다.
도 1은 본 발명의 일 실시예에 따른 재난 복구 시스템(100)을 도시한 예시적 블록도이다. 도시된 실시예에서, 시스템(100)은 1차 서버(primary server)(102)와, 2차 서버(secondary server)(104)와, 네트워크(106)와, 하나 이상의 클라이언트(108)를 포함한다. 시스템(100)과 다른 실시예도 본 발명의 범위를 벗어나지 않는 범위에서 이용될 수 있다.
동작의 측면에서, 1차 데이터베이스(110)는 1차 서버(102)가 이용하는 정보를 저장한다. 데이터베이스(110)는, 예컨대, 클라이언트(108)에게 온라인 웹 서비스를 제공하고자, 1차 서버(102)가 이용하는 정보를 저장할 수 있다. 데이터베이스(110)는 또한, 운영체제가 이용하는 구성 정보 등의 레지스트리 정보를 저장할 수도 있다. 데이터베이스(110)에서의 정보는 시간 경과에 따라 변화하여, 예컨대, 클라이언트에 의하여 정보가 추가되거나 변경되거나 삭제될 수 있다. 1차 서버(102)에서의 데이터베이스(110)는, 하드웨어 결함이나 전원 결함이 발생할 경우 등에 고장이 나거나 작동이 불가능하게 될 수 있다.
1차 데이터베이스(110)가 다시 작동 가능한 상태가 된 다음, 데이터베이스(110)의 정보가 복구될 필요가 있을 수 있다. 구체적 예로서, 데이터베이스(110)는 그 고장 이후의 정보를 손실할 수 있으며, 데이터베이스(110)가 다시 서비스에 들어가기 이전에 그와 같은 정보가 데이터베이스(110)로 복사될 필요가 있을 수 있다. 일 실시예에서는, 1차 데이터베이스(110)에 저장된 적어도 일부의 정보가 백업 시스템(112)에 정기적으로 기록되거나 복사될 수 있다. 데이터베이스(110) 내의 정보에 변경 사항이 발생하면, 그 변경 사항이 2차 데이터베이스(114)에 저장될 수 있다. 2차 데이터베이스(114)에서의 변경 사항은 백업 시스템(112)에 정기적으로 기록될 수도 있고 아닐 수도 있다. 그런 다음 1차 데이터베이스(110)가 백업 시스템(112) 및/또는 2차 데이터베이스(114)에서의 정보를 이용하여 복구될 수 있다.
1차 서버(102)는 네트워크(106)로 연결되어 있다. 본 명세서에서, "연결"이라는 용어는 구성 소자들이 다른 구성 소자와 물리적으로 접촉하고 있는지 여부를 불문하고 둘 이상의 구성 소자 사이에 직접적이든 간접적이든 임의의 정보 전달이 이루어짐을 의미한다. 또한, "전달(communication)"이라는 용어는 물리적으로 떨어져 있는 구성 소자들 간 또는 단일의 물리적 유닛 내부의 구성 소자들 간 정보 전달을 의미할 수 있다. 1차 서버(102)는 시스템(100)에 있어서 하나 이상의 다양한 기능을 수행하도록 작동 가능하다. 1차 서버는, 예컨대, 네트워크(106)를 통하여 클라이언트(108)에게 온라인 웹서비스를 제공하도록 작동 가능한 웹 서버를 나타낼 수 있다. 1차 서버(102)는 또한 어느 조직의 종업원들에 의해서 이용되는 정보를 저장하도록 작동 가능한 데이터베이스 서버를 나타낼 수 있다. 본 발명의 범위를 벗어나지 않는 범위에서 1차 서버(102)는 시스템(100)에 있어서 임의의 다른 기능 및/또는 추가적 기능을 수행할 수 있다. 1차 서버(102)는 시스템(100)에 있어서 적어도 하나의 기능을 수행하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 포함할 수 있다. 예시된 실시예에서, 1차 서버(102)는 클라이언트(108)가 이용하는 정보를 저장하도록 작동 가능한 데이터베이스(110)를 포함한다. 1차 서버(102)에 관한 또 다른 실시예가 본 발명의 범위를 벗어나지 않고서 이용될 수 있다.
2차 서버(104)는 네트워크(106)에 연결되어 있다. 2차 서버(104)는 시스템(100)이 재난 복구 동작을 수행하고자 이용하는 정보를 저장한다. 예컨대, 2차 서버(104)는 1차 서버(102)의 데이터베이스(110)를 복구하는데 이용되는 정보를 저장할 수 있다. 본 명세서에서, "복구"라는 용어는 데이터베이스에 저장된 정보를 이전의 상태로 되돌리는 것을 말한다. 이전의 상태는, 예컨대 데이터베이스(110) 고장 시점이나 또는 그 근접한 시점에 존재하던 상태일 수 있다. 이전의 상태는 또한 데이터베이스(110)의 고장 이전의 시점에 존재하던 상태일 수도 있다. 일 실시예에서, 2차 서버(104)는 1차 서버(102)의 데이터베이스(110) 내의 정보에 관한 풀 백업을 저장할 수 있다. 2차 서버(104)는 또한 데이터베이스(110) 내의 정보에 발생한 변경 사항을 저장할 수 있다. 데이터베이스(110)가 고장이 나고 다시 작동 가능하게 된 다음, 2차 서버(104)는 1차 서버(102)에 대해 백업 정보와 그 점증적 변경 사항을 전달할 수 있고, 그 1차 서버(102)가 그 정보를 이용하여 데이터베이스(110)를 복구할 수 있다. 2차 서버(104)는 적어도 하나의 1차 데이터베이스(110)를 복구하는데 이용되는 정보를 저장하고 그 정보에 관한 검색을 지원하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 포함할 수 있다. 예시된 실시예에서, 2차 서버(104)는 백업 시스템(112) 및 2차 데이터베이스(114)를 포함한다. 2차 서버(104)에 관한 또 다른 실시예가 본 발명의 범위를 벗어나지 않는 범위에서 이용될 수도 있다.
네트워크(106)는 1차 서버(102), 2차 서버(104), 그리고 클라이언트(108)에 연결되어 있다. 네트워크(106)는 시스템(100)의 구성 소자들 간 정도 전달을 지원한다. 네트워크(106)는 네트워크 어드레스들 사이에서 임의의 적합한 포맷으로써, 예컨대, IP(Internet Protocol) 패킷, 프레임 릴레이 프레임(frame relay frames), ATM(Asynchronous Transfer Mode) 셀, 및/또는 임의의 기타 적합한 정보를 주고 받을 수 있다. 네트워크(106)는 LAN, MAN(metropolitan area network) WAN, 인터넷이라고 알려진 세계적 컴퓨터 네트워크 전체 또는 그 일부, 및/또는 하나 이상의 위치에서의 임의의 기타 통신 시스템(들)을 하나 이상 포함할 수 있다.
클라이언트(108)가 네트워크(106)에 연결되어 있다. 클라이언트(108)는 1차 서버(102)의 데이터베이스(110)에 포함된 정보에 대해 사용자가 접근 및/또는 변경을 가할 수 있도록 작동 가능하다. 예컨대, 클라이언트(108)는 네트워크(106)를 통하여 1차 서버(102)에 대해서 데이터베이스 질의, 예컨대 데이터베이스(110)로부터 지정된 정보를 검출하고자 하는 요청 등을 제출할 수 있다. 클라이언트(108)는 또한 1차 서버(102)에 대하여 데이터베이스(110)에 포함되는 정보를 추가하거나, 변경하거나, 삭제하도록 지시하는 1차 서버(102)에 대한 명령을 제출할 수도 있다. 클라이언트(108)는 네트워크(106)를 통하여 정보를 주고 받으며 그리고/또는 정보를 검색하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 포함할 수 있다. 클라이언트(108)는, 예컨대, 웹 브라우저를 실행하는 데스크탑 컴퓨터를 포함할 수 있다.
1차 데이터베이스(110)는 시스템(100) 내에서 하나 이상의 기능을 수행하기 위하여 1차 서버(102)가 이용하는 정보를 저장하도록 작동 가능하다. 본 명세서에서, "데이터베이스"라는 용어는 정보의 집단(collection)을 말한다. 정보는 문서나 기타 파일, 레지스트리, 파일 및/또는 레지스트리 집단, 그리고/또는 임의의 기타 적합한 구조(들)로 존재할 수 있다. 일 실시예에서, 데이터베이스(110)는 네트워크(106)를 통하여 클라이언트(108)에 대해 웹 서비스를 제공하기 위해서 1차 서버(102)가 이용하는 정보를 저장할 수 있다. 구체적 실시예로서, 데이터베이스(110)는 1차 서버(102)를 이용하는 비즈니스에 있어서 고객의 명칭, 주소, 제품 주문 등을 저장할 수 있다. 데이터베이스(110)는 본 발명의 범위를 벗어나지 않는 범위에서 임의의 기타 정보 및/또는 부가 정보를 저장할 수도 있다. 데이터베이스(110)는 정보를 저장하고 검색을 지원하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 포함할 수 있다. 데이터베이스는 다양한 데이터 구조, 배열(arrangement), 및/또는 편성(compilation)을 이용하여 정보를 저장할 수 있다. 데이터베이스(110)는, 예컨대 DRAM, SRAM, 또는 임의의 기타 적합한 휘발성이나 비휘발성의 저장 및 검색 장치(들)를 포함할 수 있다. 도 1에는 1차 데이터베이스(110)가 1차 서버(102)에 존재하는 것으로 도시되어 있지만, 1차 데이터베이스(110)는 1차 서버(102)가 액세스 가능한 임의의 위치(들)에 존재할 수 있다.
백업 시스템(112)은 1차 데이터베이스(110) 및/또는 2차 데이터베이스(114)로부터의 정보를 저장 또는 기록하도록 작동 가능하다. 예컨대, 백업 시스템(112)은 1차 데이터베이스(110) 내의 정보 전체 또는 그 일부를 수신하여 그 정보를 저장할 수 있다. 구체적 예로서, 백업 시스템(112)은 데이터베이스(110)의 풀 백업(116) 동안 1차 데이터베이스(110)로부터 정보를 수신할 수 있다. 데이터베이스(110)가 고장나고 다시 작동 가능하게 될 경우, 백업 시스템(112)이 1차 서버(102)로 백업 정보를 전달하며, 1차 서버(102)는 그 백업 정보를 이용해서 데이터베이스(110)를 복구할 수 있다. 또한, 일 실시예에서, 백업 시스템(112)은 2차 데이터베이스(114)에 저장된 적어도 일부의 정보를 저장 또는 기록할 수 있다. 2차 데이터베이스(114)로부터의 정보를 백업 시스템(112)에 기록하는 것을 점증적 백업(incremental backup)(120)이라고 부를 수 있다. 백업 시스템(112)은 정보를 저장하고 검색을 지원하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 포함할 수 있다. 예시된 실시예에서, 백업 시스템(112)은 테입 백업 시스템을 포함하고 있다. 백업 시스템(112)의 또 다른 실시예가 본 발명의 범위를 벗어나지 않고서 이용될 수 있다.
2차 데이터베이스(114)는 데이터베이스(110) 내의 정보에 대해 발생한 변경 사항을 식별하게 하는 정보를 저장하도록 작동 가능하다. 일 실시예에서, 2차 데이터베이스(114)는 하나 이상의 점증적 변경 사항(118)을 저장한다. 점증적 변경 사항(118)은 1차 데이터베이스(110) 내의 정보가 그 최종 풀 백업(116) 이후 얼마나 변경되었는지를 보여줄 수 있다. 일 실시예에서, 점증적 변경 사항(118)은 데이터베이스 동작, 예컨대 1차 데이터베이스(110)에 데이터를 기록하거나, 그로부터 데이터를 삭제하거나, 데이터를 변경하는 동작 등에 대응한다. 구체적 실시예에서는, 점증적 변경 사항(118)이 변경된 1차 데이터베이스(110)의 세그먼트를 식별시킬 수 있다. 구체적 실시예로서, 1차 데이터베이스(110) 내의 테이블에 정보가 추가될 경우, 점증적 변경 사항(118)은 그 테이블, 그 테이블에 추가되는 정보, 그리고 그 정보가 그 테이블 내의 어디에 추가되는지를 식별시킬 수 있다. 1차 데이터베이스(110) 내의 테이블에서 정보가 삭제될 경우, 점증적 변경 사항(118)은 그 테이블과 그 테이블에서 어떤 정보가 삭제되었는지를 식별시킬 수 있다. 1차 데이터베이스(110) 내의 테이블에서 정보가 변경될 경우, 점증적 변경 사항(118)은 그 테이블과 그 테이블에 포함된 새로 변경된 정보를 식별시킬 수 있다. 본 발명의 범위를 벗어나지 않고서도 또 다른 정보가 점증적 변경 사항(118)에 포함되거나 그리고/또는 2차 데이터베이스(114)에 저장될 수 있다. 본 명세서에서는 점증적 변경 사항(118)이 1차 데이터베이스(110) 내의 파일에 대한 변화를 나타내는 것으로 설명하고 있지만, 점증적 변경 사항(118)이 1차 데이터베이스(110)에 속한 임의의 정보에 대한 변화를 나타낼 수도 있다. 구체적 예로서, 점증적 변경 사항(118)은 1차 데이터베이스(110) 내의 레지스트리에 대하여 이루어진 변경 사항을 나타낼 수도 있다. 2차 데이터베이스(114)는 정보를 저장하고 검색을 지원하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 포함할 수 있다. 2차 데이터베이스(114)는 임의의 다양한 데이터 구조, 배열, 및/또는 편성을 이용하여 정보를 저장할 수 있다. 도 1은 2차 데이터베이스(114)가 2차 서버(104) 내에 존재하는 것으로 도시하고 있지만, 2차 데이터베이스(114)는 2차 서버(104)가 액세스할 수 있는 임의의 위치(들)에 존재할 수 있다.
동작의 측면에서, 시스템(100)은 2차 서버(104)를 이용하여 1차 서버(102) 내의 1차 데이터베이스(104)가 고장났을때 재난 복구를 수행한다. 구체적 실시예에서, 재난 복구 동작은 두 개의 일반적 단계, 즉 백업 단계와 복구 단계를 포함한다. 백업 단계는 1차 데이터베이스(110)로부터의 적어도 일부 정보를 2차 서버(104)로, 백업 시스템(112)으로, 그리고/또는 2차 데이터베이스(114)로 복사하는 과정을 포함한다. 복구 단계는 백업 시스템(112) 및/또는 2차 데이터베이스(114)로부터 적어도 일부 정보를 1차 데이터베이스(110)로 다시 복사하여, 1차 데이터베이스(110)를 이전의 상태로 복구하는 과정을 포함할 수 있다.
일 실시예에서, 재난 복구 동작의 백업 단계는 2차 서버(104)에서의 풀 백업(116) 수행 및 점증적 변경 사항(118)의 저장과 관련된다. 풀 백업(116)은 1차 데이터베이스(110)로부터의 적어도 일부 정보를 2차 서버(104) 내의 백업 시스템(112)으로 복사한다. 구체적 실시예에서, 풀 백업(116)은 1차 데이터베이스(110)로부터의 전체 정보를 백업 시스템(112)으로 복사하는 단계를 포함한다. 또 다른 구체적 실시예에서, 풀 백업(116)은 1차 데이터베이스(110) 내의 정보 일부를 백업 시스템(112)으로 복사하는 단계를 포함한다. 풀 백업(116)에 포함되는 정보는 사용자, 예컨대 클라이언트(108)를 이용하는 사용자나, 1차 서버(102)나 2차 서버(104)에 대한 인터페이스, 또는 임의의 기타 적합한 방식에 의하여 지정될 수 있다.
본 실시예에서는, 풀 백업(116)에 더하여, 1차 데이터베이스(110)의 정보에 이루어진 변경 사항이 2차 데이터베이스(114) 내에서 점증적 변경 사항(118)으로 기록될 수 있다. 일 실시예에서, 점증적 변경 사항(118)은 다음 풀 백업(116)이 시작되기까지 2차 데이터베이스(114)에 저장된다. 다음 풀 백업(116)이 시작된 다음에는, 2차 데이터베이스(114)가, 예컨대 2차 데이터베이스(114) 내에 저장되어 있는 임의의 점증적 변경 사항(118)을 삭제하는 등에 의하여 다시 초기화될 수 있다. 구체적 실시예에서, 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)은 시간에 따라 분할될 수 있다. 예컨대, 점증적 변경 사항(118)은 그 점증적 변경 사항(118)이 발생한 시간에 따라 서로 상이한 파일이나 데이터 저장소에 저장될수 있으며, 각 파일이나 데이터 저장소는 그 서로 상이한 시간 주기에 대응할 수 있다. 본 명세서에서, "각"이라 함은 식별된 아이템들로 이루어진 적어도 하나의 서브세트 각각을 말한다.
본 실시예에서, 백업 시스템(112)에 저장된 백업 정보와 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)이 데이터베이스 고장시 1차 데이터베이스(104) 복구에 이용될 수 있다. 즉, 1차 데이터베이스(110)의 이전 상태가 백업 시스템(112)에 저장된 백업 정보 및 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)을 이용하여 재현될 수 있다. 특히, 1차 서버(102)는 백업 시스템(112)으로부터의 백업 정보를 1차 데이터베이스(110)로 복사할 수 있으며, 이로써 1차 데이터베이스(110)를 최종 풀 백업(116) 당시나 근접한 시점에 존재했던 상태로 복구시킨다. 1차 서버(102)는 1차 데이터베이스(110)를 이러한 상태로 방치할 수 있다. 1차 서버(102)는 또한 2차 데이터베이스(114)로부터 점증적 변경 사항(118) 전체 또는 일부를 수신하여 1차 데이터베이스(110)에서 그 점증적 변경 사항(118)을 재현할 수 있다. 예컨대, 1차 서버(102)는 데이터베이스 테이블로부터 정보의 삭제를 나타내는 점증적 변경 사항(118)을 수신할 수 있으며, 1차 서버(102)는 데이터베이스 테이블로부터 그 식별된 정보를 삭제함으로써 1차 데이터베이스(110)에서 그 변경 사항을 구현할 수 있다. 이와 같이, 1차 서버(102)는 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)을 이용하여 1차 데이터베이스(110)를 최종 풀 백업(116) 시간과 데이터베이스 고장 시간 사이에 존재했던 상태로 복구시킬 수 있다. 구체적 실시예에서는, 1차 서버(102)가 그 점증적 변경 사항(118)을, 최종 풀 백업(116) 시부터 시작해서 데이터베이스 고장 시점에 도달하기까지 또는 원하는 시간에 도달하기까지, 순차적으로 재현한다. 사용자는 1차 데이터베이스(110)가 데이터베이스 고장 시점 또는 어느 다른 시점으로 복구되어야 한다고 지정할 수 있다.
또 다른 실시예에서, 2차 서버(104)는 재난 복구 동작의 백업 단계 동안 하나 이상의 점증적 백업(120)을 수행할 수 있다. 이러한 실시예에서, 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)은 백업 시스템(112)으로 복사 또는 기록될 수 있고, 그 기록된 점증적 변경 사항(118)은 2차 데이터베이스(114)에서 삭제될 수도 있다(그러나 반드시 필요한 것은 아니다). 구체적 실시예로서, 2차 서버(104)는 매 15분이나 30분마다 백업 시스템(112)에 그 점증적 변경 사항(118)을 기록할 수 있으며, 다른 임의의 적합한 시간 주기가 이용될 수도 있다. 이와 같이, 2차 데이터베이스(114)는 제한된 시간 주기 동안 점증적 변경 사항(118)을 저장할 수 있다. 구체적 실시예에서는, 2차 서버(104)에서의 점증적 변경 사항(118)이, 그 점증적 변경 사항이 발생한 시점에 따라, 서로 상이한 파일이나 데이터 저장소에 저장될 수 있으며, 점증적 백업(120)은 백업 시스템(120)으로 그 하나 이상의 파일이나 데이터 저장소를 복사한다.
본 실시예에서는, 백업 시스템(112)에 저장된 풀 백업 정보, 점증적 백업(120)으로서 백업 시스템(112)에 저장된 점증적 변경 사항(118), 그리고 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)이 이용되어 데이터베이스(110)를 복구시킬 수 있다. 본 실시예에서, 1차 서버(102)는 백업 시스템(112)으로부터 1차 데이터베이스(110)로 백업 정보를 복사할 수 있고, 이로써 1차 데이터베이스(110)를 최종 풀 백업(116) 시점이나 근접한 시점에 존재했던 상태로 복구시킨다. 1차 서버(102)는 1차 데이터베이스(110)를 이와 같은 상태로 방치할 수 있다, 1차 서버(102)는 또한 그 점증적 백업(120) 전체 또는 일부를 백업 시스템(112)으로부터 수신하고 그 점증적 백업(120)에 포함된 점증적 변경 사항(118)을 재현할 수 있다. 1차 서버(102)는 그 수신하고 구현한 최종 점증적 백업(120) 발생 당시나 그 근접한 시점에 존재했던 상태로 데이터베이스(110)를 복구시킨다. 다시, 1차 서버(102)는 1차 데이터베이스(110)를 이 상태로 남겨둘 수도 있고, 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)을 수신하여 구현할 수도 있다. 구체적 실시예에서, 1차 서버(102)는 백업 시스템(112) 및 2차 데이터베이스(114) 양자 모두에서의 점증적 변경 사항(118)을 순차적으로 재생한다. 또한, 사용자는 1차 데이터베이스(110)가 어느 시간으로 복구될 것인지 지정할 선택 기회를 가질 수 있다.
이전의 설명은 재난 복구 동작의 백업 단계 동안 2차 서버(104)에 정보가 저장될 수 있는 다양한 방식에 관한 것이었다. 또한 1차 데이터베이스(110)가 2차 서버(104) 내의 정보를 이용하여 그 재난 복구 동작의 복구 단계 동안 복구될 수 있는 여러 방식도 설명하였다. 본 발명의 범위를 벗어나지 않는 범위에서, 또 다른 임의의 방법과 기법 및/또는 추가적 방법과 기법이 백업 단계 동안 2차 서버(104)에 정보를 저장하고 그리고/또는 복구 단계 동안 1차 데이터베이스(110)를 복구하는데 이용될 수 있다. 예컨대, 시스템(100)은 항상 데이터베이스(110)가 고장난 시점이나 그 근접한 시점에 존재했던 상태로 1차 데이터베이스(110)를 복구하도록 프로그램될 수 있다. 이러한 실시예에서, 사용자는 데이터베이스(110)의 고장 이전에 존재했던 상태로 1차 데이터베이스(110)를 복구할 선택 기회를 갖지 못할 수 있다.
도 1은 재난 복구 시스템(100)에 관한 예시적 실시예를 도시하고 있지만, 시스템(100)에 대하여 다양한 변화가 본 발명의 범위를 벗어나지 않는 범위에서 이루어질 수 있다. 예컨대, 도 1은 하나의 1차 서버(102) 및 하나의 2차 서버(104)를 도시하고 있지만, 시스템(100)은 적절한 임의 갯수의 1차 서버(102) 및/또는 2차 서버(104)를 포함할 수도 있다. 구체적 실시예에서, 시스템(100)은 각 2차 서버(104)마다 복수의 1차 서버(102), 예컨대 1 내지 8개의 1차 서버(102)를 포함할 수 있다. 또한, 도 1은 2차 서버(104)가 백업 시스템(112)과 2차 데이터베이스(114)를 포함하는 것으로 도시하고 있지만, 백업 시스템(112)과 데이터베이스(114)가 별도의 플랫폼에 존재할 수도 있다. 또한, 도 1은 서버(102,104)의 이용을 도시하고 있지만, 기타 적절한 임의의 컴퓨팅 또는 통신 장치(들)가 시스템(100)에 이용될 수도 있다,
도 2a 및 도 2b는 본 발명의 일 실시예에 따르는 1차 및 2차 데이터베이스(110,114)를 도시하는 예시적 블록도이다. 구체적으로, 도 2a는 두 개의 1차 서버(102)에서의 두 개의 예시적 1차 데이터베이스(110)를 도시하고 있고, 도 2b는 2차 서버(104)에서의 예시적 2차 데이터베이스(114)를 도시하고 있다. 도 2a에 도시된 데이터베이스 내용은 단지 설명을 위한 것이다. 데이터베이스(110,114)는 본 발명의 범위를 벗어나지 않는 범위에서 임의의 기타 정보 및/또는 추가적 정보를 임의의 적합한 구성으로써 포함할 수도 있다.
도 2a에서, 2개의 1차 데이터베이스(110a,110b)의 내용은 표준 폴더 시스템을 이용하여 세분된 것이다. 폴더 시스템에서는, 내용이 계층 구조의 폴더로 분할될 수 있다. 각 폴더는 정보, 애플리케이션, 또 다른 추가 폴더, 파일, 레지스트리, 및/또는 임의의 기타 내용을 포함할 수 있고 아무런 내용을 포함하지 않을 수도 있다. 본 명세서에서는 폴더(200,202) 내의 파일에 대하여 점증적 변경 사항(118)이 발생하는 것으로 설명되고 있지만, 본 발명의 범위를 벗어나지 않는 범위에서 폴더(200,202)의 임의의 다른 내용에 대해 점증적 변경 사항(118)이 발생할 수도 있다.
예시된 실시예에서, 데이터베이스(110b)의 내용은 단일의 드라이브 폴더(200c)에 존재하지만 데이터베이스(110a)의 내용은 두 개의 드라이브 폴더(200a,200b)로 분할된다. 일 실시예에서, 데이터베이스(110)는 복수의 물리적 드라이브 및/또는 논리 장치를 포함할 수 있다. 예시된 실시예에서, 데이터베이스(110a)는 드라이브 폴더(200a,200b)로 표시된 두 개의 물리적 및/또는 논리적 드라이브를 포함하며, 데이터베이스(110b)는 드라이브 폴더(200c)라고 표시된 하나의 물리적 및/또는 논리적 드라이브를 포함한다.
각 드라이브 폴더(200) 내에서, 데이터베이스(110)의 내용은 파일 시스템 폴더(202)로 더 세분될 수 있다. 파일 시스템 폴더(202)는, 예컨대 데이터베이스(110) 내의 서로 다른 정보 카테고리를 나타낸다. 예시된 실시예에서, 드라이브 폴더(200a)는 3개의 파일 시스템 폴더(202a-202c)로 분할된다. 폴더(202a)는 1차서버(110a)에 의하여 실행될 수 있는 애플리케이션을 포함할 수 있다. 폴더(202b)는 서버 교환 애플리케이션을 통하여 사용자들이 정보에 관하여 통신하고 정보를 공유할 수 있게 하는 명령 및 정보를 포함할 수 있다. 폴더(202c)는 임시로 저장된 정보를 포함할 수 있다. 파일 시스템 폴더(202c)의 내용에는 1차 서버(102)가 실행하는 애플리케이션에 이용되는 특정 파일, 추가적 폴더, 데이터베이스 테이블, 및/또는 임의의 기타 정보가 포함될 수 있다. 본 발명의 범위를 벗어나지 않는 범위에서 폴더(200-202)는 추가적 폴더 계층을 이용하여 더 세분될 수도 있다.
재난 복구 동작의 일측면에 있어서, 1차 데이터베이스(110) 내의 적어도 일부 정보가 풀 백업(116) 동안 백업 시스템(112)으로 복사되고 점증적 변경 사항(118)에 관하여 모니터될 수 있다. 일 실시예에서는, 1차 데이터베이스(110) 내의 모든 정보가 백업 시스템(112)으로 복사되고 점증적 변경 사항(118)에 관하여 모니터된다. 또 다른 실시예에서는 1차 데이터베이스(110) 내의 정보 중 일부가 백업 시스템(112)으로 복사되고 점증적 변경 사항(118)에 관하여 모니터된다. 구체적 실시예에서, 사용자는 1차 데이터베이스(110) 내의 어떤 폴더(200-202) 및/또는 파일이 백업 시스템(112)으로 복사되고 그리고/또는 점증적 변경 사항(118)에 관하여 모니터될 것인지 지정할 수 있다. 이는, 예컨대 1차 데이터베이스(110) 내의 일부 정보가 시간 변화에 불구하고 변경되지 않는 경우 유용할 수 있다.
재난 복구 동작의 또 다른 측면에 있어서, 1차 데이터베이스(110) 내의 정보에 대한 점증적 변경 사항(118)이 2차 서버(104)의 2차 데이터베이스(114) 내에 저장될 수 있다. 예컨대, 1차 데이터베이스(110a,110b)에서 정보가 추가되거나, 변경되거나, 삭제될 수 있으며, 이러한 변화가 2차 데이터베이스(114)에 기록될 수 있다.
도 2b는 2차 데이터베이스(114)의 일예를 도시하고 있다. 도시된 실시예에서, 2차 데이터베이스(114)는 표준 폴더 시스템을 이용하여 점증적 변경 사항(118)을 저장한다. 도시된 실시예에서, 2차 데이터베이스(114)는 애플리케이션 폴더(250), 점증적 변경 사항 폴더(252), 하나 이상의 서버 폴더(254), 하나 이상의 타임스탬프 폴더(256), 하나 이상의 드라이브 폴더(258), 그리고 하나 이상의 파일 시스템 폴더(260)를 포함한다. 본 실시예에서, 2차 서버(104)는 드라이브 폴더(258) 및/또는 파일 시스템 폴더(260)에 위치한 파일에 점증적 변경 사항(118)을 저장할 수 있다. 또 다른 실시예 및/또는 구성이 본 발명의 범위를 벗어나지 않는 범위에서 이루어질 수 있다.
애플리케이션 폴더(250)는 2차 데이터베이스(114)에서 재난 복구 애플리케이션에 연관된 정보가 저장되는 폴더를 나타낼 수 있다. 구체적 실시예로서, 애플리케이션 폴더(250)는 하나 이상의 1차 데이터베이스(110)에 대하여 이루어진 점증적 변경 사항(118), 1차 데이터베이스(110)를 복구하는데 이용되는 애플리케이션 파일, 및/또는 기타 임의의 적합한 정보를 포함할 수 있다.
점증적 변경 사항 폴더(252)가 하나 이상의 1차 데이터베이스(110)에 대하여 이루어진 점증적 변경 사항(118)을 저장할 수 있다. 점증적 변경 사항 폴더(252)는, 예컨대, 그 점증적 변경 사항(118)이 애플리케이션 폴더(250) 내에 저장된 다른 정보와 구별될 수 있도록 도울 수 있다.
각 서버 폴더(254)는 특정 1차 서버(102)에 의하여 이루어진 점증적 변경 사항(118)을 저장할 수 있다. 도시된 실시예에서, 2차 데이터베이스(114)는 두 개의 서버 폴더(254a,254b)를 포함하는데, 그 하나는 1차 데이터베이스(110a)를 포함하는 첫 번째 1차 서버(102)를 위한 것이고, 다른 하나는 1차 데이터베이스(110b)를 포함하는 두 번째 1차 서버(102)를 위한 것이다. 이는, 예컨대, 단일의 2차 데이터베이스(114)가 복수의 1차 서버(102)에 대한 점증적 변경 사항(118)을 구별하여 저장할 수 있게 할 수 있다. 임의의 적합한 수의 1차 서버(102)가 2차 데이터베이스(114)에 의하여 지원될 수 있다. 일 실시예에서, 2차 데이터베이스(114)는 1 내지 8개의 1차 서버(102)를 지원할 수 있다.
타임스탬프 폴더(256)는 점증적 변경 사항(118)이 이루어진 각기 다른 시간 주기를 나타낸다. 도시된 실시예에서, 각 서버 폴더(254)는 적어도 두 개의 타임스탬프 폴더(256)를 포함한다. "CURRENT"라고 레이블링된 하나의 타임스탬프 폴더(256)는 현재 시간 주기의 점증적 변경 사항(118)을 저장하고, 적어도 하나의 다른 타임스탬프 폴더(256)가 이전의 시간 주기에서의 점증적 변경 사항(118)을 저장한다. 임의의 수의 타임스탬프 폴더를 이용하는 또 다른 실시예가 본 발명의 범위를 벗어나지 않는 범위에서 이용될 수 있다. 예컨대, 2차 데이터베이스(114)는 최종 풀 백업(116) 이후 경과한 각 시간 주기마다 하나의 타임스탬프 폴더(256)를 포함할 수 있다.
예시된 실시예에서, 현재 시간 주기가 아닌 시간 주기를 나타내는 타임스탬프 폴더(256)는 타임스탬프 레이블을 포함한다. 본 명세서에서, "타임스탬프"라는용어는 날짜 및/또는 시간을 적어도 어느 정도는 식별하고 표현하도록 작동 가능한 임의의 정보나 구조를 말한다. 구체적 실시예에서, 이들 타임스탬프 폴더(256) 각각은 2차 서버(104)가 그 타임스탬프 폴더(256)에서 점증적 변경 사항(118) 저장을 언제 시작했고 종료했는지 식별하는 타임스탬프를 포함할 수 있다. 예컨대, 일 실시예에서, 타임스탬프 폴더(256)는 하루 중 각기 다른 시간동안 발생했던 점증적 변경 사항(118)을 저장할 수 있고, 각 타임스탬프가 하루 중 그 특정 시간을 식별할 수 있다. 본 발명의 범위를 벗어나지 않는 범위에서, 날짜 및/또는 시간을 참조하거나 참조하지 않고서 타임스탬프 폴더(256)에 대해 또 다른 레이블이 주어질 수도 있다.
2차 데이터베이스(114) 내의 각 드라이브 폴더(258)는 1차 데이터베이스(110) 내의 드라이브 폴더(200)에 대응할 수 있다. 2차 데이터베이스(114) 내의 각 파일 시스템 폴더(260)는 1차 데이터베이스(110) 내의 파일 시스템 폴더(202)에 대응할 수 있다.
작동의 일측면에 있어서, 점증적 변경 사항(118)이 2차 데이터베이스(114) 내의 드라이브 폴더(258), 파일 시스템 폴더(260), 및/또는 기타 다른 폴더에 위치한 파일 내에 저장된다. 구체적 실시예에서, 2차 데이터베이스(114) 내의 파일은 스파스 파일(sparse file)이다. 다음의 설명에서는, 타임스탬프 폴더(256)에 위치한 파일 집단을 데이터 저장소라고 부른다.
1차 데이터베이스(114) 내의 정보에 대하여 변경이 이루어지면, 그 변경은 점증적 변경 사항(118)으로서 2차 서버(104)로 전달될 수 있다. 2차 서버(104)는그 점증적 변경 사항(118)과 연관된 1차 서버(102)를 식별할 수 있다. 또한, 2차 서버(104)는 점증적 변경 사항(118)이 1차 서버(102) 어디에서 발생했는지 식별할 수 있다. 예컨대, 1차 데이터베이스(110)의 드라이브 폴더(200) 내의 파일에 점증적 변경 사항(118)이 발생했다면, 2차 서버(104)는 그 드라이브 폴더(200)를 식별할 수 있다. 1차 데이터베이스(110)의 파일 시스템 폴더(202) 내의 파일에 점증적 변경 사항(118)이 발생했다면, 2차 서버는 그 파일 시스템 폴더(202) 및 그 파일 시스템 폴더(202)와 연관된 드라이브 폴더(200)를 식별할 수 있다. 2차 서버(104)는 또한 점증적 변경 사항(118)이 발생한 1차 데이터베이스(110) 내의 파일을 식별할 수 있다.
2차 서버(104)는 그 파일 및/또는 기타 정보를 이용하여 2차 데이터베이스(110) 내의 적절한 폴더에 액세스할 수 있다. 예컨대, 2차 서버(104)는 식별된 1차 서버(202)와 연관된 서버 폴더(254)에 액세스할 수 있다. 2차 서버(104)는 또한 서버 폴더(254)에 포함된 현재의 타임스탬프 폴더(256)에 액세스할 수도 있다. 2차 서버(104)는 또한 식별된 드라이브 폴더(200)와 연관된 드라이브 폴더(258) 및 식별된 파일 시스템 폴더(202)와 연관된 파일 시스템 폴더(260)에 액세스할 수 있다. 2차 데이터베이스(114) 내의 적절한 폴더에 액세스한 다음, 2차 서버(104)가 그 폴더에 점증적 변경 사항(118)을 저장할 수 있다. 예컨대, 2차 서버(104)는 식별된 파일과 연관된 2차 데이터베이스(114) 내의 파일에 그 점증적 변경 사항(118)을 저장할 수 있다. 일 실시예에서, 2차 서버(104)는, 점증적 변경 사항(118)이 발생한 1차 데이터베이스(110) 내의 파일과 동일한 이름을 갖는 파일에 점증적 변경 사항(118)을 저장할 수 있다. 구체적 실시예로서, 점증적 변경 사항(118)이 1차 데이터베이스(110) 내에서 "pub1.edb"라는 이름을 가진 파일에 발생했다면, 2차 서버(104)는 2차 데이터베이스(114) 내에서 "pub1.edb"라는 이름을 가진 파일에 그 점증적 변경 사항(118)을 저장할 수 있다. 이와 같이, 2차 서버(104)는 2차 데이터베이스(114) 내에서 1차 데이터베이스(110)의 폴더 계층 구조를 적어도 일부분 재현할 수 있다.
구체적 실시예에서, 2차 서버(104)는 소정의 시간 주기가 경과하기까지 2차 데이터베이스(114)의 "CURRENT" 타임스탬프 폴더(256)에 점증적 변경 사항(118) 저장을 계속할 수 있다. 그 시간 주기가 경과한 다음, 2차 서버(104)는 그 "CURRENT" 타임스탬프 폴더(256)를 닫고 이름을 변경한다. 예컨대, 2차 서버(104)는 날짜와 그 하루 중 시간을 이용해서 타임스탬프 폴더(256)를 레이블링할 수 있다. 2차 서버(104)는 또한 새로운 "CURRENT" 타임스탬프 폴더(256)을 생성할 수 있고 그 새로운 타임스탬프 폴더(256)에 점증적 변경 사항(118)을 계속하여 저장하기 시작할 것이다. 점증적 변경 사항(118)이 새로운 타임스탬프 폴더(256)에 저장되는 동안, 2차 데이터베이스(114)는 그 이름이 변경된 타임스탬프 폴더(256)에서의 점증적 변경 사항(118)을 점증적 백업(120)으로서 백업 시스템(112)으로 전달할 수 있다. 점증적 백업(120)이 끝난 다음, 2차 데이터베이스(114)는 그 이름 변경된 타임스탬프 폴더(256)를 삭제할 수 있다. 그런 다음 2차 서버(104)는 그 다음 시간 주기가 경과한 다음 "CURRENT" 타임스탬프 폴더(256) 이름을 변경하고 새로운 타임스탬프 폴더(256)를 생성함으로써 프로세스를 반복할 수 있다. 또 다른 실시예에서, 2차 서버(104)는 점증적 백업(120)을 수행하기에 앞서 여러 시간 주기가 경과할 때까지 대기할 수도 있다.
2차 서버(104)가, 점증적 변경 사항(118)을 저장하기 위하여 적절한 타임스탬프 폴더(256), 드라이브 폴더(258), 및/또는 파일 시스템 폴더(260)에 들어가는 것으로서 설명하고 있다. 이는 폴더(256-260)가 존재하고 이들이 2차 서버(104)에 의하여 액세스될 수 있음을 가정한 것이다. 구체적 실시예에서, 1차 데이터베이스(110)에 대한 풀 백업(116) 시작시, 그 1차 데이터베이스(110)와 연관된 점증적 변경 사항(118)이 2차 데이터베이스(114)에서 삭제될 수 있다. 이는, 예컨대 적절한 서버 폴더(254)의 내용을 삭제함으로써 이루어질 수 있다. 그 결과, 2차 서버(104)는 점증적 변경 사항(118)을 저장하기에 앞서서 타임스탬프 폴더(256), 드라이브 폴더(258), 및/또는 파일 시스템 폴더(260)를 생성할 필요가 있을 수 있다. 또한, 2차 서버(104)는 2차 데이터베이스(114)에 그 점증적 변경 사항(118)을 저장할 파일을 생성할 필요가 있을 수 있다. 본 실시예에서, 2차 서버(104)는 점증적 변경 사항(118)을 수신하였을 때, 적절한 폴더(256-260) 및 파일이 2차 데이터베이스(114) 내에 존재하는지 판정할 수 있다. 존재하지 않는다면, 2차 서버(104)는 필요한 폴더(256-260) 및/또는 필요한 파일을 생성할 수 있다.
일 실시예에서, 1차 데이터베이스(110)의 드라이브 폴더(200)나 파일 시스템 폴더(202)의 내용에 점증적 변경 사항(118)이 발생하지 않은 경우라면, 2차 데이터베이스(114)에는 대응 드라이브 폴더(258)나 파일 시스템 폴더(260)가 없을 수 있다. 예컨대, 예시된 실시예에서, 드라이브 폴더(258e)는 "애플리케이션" 및 "서버교환"이라고 이름 붙여진 파일 시스템 폴더(260i-260j)를 포함한다. 이들 파일 시스템 폴더(260i-260j)는 도 2a의 파일 시스템 폴더(202a-202b)에 대응한다. 이는 그 점증적 변화(118)가 파일 시스템 폴더(202a-202b)의 내용에 발생하였음을 나타낸다. 그러나, 또 다른 실시예에서는, 드라이브 폴더(258e)는 파일 시스템 폴더(260i)를 포함하지 않을 수도 있다. 이는 타임스탬프 폴더(256c)에 의하여 표시되는 시간 주기 동안 "애플리케이션" 파일 시스템 폴더(202a)의 내용에 아무런 점증적 변경 사항(118)도 이루어지지 않았음을 나타낸다.
시스템(100)이 모니터하고 2차 데이터베이스(114)에 저장된 점증적 변경 사항(118)은 특별한 필요에 따라 변화할 수 있다. 일 실시예에서, 1차 데이터베이스(110)에 관한 일부 데이터베이스 동작은 2차 데이터베이스(114) 내의 점증적 변경 사항(118)의 생성 및 저장으로 이어질 필요가 없다. 구체적 예로서, 사용자는 1차 데이터베이스(110)의 파일을 열고, 닫고, 그 파일로부터 정보를 판독할 수 있다. 이들 동작은 데이터베이스 파일 내의 데이터를 변경하지 않으며, 따라서, 2차 데이터베이스(114)에 아무런 점증적 변경 사항(118)도 저장될 필요가 없다.
그와 다른 데이터베이스 동작은 2차 데이터베이스(114) 내의 점증적 변경 사항(118)의 생성 및 저장으로 이어질 수 있다. 예컨대, 사용자가 1차 데이터베이스(110) 내의 파일에 데이터를 기록할 수 있다. 그와 같은 일이 발생하면, 2차 서버(104)는 동일한 이름의 파일이 2차 데이터베이스(114)의 적절한 폴더(258,260)에 존재하는지를 판정하고, 그러한 파일이 존재하지 않는다면 파일을 생성하며, 점증적 변경 사항(118)으로서 해당 파일에 새로 기록된 데이터를 저장할 수 있다. 사용자는 또한 1차 데이터베이스(110)에서 파일을 삭제할 수 있다. 그와 같은 경우, 2차 서버(104)는 2차 데이터베이스(114) 내의 대응 파일을 삭제된 것으로 표시할 수 있다. 마찬가지로, 사용자는 1차 데이터베이스(110) 내의 서브트리를 삭제할 수 있으며, 이로써 1차 데이터베이스(110) 내의 폴더(200) 또는 폴더(202)의 내용이 삭제될 수 있다. 이러한 일이 발생하면, 2차 서버(104)는 2차 데이터베이스(114) 내의 대응 폴더(258,260)의 내용을 삭제하고 대응 폴더(258,260)가 삭제된 것으로 표시할 수 있다. 사용자는 또한 1차 데이터베이스(110) 내의 파일 이름을 변경할 수 있다. 그와 같은 경우, 2차 서버(104)는 2차 데이터베이스(114) 내의 대응 파일을 이전의 구이름에서 새로운 이름으로 이름 변경하고, 구이름을 갖는 2차 데이터베이스(114) 내 새로운 파일을 생성하며, 그 새로운 파일을 삭제된 것으로 표시할 수 있다. 또한, 사용자는 1차 데이터베이스(110) 내의 파일들에 있어서의 하나 이상의 특징에 영향을 미치는 기타 다양한 명령을 실행할 수 있다. 예컨대, 사용자는 SetBasicInfo 및 SetCompression 등과 같이 1차 데이터베이스(110) 내의 파일에 관한 정보와 압축(compression)을 변경하는 명령을 실행할 수 있다. 사용자는 또한 SetSecurity 및 SetSecurityByName 등과 같이 1차 데이터베이스(110) 내의 파일의 보안 특징을 변경하는 명령을 실행할 수도 있다. 사용자는 또한 1차 데이터베이스(110) 내의 파일을 절단하여 그 파일의 사이즈를 줄일 수도 있다. 이들 동작마다, 2차 서버(104)는 2차 데이터베이스(114) 내의 대응 파일에 그 새로운 파일 정보, 파일 보안 정보, 및 파일 길이를 저장할 수 있다. 그 외에도, 1차 데이터베이스(110) 내의 레지스트리에 이루어진 변경, 예컨대 운영 체제가 레지스트리에 구성 정보를 추가하거나, 정보를 갱신하거나, 삭제하는 경우 등의 변경이 2차 데이터베이스(114) 내에 저장될 수 있다. 기타 다른 점증적 변경 사항(118)도 본 발명의 범위를 벗어나지 않는 범위에서 2차 데이터베이스(114) 내에 저장될 수 있다.
도 2a 및 도 2b가 예시적인 1차 데이터베이스(110) 및 2차 데이터베이스(114)를 도시하고 있지만, 본 발명을 벗어나지 않는 범위에서 그 데이터베이스(110,114)에 대하여 다양한 변화가 이루어질 수 있다. 예컨대, 폴더(200-202) 및 폴더(250-260)는 설명을 위한 것일 뿐이다. 임의의 기타 폴더 및/또는 추가적 폴더가 데이터베이스(110,114)에 이용될 수 있다. 또한, 임의의 적합한 정보 구성이 폴더 시스템 대신에 이용될 수도 있다.
도 3은 본 발명의 일 실시예에 따르는 재난 복구 아키텍처(300)의 일부를 도시하는 예시적 블록도이다. 아키텍처(300)는, 예컨대, 1차 서버(102) 및 2차 서버(104) 상에서 실행되는 소프트웨어 루틴을 나타낼 수 있다. 도시된 실시예에서, 아키텍처(300)는 파일 시스템 모니터(FSM)(302), 파일 시스템 트랜잭션 서버(FSTS)(304), 1차 서비스부(306), 2차 서비스부(308), 및 콘솔 애플리케이션(310)을 포함한다. 본 발명의 범위를 벗어나지 않는 범위에서 아키텍처(300)에 대한 또 다른 실시예가 이용될 수도 있다.
파일 시스템 모니터(302)는 하나 이상의 파일 시스템(312a-312c)(집합적으로 파일 시스템(312)이라고 불림) 내의 파일들에 대한 점증적 변경 사항을 모니터하고 검출하도록 작동 가능하다. 파일 시스템(312)은, 예컨대, 도 2a에 도시된 데이터베이스 아키텍처를 지원할 수 있다. 구체적 실시예에서, 파일 시스템 모니터(302)는 파일 시스템(312) 내의 파일이나 레지스트리에 대해 수행된 기록 동작, 생성 동작, 이름 변경 동작, 및 삭제 동작을 검출할 수 있다. 파일 시스템 모니터(302)가 점증적 변경 사항(118)을 검출한 경우, 파일 시스템 모니터(302)는 파일 시스템 트랜잭션 서버(304)에게 통지할 수 있다. 예컨대, 파일 시스템 모니터(302)가 파일에 대해 데이터 블록이 추가된 것을 검출했다면, 파일 시스템 모니터(302)는 그 변경된 파일의 이름, 데이터 블록이 기록된 어드레스, 및 그 데이터 블록의 사이즈를 파일 시스템 트랜잭션 서버(304)에게 통지할 수 있다. 파일 시스템 모니터(302)는 하나 이상의 파일 시스템(312) 내의 점증적 변경 사항(118)을 검출하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어 또는 그 조합을 포함할 수 있다. 파일 시스템 모니터(302)는, 예컨대, 1차 데이터베이스(102) 내의 하나 이상의 프로세서에 의하여 실행되는 커널-모드 소프트웨어 드라이버를 포함할 수 있다.
파일 시스템 트랜잭션 서버(304)는 파일 시스템 모니터(302)에 의하여 식별된 점증적 변경 사항(118)을 수신하고 소정의 시간 주기 동안 그 점증적 변경 사항(118)을 축적하도록 작동 가능하다. 예컨대, 파일 시스템 트랜잭션 서버(304)는 5초 윈도우 동안 점증적 변경 사항(118)을 축적할 수 있다. 파일 시스템 트랜잭션 서버(304)는 점증적 변경 사항(118)을 수신하고 축적하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합일 수 있다. 파일 시스템 트랜잭션 서버(304)는 예컨대, 1차 서버(102) 내의 하나 이상의 프로세서가 실행하는 커널 모드 소프트웨어 드라이버를 포함할 수 있다. 구체적 실시예에서, 파일 시스템 트랜잭션 서버(304)는 파일 시스템 모니터(302)의 클라이언트 프로세스로서 기능한다. 또 다른 실시예에서는, 점증적 변경 사항(118)의 축적이 수행되지 않을 수 있고, 파일 시스템 트랜잭션 서버(304)가 아키텍처(300)에서 생략될 수도 있다.
1차 서비스부(306) 및 2차 서비스부(308)는 1차 서버(102) 및 2차 서버(104) 사이의 통신을 지원하도록 작동 가능하다. 예컨대, 1차 서비스부(306)는 파일 시스템 트랜잭션 서버(304)로부터 축적된 점증적 변경 사항(118)을 수신하고 그 점증적 변경 사항(118)을 2차 서비스부(308)에 전달할 수 있다. 2차 서비스부(308)는 1차 서비스부(306)로부터 점증적 변경 사항(118)을 수신하여 파일 시스템(314)에 그 점증적 변경 사항(118)을 기록할 수 있다. 파일 시스템(314)은, 예컨대, 도 2b에 도시된 데이터베이스 아키텍처를 지원할 수 있다. 1차 서비스부(306) 및 2차 서비스부(308)는 1차 서버(102)와 2차 서버(104) 사이의 정보 전달을 지원하도록 작동 가능한 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합일 수 있다. 1차 서비스부(306) 및 2차 서비스부(308)는, 예컨대, 1차 서버(102) 및 2차 서버(104)에 속한 하나 이상의 프로세서 각각에 의하여 실행되는 사용자-모드 애플리케이션을 포함할 수 있다.
콘솔 애플리케이션(310)은 시스템(100)에서 재난 복구 동작을 제어하는 인터페이스를 제공하도록 작동 가능하다. 콘솔 애플리케이션(310)은, 예컨대, 스크립트 파일을 이용하여 사용자가 재난 복구 동작을 제어할 수 있게 한다. 구체적 실시예로서, 사용자는 적절한 스크립트 명령의 이용을 통하여 2차 데이터베이스(114) 내 데이터 저장소에 대해 이름을 변경하거나 그 데이터 저장소를 삭제할 수 있다.사용자는 또한 적절한 스크립트 명령을 이용해서 시스템(100)이 1차 데이터베이스(110)를 복구하도록 할 수 있다. 재난 복구 동작을 제어하는 기타 다른 방법, 예컨대, 애플리케이션 프로그래밍 인터페이스(Application Programming Interface ; API)를 이용하는 방법 등이 본 발명의 범위를 벗어나지 않는 범위에서 이용될 수 있다.
일 실시예에서, 1차 서비스부(306) 및/또는 2차 서비스부(308)는 하나 이상의 작업의 실행을 지원할 수 있다. 작업이란 재난 복구 기능의 일부 또는 그 전체를 구현하는 1차 서비스부(306) 및/또는 2차 서비스부(308)에 의하여 실행되는 프로세스를 나타낼 수 있다. 예컨대, 1차 데이터베이스(110)에 대하여 이루어진 점증적 변경 사항(118)을 2차 데이터베이스(114)에 복사하는 것을 하나 이상의 복사 작업이 담당한다. 구체적 실시예에서, 사용자는 예컨대, 콘솔 애플리케이션(310)을 통하여 입력된 적절한 스크립트 명령을 이용하여, 복사 작업을 시작하고, 종료하고, 제어할 수 있다.
이러한 실시예에서는, 점증적 변경 사항(118)을 2차 데이터베이스(114)에 복사하도록 하는 복사 작업으로써 태스크파일이 이용될 수 있다. 태스크파일은, 예컨대, 점증적 변경 사항(118)에 대한 모니터링이 이루어질 1차 데이터베이스(110) 내의 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치를 식별할 수 있다. 태스크파일은 또한 점증적 변경 사항(118)에 대한 모니터링이 이루어지지 않고 배제될 1차 데이터베이스(110) 내의 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치도 식별할 수 있다. 태스크파일은 또한 재난 복구 동작에서이용되는 타임아웃 파라미터 및 기타 파라미터를 식별할 수 있다. 태스크파일은, 예컨대, 수동으로 편집될 수 있고 그리고/또는 표준 API를 이용해서 프로그램으로써 편집될 수도 있는 .INI 파일을 나타낼 수 있다.
동작의 일측면에서, 사용자는 특정한 1차 서버(102)에 대한 복사 작업을 활성화할 수 있다. 구체적 실시예에서, 복사 작업은 풀 백업(116)이 시작되기 전에 활성화될 수 있고, 따라서 풀 백업(116) 동안 1차 서버(102)에 의하여 이루어진 어떠한 점증적 변경 사항도 시스템(100)에서 포획될 수 있다는 점을 보장할 수 있도록 한다. 1차 서비스부(306)는 그 태스크파일을 판독하고 어떤 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치가 모니터링될 필요가 있는지 식별할 수 있다. 1차 서비스부(306)는 또한 그 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치를 모니터하도록 파일 시스템 트랜잭션 서버(304)를 구성할 수 있다. 파일 시스템 트랜잭션 서버(304)는 파일 시스템 모니터(302)에 의하여 검출된 임의의 점증적 변경 사항(118)을 모니터하고, 그 모니터되는 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치에 대하여 이루어진 점증적 변경 사항(118)을 보고하고, 모니터에서 배제된 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치에 대하여 이루어진 점증적 변경 사항(118)은 무시할 수 있다. 예컨대, 2차 서비스부(308)는 적절한 서버 폴더(254) 아래에 "CURRENT" 타임스탬프 폴더(256)를 생성할 수 있다. 1차 서비스부(306) 및 2차 서비스부(308)는 또한 네트워크(106)를 통한 링크 등과 같은 정보 전달 링크를 형성할 수 있다.
사용자는 또한 복사 작업을 불활성화시킬 수도 있다. 그와 같은 경우, 1차서비스부(306) 및 2차 서비스부(308)가 점증적 변경 사항(118) 전달을 멈출 수 있다. 사용자는 나아가 현재의 데이터 저장소를 삭제할 수 있고, 이로써 2차 데이터베이스(114) 내의 현재의 타임스탬프 폴더(256)를 삭제할 수 있다. 사용자는 또한, 예컨대 2차 데이터베이스(114) 내의 현재의 타임스탬프 폴더(256)의 이름을 시간 및 날짜를 반영하여 변경하도록 함으로써, 현재의 데이터 저장소 이름을 변경할 수 있다. 현재의 데이터 저장소 이름 변경 이후, 사용자는 복사 작업을 재개할 수 있다. 이는 시스템(100)이 다시 점증적 변경 사항(118)을 모니터하고 새로운 타임스탬프 폴더(256) 등의 새로운 현재 데이터 저장소에 기록할 수 있도록 한다.
도 3은 사용자가 콘솔 애플리케이션을 이용하여 시스템(100)에서 재난 복구 동작을 제어할 수 있도록 하는 것으로 도시되어 있다. 시스템(100)은 또한 자동으로 복사 작업을 시작 및 종료하고, 데이터 저장소 이름을 변경하며, 그리고/또는 필요에 따라 데이터 저장소를 삭제하도록 구성될 수 있다.
도 3이 재난 복구 아키텍처(300)의 일부에 관한 예로서 도시되었으나, 본 발명의 범위를 벗어나지 않는 범위에서 그 아키텍처(300)에 대한 다양한 변화가 이루어질 수 있다. 예컨대, 도 3의 기능적 구획은 설명을 위한 것일 뿐이다. 본 발명의 범위를 벗어나지 않는 범위에서, 구체적 필요에 따라, 다양한 기능 컴포넌트가 다른 것에 결합되거나 제거될 수 있다. 또한, 아키텍처(300)의 컴포넌트(302-310)들의 기능이 임의의 하드웨어, 소프트웨어, 펌웨어, 또는 그 조합을 이용하여 구현될 수 있다. 이는, 예컨대 RAM, ROM, ASIC(application-specific integrated circuit), 또는 FPGA(field programmable gate array) 등과 같은 임의의 적합한 장치에 저장된 로직을 포함할 수도 있다.
도 4는 본 발명의 일 실시예에 따른 재난 복구 방법(400)의 예시적 흐름도이다. 방법(400)은 도 1의 시스템(100)과 관련하여 설명되지만, 방법(400)은 본 발명의 범위를 벗어나지 않는 범위에서 임의의 기타 적합한 시스템에 의해서 이용될 수도 있다.
시스템(100)은 단계(402)에서 1차 데이터베이스(110)의 정보에 대한 풀 백업(116)을 수행한다. 이는, 예컨대 1차 서버(102)가 1차 데이터베이스(110)의 일부 또는 전체 정보를 백업 시스템(112)으로 전달하는 과정을 포함할 수 있다. 백업 시스템(112)은 2차 서버(102) 및/또는 또 다른 적절한 플랫폼 상에 존재할 수 있다.
시스템(100)은 단계(404)에서 1차 데이터베이스(110)의 정보에 대하여 이루어진 점증적 변경 사항(118)을 모니터링한다. 이는, 예컨대 1차 서버(102)가 1차 데이터베이스(110)의 정보에 대해 이루어진 점증적 변경 사항(118)을 식별하고 2차 서버(104)로 전달하는 과정을 포함할 수 있다. 이는 또한 2차 서버(104)가 2차 데이터베이스(114)에 그 점증적 변경 사항(118)을 저장하는 과정을 포함할 수 있다. 나아가, 이는 2차 서버(104)가 하나 이상의 점증적 백업(120)을 수행하여 2차 데이터베이스(114)로부터의 점증적 변경 사항(118)의 적어도 일부를 백업 시스템(112)에 저장하는 과정을 더 포함할 수 있다.
단계(406)에서 1차 데이터베이스(110)에 고장이 발생한다. 이는, 예컨대, 1차 데이터베이스(110)에서 그 1차 데이터베이스(110)가 작동 불가능한 상태가 되도록 하는 하드웨어나 소프트웨어 에러가 발생하는 것 등을 포함할 수 있다. 이는 또한 1차 데이터베이스(110)에서 전원 결함이 발생하는 것도 포함할 수 있다. 단계(406)에서의 데이터베이스 고장에 대한 또 다른 원인이 될 수 있는 것들도 본 발명의 범위를 벗어나지 않는 범위에서 발생할 수 있다. 1차 데이터베이스(110)는 단계(408)에서 다시 작동 가능하게 된다. 이는, 예컨대 기술자가 그 하드웨어나 소프트웨어 에러를 고치거나, 1차 서버(102)에 대한 전원이 복구되거나, 그리고/또는 그 데이터베이스 고장을 해결하는 임의의 적합한 교정 동작에 의한 것일 수 있다.
시스템(100)은 단계(410)에서 1차 데이터베이스(110)를 복구시킨다. 이는, 예컨대 백업 시스템(112)이 최종 풀 백업(116)으로부터의 정보를 1차 서버(102)로 전달하는 과정을 포함할 수 있다. 이는 또한 백업 시스템(112)이 하나 이상의 점증적 백업(120)으로부터의 점증적 변경 사항(118)을 1차 서버(102)로 전달하는 과정을 포함할 수 있다. 나아가, 이는 2차 데이터베이스(114)가 1차 서버(102)로 적어도 하나의 점증적 변경 사항(118)을 전달하는 과정을 더 포함할 수 있다. 또한, 이는 1차 서버(102)가 2차 서버(104)로부터의 정보를 이용하여 1차 데이터베이스(110)를 복구시키는 과정을 포함할 수 있다. 1차 서버(102)는 데이터베이스 고장이 발생한 시점이나 그 근접한 시점에 존재했던 상태, 데이터베이스(110)의 고장 발생 이전에 존재했던 상태, 및/또는 임의의 적합한 상태로 1차 데이터베이스(110)를 복구시킬 수 있다.
도 4는 재난 복구를 위한 하나의 예시적 방법(400)에 관하여 도시하고 있지만, 본 발명의 범위를 벗어나지 않는 범위에서 다양한 변화가 방법(400)에 대하여 이루어질 수 있다. 예컨대, 시스템(100)은 점증적 변경 사항(118)을 이용하지 않고서 최종 풀 백업(116)으로부터의 정보를 이용하여 1차 데이터베이스(110)를 복구시킬 수 있다. 이는, 예컨대 시스템(100)이 1차 데이터베이스(110)를 그 최종 풀 백업(116) 당시에 존재했던 상태로 복구시키는 경우이다. 본 발명의 범위를 벗어나지 않는 범위에서 방법(400)에 대한 또 다른 변화도 이루어질 수 있다.
도 5는 본 발명의 일 실시예에 따라 1차 서버(102)에서의 파일 백업 방법(500)에 관하여 도시하고 있다. 방법(500)은, 예컨대 재난 복구 동작의 백업 단계 동안 1차 서버(102)에 의하여 이용될 수 있다. 방법(500)이 도 1의 1차 서버(102)와 관련하여 설명되고 있지만, 방법(500)은 본 발명의 범위를 벗어나지 않는 범위에서 임의의 적합한 다른 플랫폼(들)에 의해서도 이용될 수 있다.
단계(502)에서 1차 서버(102)는 1차 데이터베이스(110)에서 모니터링되는 정보를 식별한다. 이는, 예컨대 1차 서비스부(306) 및/또는 2차 서비스부(308)에 의하여 실행되는 복사 작업의 활성화 과정을 포함할 수 있다. 이는 또한 그 복사 작업에 의하여 1차 데이터베이스(110)에서의 하나 이상의 파일, 폴더(200-202), 레지스트리, 및/또는 레지스트리 브랜치를 식별하는 태스크파일에 대한 액세스가 이루어지는 과정을 포함할 수 있다. 그 태스크파일에서의 파일, 폴더,(200-202), 레지스트리, 및/또는 레지스트리 브랜치는, 예컨대 시스템(100)의 사용자에 의하여 식별될 수 있다.
단계(504)에서 1차 서버(102)는 풀 백업(116) 동안 백업 시스템(112)으로 그식별된 정보를 전달한다. 이는, 예컨대 1차 서버(102)가 임의의 식별된 파일을 백업 시스템(112)으로 전달하는 과정을 포함할 수 있다. 이는 또한 1차 서버(102)가 임의의 선택된 폴더(200-202)의 내용을 백업 시스템(112)으로 전달하는 과정을 포함할 수도 있다.
단계(506)에서 1차 서버(102)는 하나 이상의 파일 이벤트의 발생을 검출한다. 파일 이벤트란, 예컨대 데이터베이스(110)의 기존 파일이나 새로운 파일에 대한 새로운 정보의 추가, 데이터베이스(110)의 기존 정보에 대한 변경, 또한 데이터베이스(110)에서 기존 정보의 삭제 등을 나타낼 수 있다. 파일 이벤트는, 단계(104)에서 수행된 풀 백업(116) 이전이나, 그 수행 동안, 그리고/또는 그 수행 이후에 발생할 수 있다. 일 실시예에서, 파일 이벤트는 파일 시스템 모니터(302)에 의하여 검출될 수 있다.
단계(508)에서 1차 서버(102)는 소정의 시간 주기 동안 파일 이벤트를 축적한다. 이는, 예컨대 파일 시스템 트랜잭션 서버(304)가 5초 윈도우 등과 같이 소정의 시간 주기 동안 파일 시스템 모니터(302)로부터 복수의 파일 이벤트를 수신하는 과정을 포함할 수 있다. 이는 또한 파일 시스템 트랜잭션 서버(304)가 그 5초 윈도우 동안 수신된 파일 이벤트들을 하나의 메시지 또는 일련의 메시지들로 결합하는 과정을 포함할 수 있다.
단계(510)에서 1차 서버(102)는 점증적 변경 사항(118)으로서 파일 이벤트를 2차 데이터베이스(114)에 전달한다. 이는, 예컨대 파일 시스템 트랜잭션 서버(304)가 그 하나 또는 일련의 메시지를 1차 서비스부(306)에 전달하는 과정과 1차서비스부(306)가 그 메시지를 2차 서비스부(308)에 전달하는 과정을 포함할 수 있다.
단계(512)에서 1차 서버(102)는 최종 풀 백업(116) 이후 시간이 임계치를 초과하는지 여부를 판정한다. 이는, 예컨대 1차 서버(102)가 그 최종 풀 백업(116) 이후의 시간이 사용자에 의하여 정해진 임계 시간 주기를 초과하는지 여부를 결정하는 과정을 포함할 수 있다. 최종 풀 백업(116) 이후의 시간이 임계 시간 주기를 초과하지 않는다면, 1차 서버(102)는 단계(506)로 복귀하여 추가적 파일 이벤트의 발생을 검출한다. 임계치를 초과한다면, 1차 서버(102)는 단계(504)로 복귀하여 또 다른 풀 백업(116)을 수행한다. 구체적 실시예에서, 1차 서버(102)는 하루에 한번 또는 일주일에 한번 풀 백업(116)을 수행할 수 있다.
도 5는 1차 서버(102)에서의 파일 백업에 관한 방법(500)의 일예를 도시하고 있지만, 본 발명의 범위를 벗어나지 않는 범위에서 방법(500)에 대하여 다양한 변화가 이루어질 수 있다. 예컨대, 1차 서버(102)는 1차 데이터베이스(102) 내의 정보 전체를 모니터링할 수 있다. 이러한 실시예에서, 1차 서버(102)는 단계(502)에서 모니터링되는 정보를 식별할 필요가 없을 수 있다. 또한, 1차 서버(102)는 단계(508)에서 파일 이벤트를 축적하지 않고서 파일 이벤트를 2차 서버(104)로 전달할 수 있다. 또한, 1차 서버(102)는 임의의 적합한 방법을 이용하여 풀 백업(116)을 수행할 때를 결정할 수 있으며, 최종 풀 백업(116) 이후의 시간이 임계 시간을 초과하는지 여부를 결정하는 것으로 제한되지 않는다.
도 6은 본 발명의 일 실시예에 따르는 2차 서버(104)에서의 파일 백업 방법(600)을 도시하는 예시적 흐름도이다. 방법(600)은, 예컨대 재난 복구 동작의 백업 단계 동안 2차 서버(104)에 의하여 이용될 수 있다. 방법(600)이 도 1의 2차 서버(104)와 관련하여 설명되고 있으나, 방법(600)은 본 발명의 범위를 벗어나지 않는 범위에서 임의의 기타 적합한 플랫폼(들)에 의하여 이용될 수 있다. 또한, 방법(600)은 단일의 1차 서버(102)와 관련하여 설명되고 있지만, 복수의 1차 서버(102)가 2차 서버(104)에 의하여 지원될 수 있다.
단계(602)에서 2차 서버(104)는 풀 백업(116) 동안 1차 데이터베이스(110)로부터 백업 정보를 수신한다. 이는, 예컨대 2차 서버(104)가 네트워크(106)를 통하여 1차 서버(102)로부터 정보를 수신하는 과정을 포함할 수 있다. 단계(604)에서 2차 서버(104)는 백업 시스템(112)에 백업 정보를 저장한다. 이는, 예컨대 백업 시스템(112)이 1차 데이터베이스(110)로부터의 백업 정보를 하나 이상의 컴퓨터 판독 가능 매체, 즉 자기 테이프나 콤팩트디스크 등에 기록하는 과정을 포함할 수 있다. 이는 또한 1차 서버(102)와 연관된 서버 폴더(254)에서 임의의 내용을 삭제하는 등에 의하여 2차 서버(104)가 2차 데이터베이스(114)를 초기화하는 과정을 포함할 수 있다.
단계(606)에서 2차 서버(104)는 1차 데이터베이스(110)로부터 점증적 변경 사항(118)을 수신한다. 이는, 예컨대 2차 서비스부(308)가 1차 서비스부(306)로부터의 점증적 변경 사항(118)을 포함하는 하나 이상의 메시지를 수신하는 과정을 포함할 수 있다. 점증적 변경 사항(118)은 단계(604)에서 백업 시스템(112)에서의 백업 정보 저장 이전, 저장 동안, 그리고/또는 그 이후에 수신될 수 있다. 2차 서버(104)는 단계(608)에서 현재의 데이터 저장소에 그 점증적 변경 사항(118)을 저장한다. 이는, 예컨대 2차 서비스부(308)가 2차 데이터베이스(114) 내의 “CURRENT" 타임스탬프 폴더(256) 내에 포함된 하나 이상의 파일에 그 점증적 변경 사항(118)을 저장하는 과정을 포함할 수 있다. 이는 또한 2차 서비스부(308)가 2차 데이터베이스(114)에서 그 점증적 변경 사항(118)을 저장할 하나 이상의 폴더(256-260) 및/또는 하나 이상의 파일을 생성하는 과정을 포함할 수도 있다.
단계(610)에서 2차 서버(104)는 트리거 이벤트가 발생하는지 여부를 판정한다. 트리거 이벤트는, 예컨대 소정의 시간 주기 경과나 사용자로부터 명령 수신을 나타낼 수 있다. 트리거 이벤트가 검출되지 않는다면, 2차 서버(104)는 단계(606)로 복귀하여 추가적 점증적 변경 사항(118)을 수신하고 저장할 수 있다. 2차 서버(104)가 트리거 이벤트를 검출하면, 2차 서버(104)는 앞으로 진행하여 점증적 백업(120)을 수행한다. 단계(612)에서 2차 서버(104)는 현재의 데이터 저장소를 닫고 이름을 변경한다. 이는, 예컨대 2차 서버(104)가 2차 데이터베이스(114)의 현재 타임스탬프 폴더(256)에 대해 날짜와 시간을 반영한 레이블을 포함하도록 이름을 변경하는 과정을 포함할 수 있다. 단계(614)에서 2차 서버(104)는 점증적 백업(120) 동안 백업 시스템(112)에 그 이름 변경된 데이터 저장소를 저장한다. 이는, 예컨대 2차 데이터베이스(114)가 그 이름 변경된 타임스탬프 폴더(256)의 정보를 백업 시스템(112)으로 전달하는 과정을 포함할 수 있다. 단계(616)에서 2차 서버(104)는 2차 데이터베이스(114) 내에 새로운 현재 데이터 저장소를 생성한다. 이는, 예컨대 2차 서버(104)가 “CURRENT"라는 이름을 갖는 새로운 타임스탬프 폴더(256)를 2차 데이터베이스(114) 내에 생성하는 과정을 포함할 수 있다. 2차 서버(104)는 단계(614)에서 발생한 점증적 백업(120) 이전, 그 시간 동안, 그리고/또는 그 이후에 새로운 데이터 저장소를 생성할 수 있다. 단계(618)에서 2차 서버(104)는 2차 데이터베이스(114)에서 그 이름 변경된 데이터 저장소를 삭제한다. 이는, 예컨대 2차 서버(104)가 데이터베이스(114)에서 그 이름 변경된 타임스탬프 폴더(256), 및 그 타임스탬프 폴더(256) 전체 내용을 삭제하는 과정을 포함할 수 있다. 2차 서버(104)는 단계(606)로 복귀하여 추가적 점증적 변경 사항(118)을 수신하여 새로운 데이터 저장소에 저장한다.
도 6은 2차 서버(104)에서의 파일 백업을 위한 방법(600)의 일예를 도시하고 있지만, 본 발명의 범위를 벗어나지 않는 범위에서 방법(600)에 대한 다양한 변경이 이루어질 수 있다. 예컨대, 또 다른 실시예에서, 2차 서버(104)는 점증적 백업(120)을 수행하지 않는다. 또한, 방법(600)은 2차 서버(104)가 각 점증적 백업(120) 동안 하나의 데이터 저장소를 백업 시스템(112)으로 복사하는 것으로 도시되어 있지만, 2차 서버(104)는 점증적 백업 동안 더 많은 데이터 저장소를 백업 시스템(112)으로 복사할 수 있다. 이러한 실시예에서, 방법(600)은 첫 번째 트리거 이벤트 이후에 새로운 데이터 저장소를 생성하고 두 번째 트리거 이벤트 이후에 점증적 백업(120)을 수행하도록 변경될 수 있다. 또한, 방법(600)은 백업 시스템(112)과 2차 데이터베이스(114)가 동일한 플랫폼, 예컨대 2차 서버(104)에 위치하는 것을 가정하고 있다. 또 다른 실시예에서, 백업 시스템(112) 및 2차 데이터베이스(114)는 서로 다른 플랫폼 상에 위치할 수 있고, 각 플랫폼은 도시된 단계들 일부씩을 수행할 수 있다.
도 7은 본 발명의 일 실시예에 따르는 2차 서버(104)에서 파일 복구 방법(700)을 나타내는 예시적 흐름도이다. 방법(700)은, 예컨대 재난 복구 동작의 복구 단계 동안 2차 서버(104)에 의하여 이용될 수 있다. 방법(700)은 도 1의 2차 서버(104)와 관련하여 설명될 수도 있지만, 방법(700)은 본 발명의 범위를 벗어나지 않는 범위에서 임의의 기타 적합한 플랫폼(들)에 의하여 이용될 수도 있다. 또한, 방법(700)은 단일의 1차 서버(102)와 관련하여 설명될 수도 있지만, 복수의 1차 서버(102)가 2차 서버(104)에 의하여 지원될 수도 있다.
2차 서버(104)는 단계(702)에서 시간 프레임을 식별한다. 시간 프레임은 1차 데이터베이스(110)가 복구될 시점을 나타낸다. 시간 프레임은, 예컨대 1차 데이터베이스(110) 고장 당시 또는 그 근접한 시점, 데이터베이스(110)의 고장 이전 시점, 그리고/또는 임의의 기타 적합한 시점을 나타낼 수 있다. 2차 서버(104)는 클라이언트(108)나 콘솔 애플리케이션(310)을 이용하는 사용자 등과 같은 사용자로부터, 또는 임의의 기타 적합한 방법으로 식별된 시간 프레임을 수신할 수 있다.
단계(704)에서 2차 서버(104)는 최종 풀 백업(116)으로부터의 백업 정보를 1차 데이터베이스(110)로 전달한다. 이는, 예컨대 백업 시스템(112)이 네트워크(106)를 통해서 최종 풀 백업(116)으로부터의 백업 정보를 1차 서버(102)로 전달하는 과정을 포함할 수 있다.
단계(706)에서 2차 서버(104)는 발생한 최종 풀 백업(116)이 그 식별된 시간을 초과하는지 판정한다. 이는, 예컨대 2차 서버(104)가 최종 풀 백업(116)이 시작된 시간을 단계(702)에서 수신되었던 식별된 시간과 비교하는 과정을 포함할 수 있다. 그 최종 풀 백업(116)과 관련된 시간이 그 식별된 시간을 넘는다면, 방법(700)이 종료된다. 2차 서버(104)는 1차 데이터베이스(110)를 복구하고자 어떠한 추가적 동작도 취할 필요가 없다.
그렇지 않다면, 단계(708)에서 2차 서버(104)는 최초 점증적 백업(120)을 선택한다. 단계(710)에서 2차 서버(104)는 그 선택된 점증적 백업(120)과 관련된 시간이 그 식별된 시간을 넘는지 판정한다. 그렇다면, 2차 서버(104)는 1차 데이터베이스(110)를 복구하고자 아무런 추가 동작도 취할 필요가 없으며, 방법(700)이 종료한다. 그렇지 않으면, 단계(712)에서 2차 서버(104)는 선택된 점증적 백업(120)에 포함된 점증적 변경 사항(118)을 1차 데이터베이스(110)으로 전달한다. 이는, 예컨대 백업 시스템(112)이 네트워크(106)를 통해서 그 선택된 점증적 백업(120)에서의 점증적 변경 사항(118)을 1차 서버(102)로 전달하는 과정을 포함할 수 있다.
단계(714)에서 2차 서버(104)는 백업 시스템(120)에서 처리되어야 할 더 많은 백업(120)이 남아있는지 판정한다. 추가적 점증적 백업(120)이 남아있다면, 단계(716)에서 2차 서버(104)는 그 다음 점증적 백업(120)을 선택한다. 이는, 예컨대 2차 서버(104)가 현재의 점증적 백업(120) 이후에 순차적으로 발생한 다음 점증적 백업(120)을 선택하는 과정을 포함할 수 있다. 그 다음 2차 서버(104)는 단계(710)로 복귀하여 새로이 선택된 점증적 백업(120)에서의 점증적 변경 사항(118)이 1차 데이터베이스(110)로 전달되어야 하는지 결정한다.
단계(714)에서 아무런 점증적 백업(120)도 남아있지 않다면, 단계(718)에서 2차 서버(104)는 2차 데이터베이스(114)의 최초 타임스탬프 폴더(256)를 선택한다. 이는, 예컨대 2차 서버(104)가 최초 타임스탬프 레이블을 갖는 타임스탬프 폴더(256)를 식별하는 과정을 포함할 수 있다. 이는 또한 2차 서버(104)가 1차 데이터베이스(110)와 관련된 서버 폴더(254)에서 최초 타임스탬프 폴더(256)를 식별하는 과정을 포함할 수 있다.
단계(720)에서 2차 서버(104)가 그 선택된 타임스탬프 폴더(256)와 연관된 시간이 식별된 시간을 넘는지 판정한다. 이는, 예컨대 2차 서버(104)가 그 선택된 타임스탬프 폴더(256)의 타임스탬프와 그 식별된 시간을 비교하는 과정을 포함할 수 있다. 그 식별된 시간이 선택된 타임스탬프 폴더(256)와 연관된 시간을 넘는다면, 방법(700)이 종료된다. 그렇지 않다면, 단계(722)에서 2차 서버(104)는 그 선택된 타임스탬프 폴더(256)에 포함된 점증적 변경 사항(118)을 1차 데이터베이스(110)로 전달한다. 이는, 예컨대 2차 서버(104)가 네트워크(106)를 통해서 점증적 변경 사항(118)을 1차 서버(102)로 전달하는 과정을 포함할 수 있다.
단계(724)에서 2차 서버(104)는 추가적 타임스탬프 폴더(256)가 2차 데이터베이스(114)에 존재하는지 판정한다. 처리되어야 할 타임스탬프 폴더(256)가 전혀 남아있지 않다면, 방법(700)이 종료된다. 추가적 타임스탬프 폴더(256)가 남아있다면, 단계(726)에서 2차 서버(104)는 다음 타임스탬프 폴더(256)를 선택한다. 이는, 예컨대 2차 서버(104)가 다음 순서의 타임스탬프를 갖는 타임스탬프 폴더(256)를 선택하는 과정을 포함할 수 있다. 그런 다음 2차 서버(104)는 단계(720)로 복귀하여 새로이 선택된 타임스탬프 폴더(256)를 처리한다.
도 7은 2차 서버(104)에서의 파일 복구 방법(700)의 일예를 도시하고 있지만, 본 발명의 범위를 벗어나지 않는 범위에서 방법(700)에 대한 다양한 변경이 이루어질 수 있다. 예컨대, 2차 서버(104)는 데이터베이스(110) 고장 발생 시점이나 그 근접 시점에 존재했던 상태가 되도록 자동으로 1차 데이터베이스(110)를 복구하도록 프로그램될 수 있다. 이러한 경우, 2차 서버(104)는 시간 프레임을 수신하거나 수신된 시간을 최종 풀 백업(116), 점증적 백업(118), 및 타임스탬프 폴더(256)와 연관된 시간에 비교할 필요가 없다. 또한, 백업 시스템(112) 및/또는 2차 데이터베이스(114)에 저장된 각 점증적 변경 사항(118)에 타임스탬프가 이루어져 점증적 변경 사항(118)이 발생한 시점을 보여줄 수도 있다. 이러한 실시예에서, 2차 서버(104)는 단계(702)에서 수신된 시간과 각 점증적 변경 사항(118)에 연관된 타임스탬프를 비교할 수 있다. 이와 같이, 2차 서버(104)는 점증적 백업(120) 및/또는 타임스탬프 폴더(256)에 포함된 점증적 변경 사항(118) 전체를 1차 서버(102)로 전달할 필요가 없다. 또한, 방법(700)은 백업 시스템(112) 및 2차 데이터베이스(114)가 동일한 플랫폼, 예컨대 2차 서버(104)에 존재하는 것으로 가정하고 있다. 또 다른 실시예에서, 백업 시스템(112) 및 2차 데이터베이스(114)는 서로 다른 플랫폼에 위치할 수 있으며, 각 플랫폼은 예시된 각 단계들의 일부씩을 수행할 수 있다. 또한, 도 7은 그 식별된 시간을 이용하여 정보가 1차 서버(102)로 전달되어야 하는지를 2차 서버(104)가 결정하는 것으로 도시하고 있다. 또 다른 실시예에서, 2차 서버(104)는 모든 적절한 정보를 1차 서버(102)에 전달할 수 있고, 1차 서버(102)가 그 식별된 시간을 이용하여 정보가 1차 서버(102)로 전달되어야 하는지를 결정한다.
도 8은 본 발명의 일 실시예에 따르는 1차 서버(102)에서의 파일 복구 방법(800)을 도시한 예시적 흐름도이다. 방법(800)은, 예컨대 재난 복구 동작의 복구 단계 동안 1차 서버(102)에 의하여 이용될 수 있다. 방법(800)은 도 1의 1차 서버(102)와 관련하여 설명되고 있지만, 방법(800)은 본 발명의 범위를 벗어나지 않는 범위에서 임의의 기타 다른 플랫폼(들)에 의해서 이용될 수도 있다.
1차 서버(102)는 단계(802)에서 백업 시스템(112)으로부터 백업 정보를 수신한다. 이는, 예컨대 1차 서버(102)가 1차 데이터베이스(110) 고장 이전에 발생했던 최종 풀 백업(116) 동안 저장된 정보를 수신하는 과정을 포함할 수 있다. 1차 서버(102)는 단계(804)에서 그 백업 정보를 1차 데이터베이스(110)에 저장한다. 이는, 예컨대 1차 서버(102)가 백업 시스템(112)으로부터 수신한 백업 정보를 1차 데이터베이스(110) 내의 적절한 폴더(200-202)에 저장하는 과정을 포함할 수 있다. 이는 최종 풀 백업(116) 시점이나 그 근접한 시점에 존재했던 상태로 1차 데이터베이스(110)를 복구한다.
1차 서버(102)는 단계(806)에서 백업 시스템(112)으로부터 하나 이상의 점증적 변경 사항(118)을 수신한다. 그 점증적 변경 사항(118)은, 예컨대 하나 이상의 점증적 백업(120) 동안 백업 시스템(112)에 저장될 수 있다. 1차 서버(102)는 단계(808)에서 1차 데이터베이스(110)에 저장된 정보에 대해 그 점증적 변경 사항(118)을 재현한다. 이는, 예컨대 1차 서버(102)가 점증적 변경 사항(118)을 수신하고 1차 데이터베이스(110)의 정보에 동일한 변경을 수행하는 과정을 포함할 수 있다. 이는 최종 점증적 백업(120) 시점이나 그 근접한 시점에 존재했던 상태로 1차 데이터베이스(110)를 복구시킨다.
1차 서버(102)는 단계(810)에서 2차 데이터베이스(114)로부터 하나 이상의 점증적 변경 사항(118)을 수신한다. 이는, 예컨대 2차 서버(104)가 네트워크(106)를 통해서 하나 이상의 타임스탬프 폴더(256)로부터의 점증적 변경 사항(118)을 1차 서버(102)에 전달하는 과정을 포함할 수 있다. 1차 서버(102)는 단계(812)에서 2차 데이터베이스(114)로부터 수신한 점증적 변경 사항(118)을 1차 데이터베이스(110)에 재현한다. 이는 1차 데이터베이스(110) 고장 시점이나 그 근접한 시점에 존재했던 상태로 1차 데이터베이스(110)를 복구시킨다.
도 8은 1차 서버(102)에서의 파일 복구 방법(800)의 일예를 도시하고 있지만, 본 발명의 범위를 벗어나지 않는 범위에서 방법(800)에 대해 다양한 변화가 이루어질 수 있다. 예컨대, 방법(800)은 데이터베이스 고장 시점이나 그 근접 시점에 존재했던 상태로 1차 데이터베이스(110)를 복구하는 것으로 도시되어 있다. 1차 서버(110)는 또한 데이터베이스(110) 고장 이전에 존재했던 상태로 복구될 수도 있다. 일 실시예에서, 1차 서버(102)는 단계(806-812)를 이용하지 않고서 단계(802-804)를 이용하여 1차 데이터베이스(110)를 복구시킬 수 있다. 1차 서버(102)는 단계(810-812)를 이용하지 않고서 단계(802-808)를 이용하여 1차 데이터베이스(110)를 복구시킬 수도 있다. 도시된 단계들 중 일부를 이용하는 또 다른 실시예도 본 발명의 범위를 벗어나지 않는 범위에서 이용될 수 있다.
본 발명이 바람직한 실시예 및 그와 관련된 일반적 방법의 관점에서 설명되었지만, 당업자라면 그 바람직한 실시예 및 방법에 대한 변화와 변형이 이루어질 수 있음을 알 것이다. 따라서, 전술한 바람직한 예시적 실시예에 관한 설명이 본 발명을 정의하거나 제한하는 것은 아니다. 첨부되는 청구범위에 의하여 정의되는 본 발명의 범위와 사상을 벗어나지 않는 범위에서 많은 다른 변화, 대체, 및 변경 또한 가능하다.

Claims (67)

  1. 재난 복구(disaster recovery) 방법으로서,
    제 1 데이터베이스의 저장소(storage)에 대하여 점증적 변경 사항(incremental change)- 상기 점증적 변경 사항은 제 2 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타냄 -을 전달(communicating)하는 단계와,
    적어도 하나의 백업 정보(backup information)- 상기 백업 정보는 백업 시스템에 미리 저장된 상기 제 2 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항을 수신하는 단계와,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 2 데이터베이스를 복구하는 단계를 포함하는 재난 복구 방법.
  2. 제 1 항에 있어서,
    상기 제 2 데이터베이스 복구 단계는
    상기 제 2 데이터베이스에 상기 백업 정보를 저장하는 단계와,
    상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 점증적 변경 사항을 구현하는 단계를 포함하는 재난 복구 방법.
  3. 제 1 항에 있어서,
    상기 점증적 변경 사항 수신 단계는
    상기 백업 시스템으로부터 제 1 점증적 변경 사항을 수신하는 단계와,
    상기 제 1 데이터베이스로부터 제 2 점증적 변경 사항을 수신하는 단계를 포함하는 재난 복구 방법.
  4. 제 3 항에 있어서,
    상기 제 2 데이터베이스 복구 단계는
    상기 제 2 데이터베이스에 상기 백업 정보를 저장하는 단계와,
    상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하는 단계와,
    상기 제 1 점증적 변경 사항 구현 이후에 상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현하는 단계를 포함하는 재난 복구 방법.
  5. 제 3 항에 있어서,
    복구 시간(restoration time)을 수신하는 단계를 더 포함하며,
    상기 제 2 데이터베이스 복구 단계는
    상기 제 2 데이터베이스에 상기 백업 정보를 저장하는 단계와,
    상기 제 1 점증적 변경 사항에 관련된 제 1 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하는 단계와,
    상기 제 2 점증적 변경 사항에 관련된 제 2 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현하는 단계를 포함하는 재난 복구 방법.
  6. 제 1 항에 있어서,
    상기 제 1 데이터베이스의 저장소에 대하여 상기 점증적 변경 사항을 전달하는 단계는
    적어도 하나의 파일 시스템에서 점증적 변경 사항을 검출하는 단계와,
    복수의 각 시간 윈도우(time window) 동안 검출된 복수의 점증적 변경 사항을 축적(accumulating)하는 단계와,
    각 시간 윈도우 이후 상기 제 1 데이터베이스의 저장소에 대하여 상기 축적된 점증적 변경 사항을 전달하는 단계를 포함하는 재난 복구 방법.
  7. 제 1 항에 있어서,
    상기 백업 정보로서 상기 제 2 데이터베이스로부터의 상기 적어도 일부 정보를 상기 백업 시스템의 저장소에 대하여 전달하는 단계를 더 포함하는 재난 복구 방법.
  8. 제 7 항에 있어서,
    상기 제 2 데이터베이스로부터의 상기 적어도 일부 정보를 상기 백업 시스템으로 전달하는 단계 이전에, 복사 작업(replication task)- 상기 복사 작업은 상기 제 1 데이터베이스의 저장소에 대하여 점증적 변경 사항을 검출하여 전달하도록 작동 가능함 -을 시작하는 단계를 더 포함하는 재난 복구 방법.
  9. 제 8 항에 있어서,
    태스크파일(taskfile)에 액세스하여 점증적 변경 사항에 관하여 모니터링될 제 1 파일과, 점증적 변경 사항에 관하여 모니터링될 제 1 폴더와, 점증적 변경 사항에 관하여 모니터링될 제 1 레지스트리와, 모니터링에서 배제될 제 2 파일과, 모니터링에서 배제될 제 2 폴더와, 모니터링에서 배제될 제 2 레지스트리 중 적어도 하나를 식별하는 단계를 더 포함하는 재난 복구 방법.
  10. 제 1 항에 있어서,
    상기 점증적 변경 사항은 상기 제 2 데이터베이스에서의 파일이나 레지스트리 중 적어도 일부에 대한 변경 사항을 나타내는 재난 복구 방법.
  11. 재난 복구 시스템으로서,
    적어도 하나의 컴퓨터 판독 가능 매체와,
    상기 적어도 하나의 컴퓨터 판독 가능 매체 상에 인코딩된 로직(logic)을 포함하되,
    상기 로직은 실행시
    제 1 데이터베이스의 저장소에 대하여 점증적 변경 사항- 상기 점증적 변경 사항은 제 2 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타냄 -을 전달하고,
    적어도 하나의 백업 정보- 상기 백업 정보는 백업 시스템에 미리 저장된 상기 제 2 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항을 수신하고,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 2 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  12. 제 11 항에 있어서,
    상기 로직은
    상기 제 2 데이터베이스에 상기 백업 정보를 저장하고,
    상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 점증적 변경 사항을 구현함으로써 상기 제 2 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  13. 제 11 항에 있어서,
    상기 로직은
    상기 백업 시스템으로부터 제 1 점증적 변경 사항을 수신하고,
    상기 제 1 데이터베이스로부터 제 2 점증적 변경 사항을 수신함으로써 상기점증적 변경 사항을 수신하도록 작동 가능한 재난 복구 시스템.
  14. 제 13 항에 있어서,
    상기 로직은
    상기 제 2 데이터베이스에 상기 백업 정보를 저장하고,
    상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하고,
    상기 제 1 점증적 변경 사항 구현 이후에 상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현함으로써 상기 제 2 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  15. 제 13 항에 있어서,
    상기 로직은 또한 복구 시간을 수신하도록 작동 가능하며,
    상기 로직은
    상기 제 2 데이터베이스에 상기 백업 정보를 저장하고,
    상기 제 1 점증적 변경 사항에 관련된 제 1 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하고,
    상기 제 2 점증적 변경 사항에 관련된 제 2 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 2 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현함으로써 상기 제 2 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  16. 제 11 항에 있어서,
    상기 로직은 또한 상기 백업 정보로서 상기 제 2 데이터베이스로부터의 상기 적어도 일부 정보를 상기 백업 시스템의 저장소에 대하여 전달하도록 작동 가능한 재난 복구 시스템.
  17. 재난 복구 시스템으로서,
    정보를 저장하도록 작동 가능한 제 1 데이터베이스와,
    집합적으로 작동 가능한 하나 이상의 프로세서를 포함하되,
    상기 하나 이상의 프로세서는
    제 2 데이터베이스의 저장소에 대하여 점증적 변경 사항- 상기 점증적 변경 사항은 상기 제 1 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타냄 -을 전달하고,
    적어도 하나의 백업 정보- 상기 백업 정보는 백업 시스템에 미리 저장된 상기 제 1 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항을 수신하고,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  18. 제 17 항에 있어서,
    상기 하나 이상의 프로세서는
    상기 제 1 데이터베이스에 상기 백업 정보를 저장하고,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 점증적 변경 사항을 구현함으로써 상기 제 1 데이터베이스를 복구하도록 집합적으로 작동 가능한 재난 복구 시스템.
  19. 제 17 항에 있어서,
    상기 하나 이상의 프로세서는
    상기 백업 시스템으로부터 제 1 점증적 변경 사항을 수신하고,
    상기 제 1 데이터베이스로부터 제 2 점증적 변경 사항을 수신함으로써 상기 점증적 변경 사항을 수신하도록 집합적으로 작동 가능한 재난 복구 시스템.
  20. 제 19 항에 있어서,
    상기 하나 이상의 프로세서는
    상기 제 1 데이터베이스에 상기 백업 정보를 저장하고,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하고,
    상기 제 1 점증적 변경 사항 구현 이후에 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현함으로써 상기 제 1 데이터베이스를 복구하도록 집합적으로 작동 가능한 재난 복구 시스템.
  21. 제 19 항에 있어서,
    상기 하나 이상의 프로세서는 또한 복구 시간을 수신하도록 작동 가능하며,
    상기 하나 이상의 프로세서는
    상기 제 1 데이터베이스에 상기 백업 정보를 저장하고,
    상기 제 1 점증적 변경 사항에 관련된 제 1 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하고,
    상기 제 2 점증적 변경 사항에 관련된 제 2 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현함으로써 제 1 데이터베이스를 복구하도록 집합적으로 작동 가능한 재난 복구 시스템.
  22. 제 17 항에 있어서,
    상기 하나 이상의 프로세서는 또한 상기 백업 정보로서 상기 제 1 데이터베이스로부터의 상기 적어도 일부 정보를 상기 백업 시스템의 저장소에 대하여 전달하도록 집합적으로 작동 가능한 재난 복구 시스템.
  23. 재난 복구 시스템으로서,
    적어도 하나의 제 1 파일 시스템 내의 정보에 대한 복수의 점증적 변경 사항을 검출하도록 작동 가능한 파일 시스템 모니터와,
    상기 복수의 점증적 변경 사항을 수신하고 소정의 시간 주기 동안 수신된 상기 복수의 점증적 변경 사항을 축적하도록 작동 가능한 트랜잭션 축적기(transaction accumulator)와,
    복사 작업- 상기 복사 작업은 상기 축적된 점증적 변경 사항을 수신하고 상기 축적된 점증적 변경 사항을 제 2 파일 시스템의 저장소에 대하여 전달하도록 작동 가능함 -을 실행하도록 작동 가능한 서비스부를 포함하되,
    상기 적어도 하나의 백업 정보- 상기 백업 정보는 백업 시스템에 미리 저장된 상기 적어도 하나의 제 1 파일 시스템으로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항을 이용하여 상기 적어도 하나의 제 1 파일 시스템이 복구될 수 있는 재난 복구 시스템.
  24. 재난 복구 시스템으로서,
    제 1 데이터베이스의 저장소에 대하여 점증적 변경 사항- 상기 점증적 변경 사항은 제 2 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타냄 -을 전달하는 수단과,
    적어도 하나의 백업 정보- 상기 백업 정보는 백업 시스템에 미리 저장된 상기 제 2 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경사항을 수신하는 수단과,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 2 데이터베이스를 복구하는 수단을 포함하는 재난 복구 시스템.
  25. 재난 복구 방법으로서,
    제 1 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 수신하는 단계와,
    상기 점증적 변경 사항을 제 2 데이터베이스에 저장하는 단계와,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하는 단계를 포함하되,
    상기 제 1 데이터베이스는 상기 백업 정보- 상기 백업 정보는 상기 백업 시스템에 미리 저장된 상기 제 1 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 복구되는 재난 복구 방법.
  26. 제 25 항에 있어서,
    상기 점증적 변경 사항은 제 1 점증적 변경 사항을 포함하며,
    상기 방법은
    제 2 점증적 변경 사항을 수신하는 단계와,
    상기 제 2 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하는 단계와,
    상기 백업 시스템에 저장하도록 상기 제 2 점증적 변경 사항을 전달하는 단계를 더 포함하되, 상기 백업 시스템은 상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 제 2 점증적 변경 사항을 전달하도록 작동 가능한 재난 복구 방법.
  27. 제 26 항에 있어서,
    상기 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하는 단계는 상기 제 1 점증적 변경 사항을 제 1 폴더에 저장하는 단계를 포함하며,
    상기 백업 시스템에 저장하도록 상기 제 2 점증적 변경 사항을 전달하는 단계는 상기 백업 시스템에 저장하기 위하여 상기 제 2 점증적 변경 사항을 포함하는 제 2 폴더의 적어도 일부를 전달하는 단계를 포함하는 재난 복구 방법.
  28. 제 27 항에 있어서,
    상기 백업 시스템에 저장하기 위하여 상기 제 2 폴더의 적어도 일부를 전달하는 단계 이전에 상기 제 2 폴더의 이름을 구이름에서 새로운 이름- 상기 새로운 이름은 타임스탬프(timestamp)를 포함함 -으로 변경하는 단계와,
    상기 제 2 폴더의 상기 구이름을 갖는 상기 제 1 폴더를 생성하는 단계를 더 포함하는 재난 복구 방법.
  29. 제 25 항에 있어서,
    상기 점증적 변경 사항은 상기 제 1 데이터베이스 내의 제 1 파일 시스템 폴더- 상기 제 1 파일 시스템 폴더는 제 1 드라이브 폴더 내에 위치함 -에 위치하며 파일 이름을 갖는 제 1 파일과 연관되고,
    상기 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하는 단계는 제 2 파일 시스템 폴더- 상기 제 2 파일 시스템 폴더는 상기 제 1 파일 시스템 폴더와 연관되고, 상기 제 2 드라이브 폴더와 연관된 제 2 드라이브 폴더 내에 위치함 -에 위치하며 상기 파일 이름을 갖는 제 2 파일에 상기 점증적 변경 사항을 저장하는 단계를 포함하는 재난 복구 방법.
  30. 제 29 항에 있어서,
    상기 점증적 변경 사항을 상기 제 2 파일에 저장하는 단계는
    상기 제 2 드라이브 시스템 폴더가 존재하는지 판정하는 단계와,
    상기 제 2 드라이브 시스템 폴더가 존재하지 않는 경우 상기 제 2 드라이브 시스템 폴더를 생성하는 단계와,
    상기 제 2 파일 시스템 폴더가 존재하는지 판정하는 단계와,
    상기 제 2 파일 시스템 폴더가 존재하지 않는 경우 상기 제 2 파일 시스템 폴더를 생성하는 단계와,
    상기 제 2 파일이 존재하는지 판정하는 단계와,
    상기 파일이 존재하지 않는 경우 상기 제 2 파일을 생성하는 단계를 포함하는 재난 복구 방법.
  31. 제 25 항에 있어서,
    상기 점증적 변경 사항은 복수의 타임스탬프 폴더 중 하나에 저장되며,
    상기 타임스탬프 폴더 중 하나는 현재 시간 주기를 나타내고, 나머지 타임스탬프 폴더 중 적어도 하나는 적어도 하나의 이전 시간 주기를 나타내는 재난 복구 방법.
  32. 제 31 항에 있어서,
    복구 시간을 수신하는 단계를 더 포함하며,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하는 단계는
    상기 점증적 변경 사항이 저장된 타임스탬프 폴더와 관련된 시간이 상기 복구 시간을 초과하는지 판정하는 단계와,
    상기 타임스탬프 폴더와 관련된 상기 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하는 단계를 포함하는 재난 복구 방법.
  33. 제 25 항에 있어서,
    상기 백업 정보를 수신하는 단계와,
    상기 백업 시스템에 상기 백업 정보를 저장하는 단계를 더 포함하는 재난 복구 방법.
  34. 제 25 항에 있어서,
    상기 점증적 변경 사항은 상기 제 1 데이터베이스 내의 파일이나 레지스트리 중 적어도 일부에 대한 변경 사항을 나타내는 재난 복구 방법.
  35. 재난 복구 시스템으로서,
    적어도 하나의 컴퓨터 판독 가능 매체와,
    상기 적어도 하나의 컴퓨터 판독 가능 매체 상에 인코딩된 로직을 포함하되,
    상기 로직은 실행시
    제 1 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 수신하고,
    상기 점증적 변경 사항을 제 2 데이터베이스에 저장하고,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하도록 작동 가능하되,
    상기 제 1 데이터베이스는 상기 백업 정보- 상기 백업 정보는 상기 백업 시스템에 미리 저장된 상기 제 1 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 복구되는 재난 복구 시스템.
  36. 제 35 항에 있어서,
    상기 점증적 변경 사항은 제 1 점증적 변경 사항을 포함하며,
    상기 로직은 또한
    제 2 점증적 변경 사항을 수신하고,
    상기 제 2 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하고,
    상기 백업 시스템에 저장하도록 상기 제 2 점증적 변경 사항을 전달하도록 작동 가능하되,
    상기 백업 시스템은 상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 제 2 점증적 변경 사항을 전달하도록 작동 가능한 재난 복구 시스템.
  37. 제 36 항에 있어서,
    상기 로직은 상기 제 1 점증적 변경 사항을 상기 제 2 데이터베이스의 제 1 폴더에 저장하도록 작동 가능하고,
    상기 로직은 상기 제 2 점증적 변경 사항을 상기 제 2 데이터베이스의 제 2 폴더에 저장하도록 작동 가능하고,
    상기 로직은, 상기 백업 시스템에 저장하기 위하여 상기 제 2 폴더의 적어도 일부를 전달함으로써, 상기 백업 시스템에 저장하기 위하여 상기 제 2 점증적 변경 사항을 전달하도록 작동 가능하고,
    상기 로직은 또한
    상기 백업 시스템에 저장하기 위하여 상기 제 2 폴더의 적어도 일부를 전달하는 단계 이전에 상기 제 2 폴더의 이름을 구이름에서 새로운 이름- 상기 새로운 이름은 타임스탬프를 포함함 -으로 변경하고,
    상기 제 2 폴더의 상기 구이름을 갖는 상기 제 1 폴더를 생성하도록 작동 가능한 재난 복구 시스템.
  38. 제 35 항에 있어서,
    상기 점증적 변경 사항은 상기 제 1 데이터베이스 내의 제 1 파일 시스템 폴더- 상기 제 1 파일 시스템 폴더는 제 1 드라이브 폴더 내에 위치함 -에 위치하며 파일 이름을 갖는 제 1 파일과 연관되고,
    상기 로직은
    상기 제 1 드라이브 시스템 폴더와 관련된 제 2 드라이브 시스템 폴더가 상기 제 2 데이터베이스 내에 존재하는지 판정하고,
    상기 제 2 드라이브 시스템 폴더가 존재하지 않는 경우 상기 제 2 드라이브 시스템 폴더를 생성하고,
    상기 제 1 파일 시스템 폴더와 관련된 제 2 파일 시스템 폴더가 상기 제 2 데이터베이스 내에 존재하는지 판정하고,
    상기 제 2 파일 시스템 폴더가 존재하지 않는 경우 상기 제 2 파일 시스템 폴더를 생성하고,
    상기 파일 이름을 갖는 제 2 파일이 존재하는지 판정하고,
    상기 제 2 파일이 존재하지 않는 경우 상기 제 2 파일을 생성하고,
    상기 제 2 파일에 상기 점증적 변경 사항을 저장하도록 작동 가능한재난 복구 시스템.
  39. 제 35 항에 있어서,
    상기 점증적 변경 사항은 복수의 타임스탬프 폴더- 상기 타임스탬프 폴더 중 하나는 현재 시간 주기를 나타내고, 나머지 타임스탬프 폴더 중 적어도 하나는 적어도 하나의 이전 시간 주기를 나타냄 - 중 적어도 하나에 저장되고,
    상기 로직은 복구 시간을 수신하도록 작동 가능하고,
    상기 로직은, 상기 점증적 변경 사항이 저장된 타임스탬프 폴더와 관련된 시간이 상기 복구 시간을 초과하는지 판정하고, 상기 타임스탬프 폴더와 관련된 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 1 데이터베이스를 복구하는데 이용하기 위하여 상기 점증적 변경 사항을 전달함으로써, 상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하도록 작동 가능한 재난 복구 시스템.
  40. 제 35 항에 있어서,
    상기 로직은 또한
    상기 백업 정보를 수신하고,
    상기 백업 시스템에 상기 백업 정보를 저장하도록 작동 가능한 재난 복구 시스템.
  41. 재난 복구 시스템으로서,
    점증적 변경 사항을 저장하도록 작동 가능한 제 1 데이터베이스와,
    집합적으로 작동 가능한 하나 이상의 프로세서를 포함하되,
    상기 하나 이상의 프로세서는
    제 2 데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타내는 상기 점증적 변경 사항을 수신하고,
    상기 점증적 변경 사항을 상기 제 1 데이터베이스에 저장하고,
    상기 제 2 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하도록 집합적으로 작동 가능하되,
    상기 제 2 데이터베이스는 상기 백업 정보- 상기 백업 정보는 상기 백업 시스템에 미리 저장된 상기 제 1 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 복구되는 재난 복구 시스템.
  42. 제 41 항에 있어서,
    상기 점증적 변경 사항은 제 1 점증적 변경 사항을 포함하며,
    상기 하나 이상의 프로세서는 또한
    제 2 점증적 변경 사항을 수신하고,
    상기 제 2 점증적 변경 사항을 상기 제 1 데이터베이스에 저장하고,
    상기 백업 시스템에 저장하도록 상기 제 2 점증적 변경 사항을 전달하도록 집합적으로 작동 가능하되,
    상기 백업 시스템은 상기 제 2 데이터베이스 복구에 이용하기 위하여 상기 제 2 점증적 변경 사항을 전달하도록 작동 가능한 재난 복구 시스템.
  43. 제 42 항에 있어서,
    상기 하나 이상의 프로세서는 상기 제 1 점증적 변경 사항을 상기 제 1 데이터베이스의 제 1 폴더에 저장하도록 집합적으로 작동 가능하고,
    상기 하나 이상의 프로세서는 상기 제 2 점증적 변경 사항을 상기 제 1 데이터베이스의 제 2 폴더에 저장하도록 집합적으로 작동 가능하고,
    상기 하나 이상의 프로세서는, 상기 백업 시스템에 저장하기 위하여 상기 제 2 폴더의 적어도 일부를 전달함으로써, 상기 백업 시스템에 저장하기 위하여 상기 제 2 점증적 변경 사항을 전달하도록 집합적으로 작동 가능하고,
    상기 하나 이상의 프로세서는 또한
    상기 백업 시스템에 저장하기 위하여 상기 제 2 폴더의 적어도 일부를 전달하는 단계 이전에 상기 제 2 폴더의 이름을 구이름에서 새로운 이름- 상기 새로운 이름은 타임스탬프를 포함함 -으로 변경하고,
    상기 제 2 폴더의 상기 구이름을 갖는 상기 제 1 폴더를 생성하도록 집합적으로 작동 가능한 재난 복구 시스템.
  44. 제 41 항에 있어서,
    상기 점증적 변경 사항은 상기 제 2 데이터베이스 내의 제 1 파일 시스템 폴더- 상기 제 1 파일 시스템 폴더는 제 1 드라이브 폴더 내에 위치함 -에 위치하며 파일 이름을 갖는 제 1 파일과 연관되고,
    상기 하나 이상의 프로세서는
    상기 제 1 드라이브 시스템 폴더와 관련된 제 2 드라이브 시스템 폴더가 상기 제 1 데이터베이스 내에 존재하는지 판정하고,
    상기 제 2 드라이브 시스템 폴더가 존재하지 않는 경우 상기 제 2 드라이브 시스템 폴더를 생성하고,
    상기 제 1 파일 시스템 폴더와 관련된 제 2 파일 시스템 폴더가 상기 제 1 데이터베이스 내에 존재하는지 판정하고,
    상기 제 2 파일 시스템 폴더가 존재하지 않는 경우 상기 제 2 파일 시스템 폴더를 생성하고,
    상기 파일 이름을 갖는 제 2 파일이 존재하는지 판정하고,
    상기 제 2 파일이 존재하지 않는 경우 상기 제 2 파일을 생성하고,
    상기 제 2 파일에 상기 점증적 변경 사항을 저장함으로써 상기 점증적 변경 사항을 저장하도록 집합적으로 작동 가능한 재난 복구 시스템.
  45. 제 41 항에 있어서,
    상기 점증적 변경 사항은 복수의 타임스탬프 폴더- 상기 타임스탬프 폴더 중 하나는 현재 시간 주기를 나타내고, 나머지 타임스탬프 폴더 중 적어도 하나는 적어도 하나의 이전 시간 주기를 나타냄 - 중 적어도 하나에 저장되고,
    상기 하나 이상의 프로세서는 복구 시간을 수신하도록 집합적으로 작동 가능하고,
    상기 하나 이상의 프로세서는, 상기 점증적 변경 사항이 저장된 타임스탬프 폴더와 관련된 시간이 상기 복구 시간을 초과하는지 판정하고, 상기 타임스탬프 폴더와 관련된 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 2 데이터베이스를 복구하는데 이용하기 위하여 상기 점증적 변경 사항을 전달함으로써, 상기 제 2 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하도록 집합적으로 작동 가능한 재난 복구 시스템.
  46. 제 41 항에 있어서,
    상기 하나 이상의 프로세서는 또한
    상기 백업 정보를 수신하고,
    상기 백업 시스템에 상기 백업 정보를 저장하도록 집합적으로 작동 가능한 재난 복구 시스템.
  47. 재난 복구 시스템으로서,
    적어도 하나의 제 1 파일 시스템에서의 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 수신하도록 작동 가능하고, 또한 상기 점증적 변경 사항을 제 2 파일 시스템에 저장하도록 작동 가능하며, 또한 상기 적어도 하나의 제 1 파일 시스템을 복구하는데 이용하기 위하여 상기 점증적 변경 사항을 전달하도록 작동 가능한 복사 작업을 실행하도록 작동 가능한 서비스부로서, 상기 적어도 하나의 제 1 파일 시스템은 백업 정보- 상기 백업 정보는 상기 백업 시스템에 미리 저장된 상기 적어도 하나의 제 1 파일 시스템으로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항 중 적어도 하나를 이용해서 복구되는 서비스부와,
    상기 복사 작업을 제어하도록 작동 가능한 인터페이스를 포함하는 재난 복구 시스템.
  48. 재난 복구 시스템으로서,
    데이터베이스의 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 수신하는 수단과,
    상기 점증적 변경 사항을 저장하는 수단과,
    상기 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항을 전달하는 수단을 포함하되,
    상기 데이터베이스는 상기 백업 정보- 상기 백업 정보는 상기 백업 시스템에 미리 저장된 상기 데이터베이스로부터의 적어도 일부 정보를 포함함 -와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 복구되는 재난 복구 시스템.
  49. 재난 복구 방법으로서,
    제 1 데이터베이스로부터의 적어도 일부 정보를 포함하는 백업 정보를 수신하는 단계와,
    상기 백업 정보를 백업 시스템에 저장하는 단계와,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 제 2 데이터베이스로부터 수신하는 단계와,
    상기 점증적 변경 사항을 상기 백업 시스템에 저장하는 단계와,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항과 상기 백업 정보를 전달하는 단계를 포함하는 재난 복구 방법.
  50. 제 49 항에 있어서,
    상기 제 2 데이터베이스 내에 저장하기 위하여 상기 점증적 변경 사항을 수신하는 단계와,
    상기 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하는 단계와,
    상기 백업 시스템에 저장하기 위하여 상기 제 2 데이터베이스로부터 상기 점증적 변경 사항을 전달하는 단계를 더 포함하는 재난 복구 방법.
  51. 재난 복구 시스템으로서,
    적어도 하나의 컴퓨터 판독 가능 매체와,
    상기 적어도 하나의 컴퓨터 판독 가능 매체 상에 인코딩된 로직을 포함하되,
    상기 로직은 실행시
    제 1 데이터베이스로부터의 적어도 일부 정보를 포함하는 백업 정보를수신하고,
    상기 백업 정보를 백업 시스템에 저장하고,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 상기 점증적 변경 사항을 제 2 데이터베이스로부터 수신하고,
    상기 점증적 변경 사항을 상기 백업 시스템에 저장하고,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항과 상기 백업 정보를 전달하도록 작동 가능한 재난 복구 시스템.
  52. 제 51 항에 있어서,
    상기 로직은 또한
    상기 제 2 데이터베이스에 저장하기 위하여 상기 점증적 변경 사항을 수신하고,
    상기 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하고,
    상기 백업 시스템에 저장하기 위하여 상기 제 2 데이터베이스로부터의 상기 점증적 변경 사항을 전달하도록 작동 가능한 재난 복구 시스템.
  53. 재난 복구 시스템으로서,
    백업 정보를 저장하도록 작동 가능한 백업 시스템과,
    집합적으로 작동 가능한 하나 이상의 프로세서로서,
    상기 하나 이상의 프로세서는
    제 1 데이터베이스로부터의 적어도 일부 정보를 포함하는 백업 정보를 수신하고,
    상기 백업 정보를 백업 시스템에 저장하고,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 상기 점증적 변경 사항을 제 2 데이터베이스로부터 수신하고,
    상기 점증적 변경 사항을 상기 백업 시스템에 저장하고,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항과 상기 백업 정보를 전달하도록 집합적으로 작동 가능한 재난 복구 시스템.
  54. 제 53 항에 있어서,
    상기 제 2 데이터베이스를 더 포함하고,
    상기 하나 이상의 프로세서는 또한
    상기 제 2 데이터베이스에 저장하기 위하여 상기 점증적 변경 사항을 수신하고,
    상기 점증적 변경 사항을 상기 제 2 데이터베이스에 저장하고,
    상기 백업 시스템에 저장하기 위하여 상기 제 2 데이터베이스로부터의 상기 점증적 변경 사항을 전달하도록 집합적으로 작동 가능한 재난 복구 시스템.
  55. 재난 복구 시스템으로서,
    제 1 데이터베이스로부터의 적어도 일부 정보를 포함하는 백업 정보를 수신하는 수단과,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 상기 점증적 변경 사항을 제 2 데이터베이스로부터 수신하는 수단과,
    상기 백업 정보와 상기 점증적 변경 사항을 저장하는 수단과,
    상기 제 1 데이터베이스 복구에 이용하기 위하여 상기 점증적 변경 사항과 상기 백업 정보를 전달하는 수단을 포함하는 재난 복구 시스템.
  56. 재난 복구 방법으로서,
    백업 정보로서 제 1 데이터베이스로부터의 적어도 일부 정보를 백업 시스템으로 복사하는 단계와,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 제 2 데이터베이스에 저장하는 단계와,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하는 단계를 포함하는 재난 복구 방법.
  57. 제 56 항에 있어서,
    상기 점증적 변경 사항은 제 1 점증적 변경 사항을 포함하고,
    상기 방법은 상기 제 2 데이터베이스로부터 상기 백업 시스템으로 제 2 점증적 변경 사항을 복사하는 단계를 더 포함하되,
    상기 제 1 데이터베이스 복구 단계는 상기 백업 정보, 상기 제 2 데이터베이스에 저장된 상기 제 1 점증적 변경 사항, 및 상기 백업 시스템에 저장된 상기 제 2 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하는 단계를 포함하는 재난 복구 방법.
  58. 제 57 항에 있어서,
    복구 시간을 수신하는 단계를 더 포함하되,
    상기 제 1 데이터베이스 복구 단계는
    상기 백업 정보를 상기 제 1 데이터베이스에 저장하는 단계와,
    상기 백업 시스템에 저장된 상기 제 2 점증적 변경 사항과 관련된 제 1 시간이 상기 복구 시간을 초과하는지 판정하는 단계와,
    상기 제 1 시간이 상기 복구 시간을 초과하지 않을 경우 상기 제 1 데이터베이스의 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현하는 단계와,
    상기 제 2 데이터베이스에 저장된 상기 제 1 점증적 변경 사항과 관련된 제 2 시간이 상기 복구 시간을 초과하는지 판정하는 단계와,
    상기 제 2 시간이 상기 복구 시간을 초과하지 않을 경우 상기 제 1 데이터베이스의 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현하는 단계를 포함하는 재난 복구 방법.
  59. 제 56 항에 있어서,
    상기 제 2 데이터베이스 및 상기 백업 시스템이 동일한 플랫폼 상에 존재하는 재난 복구 방법.
  60. 재난 복구 시스템으로서,
    적어도 하나의 컴퓨터 판독 가능 매체와,
    상기 적어도 하나의 컴퓨터 판독 가능 매체 상에 인코딩된 로직을 포함하되,
    상기 로직은 실행시
    백업 정보로서 제 1 데이터베이스로부터의 적어도 일부 정보를 백업 시스템으로 복사하고,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 제 2 데이터베이스에 저장하고,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  61. 제 60 항에 있어서,
    상기 점증적 변경 사항은 제 1 점증적 변경 사항을 포함하고,
    상기 로직은 또한 상기 제 2 데이터베이스로부터의 제 2 점증적 변경 사항을 상기 백업 시스템으로 복사하도록 작동 가능하고,
    상기 로직은 상기 백업 정보, 상기 제 2 데이터베이스에 저장된 상기 제 1 점증적 변경 사항, 및 상기 백업 시스템에 저장된 상기 제 2 점증적 변경 사항 중적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  62. 제 61 항에 있어서,
    상기 로직은 또한 복구 시간을 수신하도록 작동 가능하고,
    상기 로직은
    상기 백업 정보를 상기 제 1 데이터베이스에 저장하고,
    상기 백업 시스템에 저장된 상기 제 2 점증적 변경 사항과 관련된 제 1 시간이 상기 복구 시간을 초과하는지 판정하고,
    상기 제 1 시간이 상기 복구 시간을 초과하지 않는 경우 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현하고,
    상기 제 2 데이터베이스에 저장된 상기 제 1 점증적 변경 사항과 관련된 시간이 상기 복구 시간을 초과하는지 판정하고,
    상기 제 2 시간이 상기 복구 시간을 초과하지 않을 경우 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현함으로써 상기 제 1 데이터베이스를 복구하도록 작동 가능한 재난 복구 시스템.
  63. 제 60 항에 있어서,
    상기 제 2 데이터베이스와 상기 백업 시스템이 동일한 플랫폼 상에 존재하는재난 복구 시스템.
  64. 재난 복구 시스템으로서,
    정보를 저장하도록 작동 가능한 제 1 데이터베이스와,
    상기 제 1 데이터베이스로부터의 적어도 일부 정보를 포함하는 백업 정보를 저장하도록 작동 가능한 백업 시스템과,
    상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대한 변경 사항을 나타내는 점증적 변경 사항을 저장하도록 작동 가능한 제 2 데이터베이스와,
    상기 백업 정보와 상기 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하도록 집합적으로 작동 가능한 하나 이상의 프로세서를 포함하는 재난 복구 시스템.
  65. 제 64 항에 있어서,
    상기 점증적 변경 사항은 제 1 점증적 변경 사항을 포함하고,
    상기 하나 이상의 프로세서는 또한 상기 제 2 데이터베이스로부터의 제 2 점증적 변경 사항을 상기 백업 시스템으로 복사하도록 집합적으로 작동 가능하고,
    상기 하나 이상의 프로세서는 상기 백업 정보, 상기 제 2 데이터베이스에 저장된 제 1 점증적 변경 사항, 및 상기 백업 시스템에 저장된 상기 제 2 점증적 변경 사항 중 적어도 하나를 이용하여 상기 제 1 데이터베이스를 복구하도록 집합적으로 작동 가능한 재난 복구 시스템.
  66. 제 65 항에 있어서,
    상기 하나 이상의 프로세서는 또한 복구 시간을 수신하도록 집합적으로 작동 가능하고,
    상기 하나 이상의 프로세서는
    상기 백업 정보를 상기 제 1 데이터베이스에 저장하고,
    상기 백업 시스템에 저장된 상기 제 2 점증적 변경 사항이 상기 복구 시간을 초과하는지 판정하고,
    상기 제 1 시간이 상기 복구 시간을 초과하지 않을 경우 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 2 점증적 변경 사항을 구현하고,
    상기 제 2 데이터베이스에 저장된 상기 제 1 점증적 변경 사항이 상기 복구 시간을 초과하는지 판정하고,
    상기 제 2 시간이 상기 복구 시간을 초과하지 않을 경우 상기 제 1 데이터베이스의 상기 적어도 일부 정보에 대하여 상기 제 1 점증적 변경 사항을 구현함으로써 상기 제 1 데이터베이스를 복구하도록 집합적으로 작동 가능한 재난 복구 시스템.
  67. 제 64 항에 있어서,
    상기 제 2 데이터베이스와 상기 백업 시스템이 동일한 플랫폼 상에 존재하는재난 복구 시스템.
KR10-2004-7016829A 2002-04-19 2003-04-11 재난 복구 방법 및 시스템 KR20050009696A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US37394302P 2002-04-19 2002-04-19
US60/373,943 2002-04-19
US10/397,511 US6981177B2 (en) 2002-04-19 2003-03-25 Method and system for disaster recovery
US10/397,511 2003-03-25
PCT/US2003/011204 WO2003101704A1 (en) 2002-05-29 2003-04-10 Diamond tool with a multi-tipped diamond

Publications (1)

Publication Number Publication Date
KR20050009696A true KR20050009696A (ko) 2005-01-25

Family

ID=29218955

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2004-7016829A KR20050009696A (ko) 2002-04-19 2003-04-11 재난 복구 방법 및 시스템

Country Status (10)

Country Link
US (1) US6981177B2 (ko)
EP (1) EP1497729B1 (ko)
JP (1) JP2005523517A (ko)
KR (1) KR20050009696A (ko)
CN (1) CN1659522A (ko)
AU (1) AU2003220696A1 (ko)
BR (1) BR0309363A (ko)
CA (1) CA2482942A1 (ko)
IL (1) IL164618A0 (ko)
WO (1) WO2003090082A2 (ko)

Families Citing this family (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7346623B2 (en) 2001-09-28 2008-03-18 Commvault Systems, Inc. System and method for generating and managing quick recovery volumes
US7299264B2 (en) * 2002-05-07 2007-11-20 Hewlett-Packard Development Company, L.P. System and method for monitoring a connection between a server and a passive client device
US7222140B2 (en) * 2002-08-28 2007-05-22 International Business Machines Corporation Method for improving the recovery time from a lost database in a VTS automation system
AU2003279847A1 (en) 2002-10-07 2004-05-04 Commvault Systems, Inc. System and method for managing stored data
US8336044B2 (en) * 2002-10-09 2012-12-18 Rpx Corporation Method and system for deploying a software image
US7024581B1 (en) * 2002-10-09 2006-04-04 Xpoint Technologies, Inc. Data processing recovery system and method spanning multiple operating system
US7318116B2 (en) * 2002-11-08 2008-01-08 International Business Machines Corporation Control path failover in an automated data storage library
US7739240B2 (en) * 2002-12-09 2010-06-15 Hewlett-Packard Development Company, L.P. Replication and replica management in a wide area file system
JP3974538B2 (ja) 2003-02-20 2007-09-12 株式会社日立製作所 情報処理システム
US7769722B1 (en) * 2006-12-08 2010-08-03 Emc Corporation Replication and restoration of multiple data storage object types in a data network
JP4165747B2 (ja) 2003-03-20 2008-10-15 株式会社日立製作所 記憶システム、制御装置及び制御装置のプログラム
US7661026B2 (en) * 2003-05-27 2010-02-09 International Business Machines Corporation Access by distributed computers to a same hardware resource
US7165082B1 (en) * 2003-10-31 2007-01-16 Veritas Operating Corporation Incremental method for backup of email messages
CA2544064C (en) 2003-11-13 2012-02-07 Commvault Systems, Inc. System and method for performing integrated storage operations
CA2548542C (en) 2003-11-13 2011-08-09 Commvault Systems, Inc. System and method for performing a snapshot and for restoring data
JP4477370B2 (ja) * 2004-01-30 2010-06-09 株式会社日立製作所 データ処理システム
JP4551096B2 (ja) * 2004-02-03 2010-09-22 株式会社日立製作所 ストレージサブシステム
US7251749B1 (en) * 2004-02-12 2007-07-31 Network Appliance, Inc. Efficient true image recovery of data from full, differential, and incremental backups
US7536593B2 (en) * 2004-03-05 2009-05-19 International Business Machines Corporation Apparatus, system, and method for emergency backup
US8359491B1 (en) 2004-03-30 2013-01-22 Symantec Operating Corporation Disaster recovery rehearsal using copy on write
US7814056B2 (en) * 2004-05-21 2010-10-12 Computer Associates Think, Inc. Method and apparatus for data backup using data blocks
WO2005114420A2 (en) * 2004-05-21 2005-12-01 Computer Associates Think, Inc. Method and apparatus for storage backup
US7979656B2 (en) * 2004-06-01 2011-07-12 Inmage Systems, Inc. Minimizing configuration changes in a fabric-based data protection solution
US7698401B2 (en) * 2004-06-01 2010-04-13 Inmage Systems, Inc Secondary data storage and recovery system
US8949395B2 (en) * 2004-06-01 2015-02-03 Inmage Systems, Inc. Systems and methods of event driven recovery management
US8055745B2 (en) * 2004-06-01 2011-11-08 Inmage Systems, Inc. Methods and apparatus for accessing data from a primary data storage system for secondary storage
US9209989B2 (en) * 2004-06-01 2015-12-08 Inmage Systems, Inc. Causation of a data read operation against a first storage system by a server associated with a second storage system according to a host generated instruction
US8868858B2 (en) * 2006-05-19 2014-10-21 Inmage Systems, Inc. Method and apparatus of continuous data backup and access using virtual machines
US7676502B2 (en) * 2006-05-22 2010-03-09 Inmage Systems, Inc. Recovery point data view shift through a direction-agnostic roll algorithm
US8224786B2 (en) * 2004-06-01 2012-07-17 Inmage Systems, Inc. Acquisition and write validation of data of a networked host node to perform secondary storage
US20060004890A1 (en) * 2004-06-10 2006-01-05 International Business Machines Corporation Methods and systems for providing directory services for file systems
US8041675B1 (en) * 2004-08-02 2011-10-18 Symantec Operating Corporation Method for performing incremental backup of database files
US7664983B2 (en) * 2004-08-30 2010-02-16 Symantec Corporation Systems and methods for event driven recovery management
US20060106896A1 (en) * 2004-11-12 2006-05-18 International Business Machines Corporation System and method for creating list of backup files based upon program properties
US8959299B2 (en) 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US7987158B2 (en) * 2005-02-09 2011-07-26 International Business Machines Corporation Method, system and article of manufacture for metadata replication and restoration
US7913053B1 (en) 2005-02-15 2011-03-22 Symantec Operating Corporation System and method for archival of messages in size-limited containers and separate archival of attachments in content addressable storage
US7672979B1 (en) * 2005-04-22 2010-03-02 Symantec Operating Corporation Backup and restore techniques using inconsistent state indicators
US7681074B2 (en) * 2005-04-29 2010-03-16 Microsoft Corporation Transport high availability
CN1318974C (zh) * 2005-08-05 2007-05-30 北京九州汇宝软件有限公司<Del/> 数据库备份数据的压缩和查询方法
US20070043667A1 (en) * 2005-09-08 2007-02-22 Bahman Qawami Method for secure storage and delivery of media content
US7991971B2 (en) 2005-09-09 2011-08-02 Microsoft Corporation State management for transactional backup consistency
US8601225B2 (en) * 2005-09-16 2013-12-03 Inmage Systems, Inc. Time ordered view of backup data on behalf of a host
US8683144B2 (en) * 2005-09-16 2014-03-25 Inmage Systems, Inc. Causation of a data read against a first storage system to optionally store a data write to preserve the version to allow viewing and recovery
US7765187B2 (en) * 2005-11-29 2010-07-27 Emc Corporation Replication of a consistency group of data storage objects from servers in a data network
ES2582364T3 (es) 2005-12-19 2016-09-12 Commvault Systems, Inc. Sistemas y métodos para realizar replicación de datos
US8655850B2 (en) 2005-12-19 2014-02-18 Commvault Systems, Inc. Systems and methods for resynchronizing information
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US7822717B2 (en) * 2006-02-07 2010-10-26 Emc Corporation Point-in-time database restore
CN100390747C (zh) * 2006-02-20 2008-05-28 南京联创科技股份有限公司 全程化实时系统中基于内存数据库的软双机备份方法
US8554727B2 (en) * 2006-05-19 2013-10-08 Inmage Systems, Inc. Method and system of tiered quiescing
US8527470B2 (en) * 2006-05-22 2013-09-03 Rajeev Atluri Recovery point data view formation with generation of a recovery view and a coalesce policy
US8838528B2 (en) * 2006-05-22 2014-09-16 Inmage Systems, Inc. Coalescing and capturing data between events prior to and after a temporal window
US8527721B2 (en) * 2008-12-26 2013-09-03 Rajeev Atluri Generating a recovery snapshot and creating a virtual view of the recovery snapshot
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US7519858B2 (en) * 2006-08-18 2009-04-14 Computer Associates Think, Inc. Selective file restoration from incremental backups
US7634507B2 (en) * 2006-08-30 2009-12-15 Inmage Systems, Inc. Ensuring data persistence and consistency in enterprise storage backup systems
US8706833B1 (en) 2006-12-08 2014-04-22 Emc Corporation Data storage server having common replication architecture for multiple storage object types
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
JP5049618B2 (ja) * 2007-03-15 2012-10-17 株式会社日立製作所 ディザスタリカバリシステムおよび方法
US7757111B2 (en) 2007-04-05 2010-07-13 International Business Machines Corporation Method and system for insuring data integrity in anticipation of a disaster
WO2008129620A1 (ja) * 2007-04-09 2008-10-30 Fujitsu Limited 完全二重化システム、システム制御方法およびシステム制御プログラム
US7788234B2 (en) * 2007-08-23 2010-08-31 Microsoft Corporation Staged, lightweight backup system
US8046329B2 (en) * 2008-06-30 2011-10-25 Symantec Operating Corporation Incremental backup of database for non-archive logged servers
US8028194B2 (en) * 2008-07-25 2011-09-27 Inmage Systems, Inc Sequencing technique to account for a clock error in a backup system
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US8069227B2 (en) * 2008-12-26 2011-11-29 Inmage Systems, Inc. Configuring hosts of a secondary data storage and recovery system
CN101645048B (zh) * 2009-08-27 2013-09-11 公安部第三研究所 计算机虚拟化取证的实现方法
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US8719767B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Utilizing snapshots to provide builds to developer computing devices
US8595191B2 (en) 2009-12-31 2013-11-26 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
US9165012B2 (en) * 2009-10-02 2015-10-20 Symantec Corporation Periodic file system checkpoint manager
WO2011082132A1 (en) 2009-12-31 2011-07-07 Commvault Systems, Inc. Systems and methods for analyzing snapshots
KR101582695B1 (ko) * 2010-01-18 2016-01-06 엘에스산전 주식회사 이더넷 기반 전력기기의 통신오류 감시 시스템 및 그 방법
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8489656B2 (en) 2010-05-28 2013-07-16 Commvault Systems, Inc. Systems and methods for performing data replication
US8793217B2 (en) * 2010-07-16 2014-07-29 Ca, Inc. Block level incremental backup
US10114847B2 (en) 2010-10-04 2018-10-30 Ca, Inc. Change capture prior to shutdown for later backup
US8825972B1 (en) 2010-11-19 2014-09-02 Symantec Corporation Method and system of producing a full backup image using an incremental backup method
US8635187B2 (en) 2011-01-07 2014-01-21 Symantec Corporation Method and system of performing incremental SQL server database backups
US8560888B1 (en) * 2011-02-11 2013-10-15 Bank Of America Corporation Method and apparatus for rebuilding an ATM computer image automatically
US9767676B2 (en) * 2012-01-11 2017-09-19 Honeywell International Inc. Security system storage of persistent data
US8832037B2 (en) 2012-02-07 2014-09-09 Zerto Ltd. Adaptive quiesce for efficient cross-host consistent CDP checkpoints
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US20130339784A1 (en) * 2012-06-15 2013-12-19 International Business Machines Corporation Error recovery in redundant storage systems
US9430331B1 (en) 2012-07-16 2016-08-30 Emc Corporation Rapid incremental backup of changed files in a file system
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9336226B2 (en) 2013-01-11 2016-05-10 Commvault Systems, Inc. Criteria-based data synchronization management
CN104081329A (zh) * 2013-01-25 2014-10-01 株式会社东芝 对数据进行备份的备份存储系统、备份存储装置以及方法
US9075771B1 (en) * 2013-03-15 2015-07-07 Symantec Corporation Techniques for managing disaster recovery sites
CN103440181A (zh) * 2013-09-06 2013-12-11 珠海金山网络游戏科技有限公司 一种文件修改的方法及系统
RU2584447C2 (ru) * 2013-10-21 2016-05-20 Общество С Ограниченной Ответственностью "Яндекс" Способ и система одновременной установки множества приложений с помощью восстановления ложного резервного архива
HUE036878T2 (hu) 2013-12-12 2018-08-28 Huawei Tech Co Ltd Adatreplikálási eljárás és tárolórendszer
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9460180B2 (en) * 2014-01-31 2016-10-04 Sap Se Data pulls
CN104112162A (zh) * 2014-04-03 2014-10-22 北京邮电大学 一种基于资源的灾难恢复系统经济成本效益评估方法
US9626367B1 (en) 2014-06-18 2017-04-18 Veritas Technologies Llc Managing a backup procedure
GB2528289A (en) 2014-07-16 2016-01-20 Kraft Foods R&D Inc A die-cut lid and associated container and method
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
CN105446828B (zh) * 2014-09-30 2019-05-31 北京金山云网络技术有限公司 一种数据库备份、恢复方法、装置及系统
US9558078B2 (en) 2014-10-28 2017-01-31 Microsoft Technology Licensing, Llc Point in time database restore from storage snapshots
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
CN104376073A (zh) * 2014-11-14 2015-02-25 北京锐安科技有限公司 一种数据库恢复方法及装置
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
CN104461695A (zh) * 2014-12-24 2015-03-25 四川效率源信息安全技术有限责任公司 通过仿真手段展示数据的方法和装置
US9672117B1 (en) * 2014-12-29 2017-06-06 EMC IP Holding Company LLC Method and system for star replication using multiple replication technologies
US10430290B2 (en) * 2014-12-29 2019-10-01 EMC IP Holding Company LLC Method and system for star replication using multiple replication technologies
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US9977716B1 (en) 2015-06-29 2018-05-22 Veritas Technologies Llc Incremental backup system
CN105045678B (zh) * 2015-07-09 2018-10-26 小米科技有限责任公司 数据库恢复方法及装置
JP6719890B2 (ja) * 2015-11-20 2020-07-08 キヤノン株式会社 情報処理装置、ファイル監視システム、情報処理装置の制御方法及びプログラム
CN109165121B (zh) * 2015-12-18 2021-03-23 福建随行软件有限公司 恢复被误操作的数据的方法及系统
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US11223537B1 (en) 2016-08-17 2022-01-11 Veritas Technologies Llc Executing custom scripts from the host during disaster recovery
US10838767B2 (en) * 2016-09-12 2020-11-17 International Business Machines Corporation Distributed computing utilizing a recovery site
CN106331370B (zh) * 2016-09-14 2019-02-05 Oppo广东移动通信有限公司 一种数据传输方法及终端设备
CN106874389B (zh) * 2017-01-11 2023-04-07 腾讯科技(深圳)有限公司 数据的迁移方法和装置
US10740022B2 (en) 2018-02-14 2020-08-11 Commvault Systems, Inc. Block-level live browsing and private writable backup copies using an ISCSI server
US11201974B2 (en) 2018-02-26 2021-12-14 HLFIP Holding, Inc. Systems and methods for processing requests to send private postal mail to an inmate
US10893090B2 (en) * 2019-02-14 2021-01-12 International Business Machines Corporation Monitoring a process on an IoT device
US11610136B2 (en) 2019-05-20 2023-03-21 Kyndryl, Inc. Predicting the disaster recovery invocation response time
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11467925B2 (en) 2020-01-30 2022-10-11 Rubrik, Inc. Exporting a database to a native database recovery environment
US11604761B2 (en) 2020-01-30 2023-03-14 Rubrik, Inc. Utilizing a tablespace to export from a foreign database recovery environment
US11609828B2 (en) 2020-01-30 2023-03-21 Rubrik, Inc. Utilizing a tablespace to export to a native database recovery environment
US11360860B2 (en) 2020-01-30 2022-06-14 Rubrik, Inc. Exporting a database from a foreign database recovery environment
CN113534708A (zh) * 2021-07-12 2021-10-22 三一汽车制造有限公司 一种工控机热备份方法、装置及系统
US20230195578A1 (en) * 2021-12-20 2023-06-22 Cohesity, Inc. Maintaining and updating a backup view of an application and its associated objects
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276860A (en) * 1989-12-19 1994-01-04 Epoch Systems, Inc. Digital data processor with improved backup storage
US5446884A (en) * 1992-02-13 1995-08-29 International Business Machines Corporation Database recovery apparatus and method
GB2273180A (en) * 1992-12-02 1994-06-08 Ibm Database backup and recovery.
US5404508A (en) * 1992-12-03 1995-04-04 Unisys Corporation Data base backup and recovery system and method
GB9406564D0 (en) * 1994-03-31 1994-05-25 Int Computers Ltd Database management system
US6044381A (en) * 1997-09-11 2000-03-28 Puma Technology, Inc. Using distributed history files in synchronizing databases
US6446075B1 (en) * 1998-02-25 2002-09-03 International Business Machines Corporation System and method for automatically synchronizing different classes of databases utilizing a repository database
US6802025B1 (en) 1999-06-30 2004-10-05 Microsoft Corporation Restoration of a computer to a previous working state
FI20000178A (fi) * 2000-01-28 2001-07-29 Nokia Networks Oy Datan palautus hajautetussa järjestelmässä
US6421674B1 (en) * 2000-02-15 2002-07-16 Nortel Networks Limited Methods and systems for implementing a real-time, distributed, hierarchical database using a proxiable protocol
US6820088B1 (en) * 2000-04-10 2004-11-16 Research In Motion Limited System and method for synchronizing data records between multiple databases
US6615225B1 (en) 2000-04-27 2003-09-02 International Business Machines Corporation System and method for relating files in a distributed data storage environment
US6694447B1 (en) * 2000-09-29 2004-02-17 Sun Microsystems, Inc. Apparatus and method for increasing application availability during a disaster fail-back
US6691245B1 (en) * 2000-10-10 2004-02-10 Lsi Logic Corporation Data storage with host-initiated synchronization and fail-over of remote mirror
JP2002182961A (ja) * 2000-12-13 2002-06-28 Nec Corp データベースの同期化システムとその同期化の方法
US7039650B2 (en) * 2002-05-31 2006-05-02 Sypherlink, Inc. System and method for making multiple databases appear as a single database

Also Published As

Publication number Publication date
AU2003220696A1 (en) 2003-11-03
IL164618A0 (en) 2005-12-18
EP1497729B1 (en) 2016-06-08
WO2003090082A3 (en) 2004-07-01
US6981177B2 (en) 2005-12-27
JP2005523517A (ja) 2005-08-04
EP1497729A2 (en) 2005-01-19
US20030200480A1 (en) 2003-10-23
BR0309363A (pt) 2005-02-22
WO2003090082A2 (en) 2003-10-30
CA2482942A1 (en) 2003-10-30
CN1659522A (zh) 2005-08-24

Similar Documents

Publication Publication Date Title
KR20050009696A (ko) 재난 복구 방법 및 시스템
US7707184B1 (en) System and method for snapshot full backup and hard recovery of a database
CN101566959B (zh) 利用卷快照防止在失败的恢复操作中的文件损坏
US8027958B1 (en) System and method for creating a point-in-time restoration of a database file
US7899789B2 (en) System for automatically shadowing data and file directory structures for a plurality of network-connected computers using a network-attached memory
US7310654B2 (en) Method and system for providing image incremental and disaster recovery
US8510271B1 (en) Application and file system data virtualization from image backup
JP4336129B2 (ja) 複数のスナップショットを管理するシステム及び方法
US8356174B2 (en) System for automatically shadowing encrypted data and file directory structures for a plurality of network-connected computers using a network-attached memory with single instance storage
US6938056B2 (en) System and method for restoring a file system from backups in the presence of deletions
JP4261800B2 (ja) クライアントサーバー環境における差分バックアップシステムの管理方法
EP0733235B1 (en) Incremental backup system
US7685189B2 (en) Optimizing backup and recovery utilizing change tracking
US20060036895A1 (en) Combined computer backup, disaster recovery and migration in a shared environment
US7801867B2 (en) Optimizing backup and recovery utilizing change tracking
US20060036658A1 (en) Combined computer disaster recovery and migration tool for effective disaster recovery as well as the backup and migration of user- and system-specific information
US20060294421A1 (en) Isolating and storing configuration data for disaster recovery
US9043280B1 (en) System and method to repair file system metadata
CN101243446A (zh) 从数据库镜像进行在线页还原
US20060036890A1 (en) Remote computer disaster recovery and migration tool for effective disaster recovery and migration scheme
US20070043969A1 (en) Isolating and storing configuration data for disaster recovery for operating systems providing physical storage recovery
US20080155319A1 (en) Methods and systems for managing removable media
US8150810B1 (en) Method and apparatus for file sharing between continuous and scheduled backups
JP2000076110A (ja) 分散ファイルシステムにおける回復処理システム
ZA200408992B (en) Method and system for disaster recovery.

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