KR20090110823A - 데이터 섀도잉 시스템 및 데이터의 자동 백업 저장 방법 - Google Patents

데이터 섀도잉 시스템 및 데이터의 자동 백업 저장 방법 Download PDF

Info

Publication number
KR20090110823A
KR20090110823A KR1020097011093A KR20097011093A KR20090110823A KR 20090110823 A KR20090110823 A KR 20090110823A KR 1020097011093 A KR1020097011093 A KR 1020097011093A KR 20097011093 A KR20097011093 A KR 20097011093A KR 20090110823 A KR20090110823 A KR 20090110823A
Authority
KR
South Korea
Prior art keywords
file
data
customer data
memory module
storing
Prior art date
Application number
KR1020097011093A
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 KR20090110823A publication Critical patent/KR20090110823A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • 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/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1734Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • G06F16/1756De-duplication implemented within the file system, e.g. based on file segments based on delta files
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C14/00Digital stores characterised by arrangements of cells having volatile and non-volatile storage properties for back-up when the power is down
    • 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/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/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/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/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Abstract

데이터 섀도잉 시스템은 섀도우 데이터를 저장하기 위해 기존의 입력/출력 포트를 통해 모니터링 컴퓨터 시스템에 접속되어 있는 메모리 모듈을 포함한다. 메모리 모듈은, 메모리 모듈이 모니터링 컴퓨터 시스템에 1차 접속된 경우에 모니터링 컴퓨터 시스템 상에 자동 설치되는 제어 소프트웨어 요소를 포함하는 소프트웨어와, 메모리 장치 상에 저장되는 데이터의 기록을 유지하는 관련 모듈 소프트웨어와, 데이터 저장용의 메모리 장치를 포함한다. 데이터 섀도잉 시스템은 2개의 형태, 즉 디스크 섹터와 파일로 데이터 관리 데이터베이스에 나타내면서, 메모리 모듈 상의 데이터를 단일 형태로 자동 저장한다. 이로써, 데이터 섀도잉 시스템은, 중복 데이터를 저장하지 않고 한 시점에 올바른 디스크 레벨 및 파일 레벨 복원을 가능하게 하면서, 전체 시간에 걸쳐서 다수의 파일 시스템의 상태를 효율적으로 추적하여 저장한다.

Description

데이터 섀도잉 시스템 및 데이터의 자동 백업 저장 방법{SYSTEM FOR AUTOMATICALLY SHADOWING DATA AND FILE DIRECTORY STRUCTURES THAT ARE RECORDED ON A COMPUTER MEMORY}
본 발명은 개별적인 컴퓨터 시스템에 데이터 백업을 제공하는데 사용되는 시스템에 관한 것이다.
컴퓨터 시스템 상에 저장된 데이터를 보호하는 것과, 손실 또는 손상된 데이터의 일부 또는 모두를 복원하는 것에는 문제가 있다. 다수의 컴퓨터 시스템은 적절한 보호 시스템을 가지고 있지 않아, 이들 컴퓨터 시스템으로부터의 데이터 손실은 돌이킬 수 없다. 다른 컴퓨터 시스템은 부착된 데이터 백업 시스템을 사용하여, 컴퓨터 메모리에 저장되어 있는 데이터의 사본을 저장하고, 컴퓨터 시스템 메모리로부터 손실되거나 손상된 데이터를 복원하기 위해, 최후의 검색을 위해 갱신한다. 그러나, 이들 기존의 데이터 백업 시스템을 사용하는 것은 번거롭고, 무관심한 사용자에게는 혼동이 있을 수 있다.
정보 용어에서, 백업은, 데이터 손실 사건 이후에 이들 추가의 사본을 원본 을 복원하는데 사용될 수 있도록 데이터 사본을 생성하는 것을 말한다. 이들 추가의 사본을 일반적으로 "백업"이라고 부른다. 백업은 우선 2가지 용도에서 유용하다. 첫째는 재난 이후의 동작 상태로 컴퓨터를 복원하는 것이다("재난 복원"이라 함). 두번째는 데이터가 갑작스럽게 삭제되거나 손상된 후의 하나 이상의 파일을 복원하는 것이다. 백업은 전형적으로 데이터 손실에 대비한 최종 방어선이고, 결과적으로, 최소한 개별적이고 사용상 최소한 편리하다.
데이터 백업 시스템은 저장할 가치가 있는 모든 데이터의 적어도 하나의 사본을 포함하기 때문에, 변경 추적이 메모리를 낭비할 때, 데이터 백업을 수행하는데 사용되는 방법에 의해 악화될 수 있는 데이터 저장 요건은 매우 중요하다. 이러한 저장 공간을 체계화하고 백업 처리를 관리하는 것은 복잡한 작업이다. 데이터 저장소 모델은 백업되는 데이터의 관리를 위한 구조를 데이터 저장 장치에 제공하는데 사용될 수 있다. 현대의 컴퓨터 사용에 있어, 백업을 행하는데 유용한 다수의 상이한 형태의 데이터 저장 장치가 있다. 지리적인 중복, 데이터 보안, 및 이식 가능성(portability)을 제공하기 위해 이들 백업 장치를 배열하는 다수의 상이한 방법이 있다.
데이터를 데이터 백업 저장 위치로 항상 보내기 전에, 데이터는 선택되고, 추출되고, 조작된다. 백업 과정을 최적화하기 위해 다수의 상이한 기술이 개발되어 왔다. 이들 기술은, 특히, 압축, 암호화, 및 데이터 중복 제거(de-duplication)뿐만 아니라, 열람 파일 및 라이브 데이터 소스를 취급하기 위한 최적화를 포함한다. 다수의 조직과 개인은 백업 처리가 예상대로 동작하고 있음을 확 신하는 것이 필요하고, 백업 처리의 무결성을 확인하기 위해 측정 및 검증 기술을 규정한다. 임의의 백업 방식에서 연관된 제한값이나 인간적인 요인을 인식하는 것이 또한 중요하다.
용어상 상당히 중첩됨으로 인해, 백업 및 데이터 백업 시스템은 아카이브 및 고장 방지 시스템(fault-tolerant system)과 종종 혼동된다. 아카이브는 데이터의 1차 사본이고, 백업은 데이터의 2차 사본이라는 점에서, 백업과 아카이브는 다르다. 데이터 백업 시스템은 고장이 데이터 손실 이벤트를 유발할 수 있다는 것을 가정하고, 고장 방지 시스템은 고장이 데이터 손실 이벤트를 유발하지 않는다는 것을 가정한다는 점에서, 데이터 백업 시스템과 고장 방지 시스템은 다르다.
데이터 저장소 모델
백업 전략은 데이터 저장소의 개념에서 시작한다. 백업 데이터는 어떻게든지 저장될 필요가 있으며, 아마도 상당히 체계화될 수 있다. 모든 백업 테이프의 리스트 및 기록된 날짜를 가진 종이를 이용한 수동 처리, 또는 전산화된 색인, 카탈로그, 관련 데이터베이스를 이용한 보다 정교한 자동 셋업으로 단순화될 수 있다. 상이한 저장소 모델은 상이한 장점을 가지고 있다. 이는 백업 회전 방식을 선택하는 것과 상당히 관련되어 있다. 이하의 단락에서는 현재 사용하고 있는 다양한 기존의 백업 모델을 요약하고 있다.
비정형(Unstructured)
단순히, 비정형 저장소는, 컴퓨터 시스템으로부터의 어떤 데이터가 기록가능 매체 상에 백업되었는지 백업이 언제 발생했는지에 관한 최소한의 정보를 가진 예컨대, 다수의 플로피 디스크 또는 CD-R 매체로 구성되어 있는 기록가능 매체일 수 있다. 이것은 구현하기에는 가장 쉬운 백업 방법이지만, 아마도 백업되는 데이터와 연관된 색인화 정보의 부족으로 인해 높은 수준의 복원가능성을 달성하기 어려울 것 같다.
전체(Full) + 증가(Incremental)
전체 + 증가 데이터 백업 모델은 소스 데이터의 몇몇 사본을 보다 적절하게 저장하게 하는 것을 목표로 한다. 먼저, 컴퓨터 시스템으로부터의 모든 파일의 전체 백업이 취해진다. 그 전체 백업이 완료된 후에, 이전 전체 또는 증가 백업 이후에 변경된 파일에 대해서만 증가 백업이 취해진다. 시간적으로 특정 시점에 전체 컴퓨터 시스템을 복원하기 위해서는 그 특정 시점에 앞서 취해진 전체 백업뿐만 아니라, 전체 백업과 시스템을 복원하려고 예정한 특정 시점 사이에서 취해진 모든 증가 백업을 배치할 필요가 있다. 그 다음, 데이터의 전체 백업 버전은, 증가 변경값 세트를 이용하여, 그 지정된 특정 시점에서의 데이터의 현재 시점을 작성하도록 처리된다. 이러한 데이터 백업 모델은 선택된 데이터가 현재의 상태로 복원될 수 있는 고레벨의 보안을 제공하고, 이 데이터 백업 모델은 테이프 및 광학 디스크 등의 소거가능 매체와 함께 사용될 수 있다. 이러한 데이터 백업 처리의 단점은 각각의 증가 백업에서의 변경된 파일 마다의 사본이 메모리에 저장되기 때문에, 이러한 데이터 백업 처리에 수반되는 높은 저장 요건과 장시간의 연속적인 증가 변경을 다룬다는 것이다.
전체(Full) + 차동(Differential)
전체 백업이 컴퓨터 시스템 상의 모든 파일에 대해 취해진 후에, 일부가 이전의 분할 백업에 포함되어 있음에도 불구하고, 그 파일의 각각의 증가 백업은 전체 백업 이후에 작성되거나 변경된 모든 파일을 캡쳐한다는 점에서, 전체 + 차동 데이터 백업 모델은 전체 + 증가 데이터 백업 모델과는 다르다. 이러한 데이터 백업 모델의 장점은 특정 시점에서 전체 컴퓨터 시스템을 복원하는 것은 최후의 전체 백업만을 복구하여 최후의 차동 백업으로 오버랩하는 것과 연관되어 있다는 것이다.
미러(Mirror) + 역 증가(Reverse Incremental)
미러 + 역증가 데이터 백업 모델은 전체 + 증가 데이터 백업 모델과 유사하다. 일련의 증가 데이터 백업에 이어지는 오래된 전체 데이터 백업 대신에, 이러한 모델은 역 증가 데이터 백업의 이력 및 최종 데이터 백업으로서 컴퓨터 시스템의 상태를 반영하는 미러를 제공한다는 점에서 차이가 있다. 이러한 데이터 백업 방법의 하나의 장점은 단지 초기 전체 데이터 백업만을 필요로 한다는 것이다. 각각의 증가 데이터 백업은 미러에 즉시 적용되고, 그들이 대체하는 파일은 역 증가 백업으로 이동된다. 데이터 백업마다 데이터의 데이터 백업 미러 버전과 비교해야 하기 때문에, 이러한 데이터 백업 모델은 제거가능한 매체에 사용되기에 적합하지 않다. 이러한 처리는, 특정 시점에 전체 컴퓨터 시스템을 복원하는데 사용되는 경우에, 메모리 사용이 집중된다.
연속적인 데이터 보호
이러한 데이터 백업 모델은 추가 단계의 데이터 백업 처리를 취하고, 주기적인 데이터 백업의 스케줄링 대신에, 데이터 백업 시스템은 컴퓨터 시스템 상에서 행해지는 변경마다 즉시 기록을 남긴다. 일반적으로, 이러한 동작은 파일 레벨 차이보다는 바이트 또는 블럭 레벨 차이를 저장함으로써 행해진다. 로그의 롤백을 가능하게 하고, 데이터의 구 이미지를 복원할 수 있다는 점에서, 단순한 디스크 미러링(mirroring)과는 다르다. 이러한 방법을 이용하여 특정 시점에서 전체 컴퓨터 시스템을 복원하는 데에는, 데이터의 원래 버전이 데이터의 현재 버전을 재작성하기 위해 각각의 상이한 변경으로 기록된 모든 변경을 병합하여 처리되어야 한다는 점을 필요로 한다.
문제
데이터 백업의 이러한 여러 방법에도 불구하고, 기존의 데이터 백업 시스템(하드웨어 및 소프트웨어를 모두 포함함)은, 사용자가 컴퓨터 시스템에 단순히 플러그 인하여 그 저장된 데이터를 "백업"하게 하는 것과, 한 시점에서의 파일의 개 정 복원을 또한 가능하게 하는 것과, 컴퓨터 시스템 내의 하드 디스크 모두가 한 시점에 복원될 수 있게 하는 것을 보장할 수 없다. 기존의 데이터 백업 시스템은 한 시점에서의 정확한 디스크 레벨 및 파일 레벨 복원을 허용하면서, 충분한 양의 중복 데이터를 저장하지 않고서는, 전체 시간에 걸쳐 멀티 파일 시스템의 상태를 효율적으로 추적 및 저장할 수 없다. 이들 데이터 백업 시스템에 의해, 사용자는 새로운 용어를 배우고, 컴퓨터 시스템의 파일 시스템을 이해하고, 데이터 백업 세션을 스케줄링하는 방법을 배우고, 이러한 새로운 기능에 사용되어야 하는 새로운 제어를 배울 필요가 있다. 게다가, 분실된 파일의 복원은 이와 같은 데이터 백업 시스템을 사용하기 어렵다.
상술한 문제는 섀도우 데이터를 저장하는 입력/출력 포트 등의 기존의 통신 매체를 통해 모니터링 컴퓨터 시스템에 접속된 메모리 모듈을 포함하는 기존의 System For Automatically Shadowing Data And File Directory Structures That Are Recorded On A Computer Memory(일명 "데이터 섀도잉 시스템")에 의해 해결되고 기술적 진보가 달성된다. 메모리 모듈은, 메모리 장치 상에 저장된 데이터의 기록을 유지하고 메모리 장치의 동작을 제어하는 관련 모듈 소프트웨어뿐만 아니라, 메모리 모듈이 모니터링 컴퓨터 시스템에 1차 접속된 경우에 모니터링 컴퓨터 시스템 상에 자동 설치되는 제어 소프트웨어 요소를 포함한 소프트웨어뿐만 아니라 데이터 저장을 위한 메모리 장치를 포함한다.
데이터 섀도잉 시스템은 단일 형태로 메모리 모듈에 배치되는 메모리 장치 상의 모니터링 컴퓨터 시스템의 메모리로부터 검색되는 데이터를 자동으로 저장하고, 그 데이터를 2개의 형태, 디스크 섹터 및 파일로 데이터 관리 데이터베이스에 표현한다. 이로써, 데이터 섀도잉 시스템은 한 시점에서 정확한 디스크 레벨 및 파일 레벨 복원을 허용하면서 중복된 데이터를 저장하지 않아도 멀티 파일 시스템의 상태를 전체 시간에 걸쳐 효율적으로 추적 및 저장한다.
데이터 섀도잉 시스템은, 사용자가 데이터 섀도잉 시스템과 상호 동작하지 않고 모니터링 컴퓨터 시스템의 메모리를 백업하도록 자율적으로 동작한다. 데이터 섀도잉 시스템이 모니터링 컴퓨터 시스템에 접속되어 있는 한, 백업은 거의 항상 최신 정보가 반영된다. 데이터 섀도잉 시스템은 데이터베이스 기술을 포함하고 정상적인 동작을 위해 데이터 저장 및 검색을 최적화하고, 파일 디렉토리 정보 자체의 데이터베이스는 모니터링 컴퓨터 시스템 하드 드라이브 상에 존재하고, 데이터베이스의 백업 사본은 데이터 섀도잉 시스템에 주기적으로 기록된다.
또한, 파일 변경, 작성, 재배치 및 삭제는, 데이터 섀도잉 시스템이 파일 시스템뿐만 아니라 개별적인 파일의 시점 복원을 가능하게 하면서, 시간 전체에 걸쳐 추적된다. 전체 시스템 복원 능력에 의해, 사용자의 개입을 필요로 하지 않고, 특정 시점에서, 운영 시스템, 애플리케이션 및 데이터 파일을 포함한 모니터링 컴퓨터 시스템의 전체 메모리의 재구성을 가능하게 한다.
데이터 섀도잉 시스템 메모리 모듈이 임의 시간동안 모니터링 컴퓨터 시스템과 단절되어 있는 경우에, 모니터링 컴퓨터 시스템 상에서 실행하는 제어 소프트웨어 요소는 시간 내내 발생하는 적절한 파일 변경을 추적하고, 일단 데이터 섀도잉 시스템 메모리 모듈이 모니터링 컴퓨터 시스템에 재접속되면 정상적인 백업 동작을 수행한다.
도 1a는 본 데이터 섀도잉 시스템에 접속된 전형적인 컴퓨터 시스템의 사시도이다.
도 1b는 본 데이터 섀도잉 시스템의 기본 구조를 도시하는 도면이다.
도 2a 및 도 2b는 데이터 섀도잉 시스템의 모니터링 컴퓨터 시스템 상의 초기 설치 동안의 본 데이터 섀도잉 시스템의 동작을 흐름도 형태로 도시하는 도면이다.
도 3은 모니터링 컴퓨터 시스템의 메모리에 현재 부가되어 있는 데이터의 사본을 저장하는 본 데이터 섀도잉 시스템의 동작을 흐름도로 도시하는 도면이다.
도 4는 보존 시점을 작성하고 저장하여 모니터링 컴퓨터 시스템의 메모리에 변경을 벤치마킹하는 본 데이터 섀도잉 시스템의 동작을 흐름도로 도시하는 도면이다.
도 5는 모니터링 컴퓨터 시스템의 메모리에의 파일의 복원을 위해 그 저장된 데이터를 검색하는 본 데이터 섀도잉 시스템의 동작을 흐름도로 도시하는 도면이다.
도 6은 모니터링 컴퓨터 시스템의 메모리 전체 복원을 위해 그 저장된 데이 터를 검색하는 본 데이터 섀도잉 시스템의 동작을 흐름도로 도시하는 도면이다.
본 명세서에 사용된 이하의 용어는 이하의 의미를 갖는다.
"파일 시스템" - 컴퓨터 운영 시스템에 의해 사용되어 컴퓨터 시스템 메모리에 포함된 정보를 조직, 저장 및 액세스하는 시스템.
"파일 네비게이션 시스템" - 컴퓨터 운영 시스템에 의해 사용되어 컴퓨터 시스템 메모리에 포함된 사용자 동작에 대한 파일을 저장, 확인, 배치 및 동작시키는 조직화 방식을 사용자에게 제공하는 텍스트의 계층화된 네비게이션 인터페이스.
"변경 저널(change journal)" - 파일 변경, 작성, 삭제 또는 재배치를 확인하고 추적하도록 제공된 컴퓨터 운영 시스템.
"메타 파일" - 관련 파일에 관한 정보(예컨대, 데이터 파일의 파일 크기 및 작성일)를 저장하는 간접 수단.
"페이지 파일" - 컴퓨터 시스템 상에서 동작하는 현재의 세션에 특정되는 컴퓨터 운영 시스템의 규정되고 작성된 파일, 페이지 파일은 연속적인 세션에 유효하지 않거나 의미가 있지 않아 보유하는 값이 없는 일시적인 일자를 나타낸다.
"보전 시점" - 특정 시간 동안 유효했고 통용되었던 파일을 나타내기 위해 특정 시간에 존재하는 파일 집합 및 파일 레퍼런스, 보전 시점의 복원은 파일이 컴퓨터 운영 시스템에 일치하고 의미있게 하며, 멀티 파일을 필요로 하는 애플리케이션이 자체적으로 일치하게 한다.
"파일 레퍼런스 번호", 즉 FRN(File Reference Number) - 파일 시스템 파일 테이블 내의 주어진 파일 또는 폴더 엔트리에 대한 고유 확인자.
"NTFS" - 컴퓨터 운영 시스템에 있어서의 파일 시스템과 연관된 머리글자.
파일 시스템은 파일 변경, 작성, 삭제 또는 재배치의 대기열을 작성하는, 저널링으로서 알려진 중요 특징을 제공한다.
시스템 구조
도 1a는 본 데이터 섀도잉 시스템이 구비하는 전형적인 컴퓨터 시스템의 사시도를 도시하며, 도 1b는 본 데이터 섀도잉 시스템(100)의 기본 구조를 도시한다. 전형적으로, 모니터링 컴퓨터 시스템(110)은 프로세서(112), 메모리(113)(디스크 드라이브 등, 임의 형태의 판독/기록 메모리가 사용될 수 있음에도, 용어 "메모리"는 이러한 요소를 설명하는데 사용됨), 및 입력/출력 포트(111) 등의 데이터 통신 매체(115), 또는 무선 인터페이스 등을 포함한다. 데이터 섀도잉 시스템(100)은, 섀도우 데이터를 저장하기 위해 입력/출력 포트(111) 및 관련 케이블 등의 기존의 데이터 통신 매체(115)를 통해 컴퓨터 시스템에 접속된 메모리 모듈(101)을 포함한다. 예시적으로, 본 명세서에 설명되는 데이터 통신 매체는 메모리 모듈(101)의 전원뿐만 아니라 데이터 통신 경로를 둘 다 제공하는 기존의 표준 USB 포트(111)이다. 그러나, 유선이든 무선이든, 메모리 모듈(101)에 전원을 제공할 수 있든 없든, 임의의 데이터 통신 매체가 사용될 수 있다. 메모리 모듈(101)은, 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)에 1차 접속된 경우에 모니터링 컴퓨터 시 스템(110) 상에 자동으로 설치되는 제어 소프트웨어 요소(103)뿐만 아니라, 메모리 장치(102)와, 관련 메모리 모듈 소프트웨어(104)와, 데이터 저장을 관리하는 데이터베이스(105)를 포함한다.
데이터 섀도잉 시스템(100)의 간편하고 용이한 사용을 위해서는 최소한의 사용자 상호 작용이 필요하며, 예컨대, 데이터 섀도잉 시스템 소프트웨어 요소(103)의 자동 설치를 지원하기 위해 USB 접속(111)의 "오토런" 특징이 사용될 수 있다. 따라서, 데이터 섀도잉 시스템(100)의 메모리 모듈(101)을 모니터링 컴퓨터 시스템(110)에 1차 접속할 경우에, 데이터 섀도잉 시스템(100)은 모니터링 컴퓨터 시스템(110)의 운영 시스템 상에 존재하는 "오토런" 소프트웨어를 호출하여, 데이터 섀도잉 시스템(100)의 메모리 모듈(101) 상에 저장되어 있는 제어 소프트웨어 요소(103)의 설치 애플리케이션 부분을 초기화한다. (대안으로, 장착가능 매체를 사용하여 모니터링 컴퓨터 시스템(110)으로부터의 제어 소프트웨어 요소(103)의 설치를 초기화한다). 그 다음, 설치 애플리케이션은 모니터링 컴퓨터 시스템(110)과 데이터 섀도잉 시스템(100)의 초기 설치임을 확인한다. 메모리 모듈 소프트웨어(104)는 모니터링 컴퓨터 시스템(110)의 운영 시스템으로부터 시스템 정보를 요청하여, 이 시스템 정보를 데이터베이스(105)에 저장한다. 계속해서, 이러한 시스템 정보는, 데이터 섀도잉 시스템(100)이 모니터링 컴퓨터 시스템(110)에 사전에 접속되었는지 여부를 판단하는데 사용된다. 데이터 섀도잉 시스템(100)이 이미 설치되었다면, 모니터링 컴퓨터 시스템(110)은 메모리 모듈(101)을 작동시키고, 메모리 모듈과의 대화를 개시한다. 메모리 모듈(101)의 전력은 데이터 통신 매체로부 터 얻거나, 데이터 통신 매체(115) 및 메모리 모듈(101)의 설치 기능이 사용된 경우에, 내부 또는 외부 전원이 사용될 수 있다.
초기화
도 2a 및 도 2b는 모니터링 컴퓨터 시스템(110) 상에 데이터 섀도잉 시스템(100)을 초기 설치 동안의 본 데이터 섀도잉 시스템(100)의 동작을 흐름도 형태로 예시하며, 여기서, 데이터 섀도잉 시스템(100)은 이러한 모니터링 컴퓨터 시스템(110)에 배타적으로 연결되어 있으며, 모니터링 컴퓨터 시스템의 메모리 내용의 초기 섀도우 사본은 데이터 섀도잉 시스템(100)의 메모리 모듈(101)에 작성된다.
본 예에서의 데이터 섀도잉 시스템(100)은 상술한 데이터 통신 매체(115)를 통해 모니터링 컴퓨터 시스템(110)에 의해 전력 공급되고, 단계(201)에서, 데이터 섀도잉 시스템 메모리 모듈(101)의 메모리 장치(102)로 인코딩된 일련 번호가 제어 소프트웨어 요소(103)에 삽입된 일련 번호 엔트리와 일치함을 확인함으로써, 모니터링 컴퓨터 시스템(110)에 1차 부착된 경우에, 선택적으로 자체 인증한다. 제조 동안에, 일련 번호는 메모리 장치(102)로부터 질의되고, 제어 소프트웨어 요소(103)에 삽입되고, 추가의 메모리 장치 상에 데이터 섀도잉 시스템(100)의 소프트웨어를 우회적으로 미승인 복제하는 방식으로 데이터 섀도잉 시스템(100)에 저장된다.
그 다음, 단계(202)에서, 데이터 섀도잉 시스템(100)은 모니터링 컴퓨터 시스템(110)에 대한 데이터 섀도잉 시스템(100)의 설치 및 초기화를 개시한다. 소프 트웨어를 설치하기 위해, 사용자가 모니터링 컴퓨터 시스템(110)의 선택된 드라이브에 장착가능 매체를 삽입할 필요가 있게 하는 전통적인 소프트웨어 설치 단계 대신에, 데이터 섀도잉 시스템(100)은 USB 표준의 포트(111)의 단순한 "오토런" 특징을 이용할 수 있다. 단계(202)에서, 데이터 섀도잉 시스템(100)의 제어 소프트웨어 요소(103)는 모니터링 컴퓨터 시스템(110) 상에 로딩되고, 단계(203)에서, 모니터링 컴퓨터 시스템(110)은 데이터 섀도잉 시스템(100)의 제어 소프트웨어 요소(103)에 의해 신호를 보내, 모니터링 컴퓨터 시스템(110)의 하드웨어 토포로지 및 장치 서명을 규정하는 데이터를 획득한다. 단계(204)에서, 서명 정보는 데이터 섀도잉 시스템(100)을 모니터링 컴퓨터 시스템(110)과 "한쌍"으로 하는데 사용되고, 메모리 모듈 소프트웨어(104)에 저장된다.
데이터 섀도잉 시스템(100)은, 데이터 섀도잉 시스템(100)의 사용자 라이센스 계약에 동의함을 표시하도록, 모니터링 컴퓨터 시스템(110)의 디스플레이 스크린을 통해 단계(205)에서 사용자에게 단순한 대화 박스를 표시한다. 이러한 개략적인 사용자 동의 대화는 사용자가 최종 사용자 라이센스 계약에 기재된 용어에 동의할 수 있게 하는데 필요하다. 사용자가 데이터 섀도잉 시스템(100)을 설치하려고 하지 않거나, 최종 사용자 라이센스 계약에 만족하지 못하면, 데이터 섀도잉 시스템(100)에 속하는 모니터링 컴퓨터 시스템(110) 상에 아무것도 남지 않는다.
데이터 섀도잉 시스템(100)의 성공적인 설치후에, 사용자는, 모니터링 컴퓨터 시스템(110)의 메모리(113)에 현재 저장되고, 계속해서 추가, 삭제, 또는 변경되는 데이터의 보호 및 백업을 확인하기 위한 추가의 동작을 취할 필요가 없다. 단계(206)에서, 사용자는, 데이터 섀도잉 시스템(100)의 모니터링 컴퓨터 시스템으로부터 메모리 모듈(101)로 그들의 데이터 파일 및 디렉토리 구조의 초기 유효 백업을 행하기 위해 초기 시간 동안에 모니터링 컴퓨터 시스템(110)에 데이터 섀도잉 시스템(100)의 메모리 모듈(101)을 부착한 상태로 할 필요가 있지만, 데이터 섀도잉 시스템(100)의 메모리 모듈(101)을 부착하는 것은 사용자에게 필요한 단순한 동작 단계이다. 모니터링 컴퓨터 시스템(110)의 변경 또는 복합적인 상호 접속 처리의 사용을 필요로 하지 않고, 초기 데이터 백업이 실행되고 있는 동안에, 제어 소프트웨어 요소(103)는 모니터링 컴퓨터 시스템(110)의 진행중인 메모리 동작을 동시에 모니터링한다.
데이터 섀도잉 시스템(100)은 모니터링 컴퓨터 시스템(110)의 메모리로부터 검색되는 데이터를 단일의 형태로 효율적으로 저장하는 반면, 내부적으로는 2개의 형태, 즉 디스크 섹터 및 파일로 나타낸다. 또한, 중복 데이터를 저장하지 않고, 시점에 정확한 디스크 레벨 및 파일 레벨 복원을 허용하면서, 데이터 섀도잉 시스템(100)은 전체 시간에 걸쳐 모니터링 컴퓨터 시스템(110) 상에 존재하는 멀티 파일 시스템의 상태를 효율적으로 추적하여 저장한다. 메타 파일 시스템은 데이터 섀도잉 시스템(100)에 구현되어, 한 시점에서의 각각의 액티브 파일 시스템과 하위의 물리적인 디스크의 상태를 무결성 상태로 기술한다. 메타 파일 시스템은, 파일 시스템과 그 보호하의 물리적인 디스크로부터의, 내부적으로 일치하고 시간적으로 연관된 임계 데이터 및 메타 데이터 집합이다. 메타 파일 시스템은 특정 데이터를 수집할 수 있고, 또한 정확함이 보장되는 방식으로 수집할 수 있다.
수집되는 전형적인 메타 파일 데이터는 이하를 포함할 수 있다.
모니터링 컴퓨터 시스템(110)에 설치된 각각의 물리적인 디스크 상에 포맷된 비 NTFS 섹터의 베이스라인 이미지.
지정된 시점에 각 물리적인 디스크 상에 포함된 파일 시스템의 완전한 색인화. 이 색인은 물리적인 디스크 상에서의 그들의 위치에 파일 오브젝트를 매칭하는 것을 포함한다.
전체 시간에 걸친 파일 시스템 변경의 연속된 일지.
전체 시간에 걸쳐 파일 시스템 변경으로부터 야기되는 파일 오브젝트 내용의 사본.
시점에서의 각 액티브 파일 시스템에 대한 온 디스크 메타데이터의 복수의 일관된 "스냅샷".
시간적인 관점에서 일정한 멀티 액티브 파일 시스템을 작성하는 시도는, 수집된 데이터를 단일의 데이터베이스로 결합하여, 데이터 섀도잉 시스템(100)에 존재하는 데이터 관리 알고리즘을 통해 그 단일의 데이터베이스를 체계화하고 액세스함으로써, 충족된다.
메모리 색인화
단계(206)에서, 초기 데이터 전송 처리에서의 제 1 단계는 모니터링 컴퓨터 시스템의 메모리(113)의 모든 내용의 마스터 색인을 생성하는 것이다. 제어 소프트웨어 요소(103)는 모니터링 컴퓨터 시스템(110) 상의 각 저장 장치(메모리 : 113)를 알아내고, 각 저장 장치(TRStroageDevice)의 대응하는 오브젝트 모델을 작성한다. 저장 장치 오브젝트는 모니터링 컴퓨터 시스템(110)의 칠드런(children)이다. 그들 오브젝트 모두가 일부 베이스 레벨 속성을 공유하는 반면, 그들 오브젝트는 물리적인 장치의 다른 측면에 대해 특화한다.
각각의 TRStorageDevice에 있어, 모니터링 컴퓨터 시스템(110)은 보유하고 있는 고유 디스크 영역 모두를 확인하고 각 (TRDiskRegion)에 대한 오브젝트 모델을 작성한다. 모든 TRDiskRegion은 일부 기본 특성을 공유하는 반면, TRDiskRegion은 그들이 기술하는 영역의 형태에 따라 자신을 특화한다. 예컨대, 고유 디스크 영역은 마스터 부팅 레코드(MBR), 파티션 테이블, 파일 시스템 영역(NTFS 또는 FAT32 파티션), 숨겨진 OEM 복원 파티션, 및 정상적인 파티션 사이의 나머지인, 표면적으로는 사용되지 않는 "슬라이스"를 예로 들 수 있다. 데이터 섀도잉 시스템(100)은 물리적인 저장 장치 상의 단일 섹터 모두를 확인하고 고려하여, 적절한 TRDiskRegion 오브젝트를 작성하여 관리 및 색인화한다.
인식가능한 파일 시스템을 가지고 있지 않은 TRDiskRegion은 "블럭 영역"으로서 취급된다. 블럭 영역은 디스크 섹터의 기간(섹터 제로로부터의 개시 및 길이)을 포함하고, 데이터 섀도잉 시스템(100)의 메모리 장치(102) 상에 블럭 범위로서 단순히 저장된다.
이러한 마스터 색인은 단계(207)에서 마스터 부팅 레코드 및 파일 시스템을 처리하는 것을 포함하여, 모니터링 컴퓨터 시스템(110) 상의 모든 파티션의 색인, 파일 및 폴더를 생성하고, 각 파티션, 파일 및 폴더의 이러한 색인은, 옵션으로 메 모리 모듈(101) 내의 데이터베이스(105)뿐만 아니라, 모니터링 컴퓨터 시스템 메모리(113) 상에 존재하는 데이터베이스(114)에 엔트리된다.
마스터 부팅 레코드는 모니터링 컴퓨터 시스템의 메모리(113) 상의 데이터 관리에 관한 정보를 포함한다. 이들 내용은, 1차 부팅가능 파티션과, 택일의 비부팅가능한 파티션이 존재하는 바와 같이, 하위 데이터로 정렬될 수 있다. 마스터 부팅 레코드로의 엔트리는, 각 파티션의 크기 및 2진 오프셋값뿐만 아니라, 이들 파티션의 상태를 결정한다. 이러한 정보를 캡쳐하여 처리하면, 데이터 섀도잉 시스템(100)은 모니터링 컴퓨터 시스템의 전체 내용을 자동으로 재구성할 수 있다. 데이터베이스는 대규모로 존재하여 파일 이력 및 재개정을 조사하고 검색하는 (보다 빠른) 방법을 가능하게 한다. 모니터링 컴퓨터 시스템(110)의 파일 시스템의 "사본/백업"을 규정하는데 사용되는 방법에 의해, 데이터 섀도잉 시스템(100) 자체로부터의 데이터베이스(114)에 포함된 데이터의 재작성을 가능하게 한다. 데이터 섀도잉 시스템(100)의 경우에, 모니터링 컴퓨터 시스템(110)의 특징 또는 속성을 모델링하는 오브젝트 모델의 대다수는 자신들의 만들어진 물리적인 계층에 일치시키거나 모방하는 디렉토리 구조 내의 파일 시스템 스트림으로서 데이터 섀도잉 시스템(100)의 메모리 모듈(101)에 보존된다.
마스터 부팅 레코드를 처리한 후, 1차 부팅가능 파티션에 대한 파일 시스템이 단계(208)에서 처리되어 각 파일 및 폴더 엔트리를 기록하고, 모니터링 컴퓨터 시스템 메모리(113) 상에 존재하는 데이터베이스(114)에 레코드를 배치한다. 이러한 데이터베이스는 각 파일 및 폴더에 관한 정보를 포함하며, 파일 검색 요구동안 에 1차적으로 액세스되고, 또한 개별적인 파일 및 폴더에 대한 변경을 갱신하여 변경에 대한 연대 기록을 작성한다. 이러한 동일 데이터베이스(114)는, 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)에 접속될 때마다, 데이터 섀도잉 시스템 메모리 모듈(101) 상에 미러된다(데이터베이스(105)). 미러된 데이터베이스(105)는 모니터링 컴퓨터 시스템 메모리(113)가 실패했을 전체 시스템 복원동안에 1차적으로 사용되고, 미러된 데이터베이스(105)는 데이터 섀도잉 시스템 메모리 장치(102)에 복사된 2진 데이터에 존재하는 각 파일 및 폴더의 기록을 포함한다. 인식된 파일 시스템을 가지고 있는 TRDiskRegion은 파일 시스템 "볼륨" (TRVolume)에 대한 오브젝트 모델을 작성한다. 볼륨은 포함된 파일 시스템의 개념 및 네비게이션과, 이들의 관련되어 장착된 포인트의 개념을 알게 된다.
메모리 복사
마스터 부팅 기록 및 파일 시스템의 처리의 완료시에, 데이터 섀도잉 시스템(100)은 메모리(113)의 서브세트를 제외하고, 모니터링 컴퓨터 시스템 메모리(113)로부터의 2진 정보를 복사함으로써 이러한 처리의 제 2 단계를 개시한다. 제외된 서브세트는, 할당되지 않은 또는 어느 하나의 파티션에 의해 사용하는 것으로 확인된 영역과, 운영 시스템에 의해 임시 정보로서 확인된 영역으로 구성되어 있다. 임시 정보에는 예컨대, 현재의 세션동안에만 유용하고 후속 세션에서는 의미가 없는 운영 시스템의 페이지 파일이 있다.
단계(211)에서, 복사 처리는 데이터 섀도잉 시스템(100) 저장 장치를 확인하 여 비 NTFS 파일 오브젝트를 데이터 섀도잉 시스템(100)의 메모리 장치(102)에 기록한다. 이들 오브젝트 모두가 메모리 장치(102)에 기록되면, 단계(212)에서, 데이터 섀도잉 시스템(100)은 모니터링 컴퓨터 시스템(110) 상에서의 그들의 물리적인 및 논리적인 관계를 모방한 디렉토리 계층에서 NTFS 파일 모두를 메모리 장치(102)에 기록한다. 이하는 데이터 섀도잉 시스템(100)의 단순한 베이스 디렉토리이다(포함된 파일 시스템의 깊이는 생략되었다).
Figure 112009032541200-PCT00001
이를 이해하기 위해서, 제어 소프트웨어 요소(103)는, 네트워크 방식의 데이터 섀도잉 시스템 저장 장치(103)가 드라이브 "R:" 상에 장착되었음을 알고 있으며, 모든 저장 동작은 메모리 모듈(101) 내에 위치한 디렉토리 "data"로 진행한다. 이러한 스트링에서의 다음 표시는 내용 "REBITDEV05", 게다가 물리적인 디스크 서명(즉, 072CE3A9, 072CE3A9 등)이 제공된 모니터링 컴퓨터 시스템(110)의 명칭이다. 디스크 드라이브가 저장되어야 하는 데이터를 가지고 있다면, 단순히 일련 번호가 매겨진 영역 오브젝트(Region0, Region1 등)로 조직된다. 영역이 하나의 이해된 파일 시스템/볼륨을 포함하고 있다면, 그 볼륨 식별자는 지속적인 저장으로 자신의 경로를 맵핑하는데 사용된다. R:\data\REBITDV05\072CE3A9\Region1\ {ddffc3ed-7035-11dc-9485-000c29fddfb0}의 경우에, 이러한 시스템 상에서, 이는 NTFS 볼륨이고, 모니터링 컴퓨터 시스템(110)의 드라이브 "C:"에 대한 파일 시스템의 전체 미러인 경우가 발생한다.
여기서, 중요한 점은 모니터링 컴퓨터 시스템(110)의 각 구성 요소에 대한 오브젝트 모델이 데이터 섀도잉 시스템(100)의 메모리 장치(102) 상의 파일 시스템 스트림에 저장된다. 예컨대, TRMachine 오브젝트는 R:\data\REBITDEV05\ 디렉토리 엔트리의 안쪽에 숨겨진 스트림으로서 저장되고, R:\data\REBITDV05\072CE3A9 \Region1\{ddffc3ed-7035-11dc-9485-000c29fddfb0}에 대한 볼륨 오브젝트가 그 디렉토리 엔트리 상의 숨겨진 스트림으로서 저장된다.
이것이 의미하는 것은, 데이터 섀도잉 시스템(100) 파일 시스템 단독으로부터, 오브젝트 관계 모두와 그들의 메타 데이터는 데이터베이스 없이 재구성될 수 있다는 것이다. 또한, 결국 파일이 데이터 섀도잉 시스템(100)에 저장되는 경우, 그 관련 이력 및 메타 데이터 모두는 파일 엔트리 자체에 하나의 숨겨진 스트림으로서 저장된다. 데이터베이스(114)는 데이터 섀도잉 시스템(100)의 저장 파일 시스템 자체로부터 완전히 재구성될 수 있다.
또한, 데이터 섀도잉 시스템(100) 저장 구조에서, 실제로 파일은 그들이 가지고 있는 이름으로 모니터링 컴퓨터 시스템(110) 상에 저장되지 않는다. 오히려, 파일은 그 파일의 내용의 고유 해시 값(hash value)인 파일 이름으로 저장된다. 그 다음, 파일 시스템 "soft link"는 모니터링 컴퓨터 시스템(110)으로부터의 파일인 "blob" 이름의 데이터의 해시값의 데이터를 지칭하도록 상술한 디렉토리 구조에 사용된다. 사용자만이 소프트 링크를 볼 수 있다. 데이터 섀도잉 시스템(100)은 파일 이름의 해시값을 저장한다. 어느 2개의 파일이 동일값으로 해시되어 있다면(이들 2개의 파일이 동일한 2진값임을 의미), 하나의 사본만이 저장 장치에 호스트될 필요가 있고, 호스트 사본 둘 다에 대한 기호 링크는 동일한 저장 내용을 가르킨다. 이러한 기능적인 속성은 고유 데이터의 중복 제거의 제 1 레벨이다.
계속해서, 파일이 모니터링 컴퓨터 시스템(110) 상에서 변경될 때, 새로운 데이터가 해시되고, 명명되어, 모니터링 컴퓨터 시스템(110) 상에 저장되고, 파일의 구 버전은 제거되고, 새로운 버전(역 X 델타)과의 2진차(binary difference)의 단 하나의 기술자(description)로 대체된다. 이러한 전략에 의해, 데이터 섀도잉 시스템(100)은 모든 현재 파일의 본래의 사본을 유지하고, 이전 버전을 항상 재생성할 수 있으며, 데이터 섀도잉 시스템(100) 자체상에서의 데이터 저장 공간 요건 을 최소화한다.
모니터링 컴퓨터 시스템(110)의 메모리(113)를 판독하는데 걸리는 시간으로 인해, 또한, 하나의 액티브 파일 시스템을 포함하고 있기 때문에, 데이터 섀도잉 시스템(100)에 의해, 물리적인 디스크 상에 존재하는 액티브 파일 시스템에 대한 단계(209)에서의 저널링이 이미지화될 수 있다. 추가로, 단계(210)에서의 데이터 섀도잉 시스템(100)은 액티브 파일 시스템 저널에 대항하여 커서 세트를 생성함으로써 보존 시점이 바람직함을 표시하는 플래그를 데이터베이스에 설정하며, 여기서 커서 세트는 "개시 커서"로서 명명된다. 저널 처리는 작용하는 파일을 확인하고 큐잉하는 것을 개시한다. 커서가 작성되면, 단계(211)에서의 데이터 섀도잉 시스템(100)은 액티브 파일 시스템의 이미지를 작성하여 데이터 섀도잉 시스템(100)의 메모리 모듈(101)의 메모리 장치(101)에 압축한다. 메모리 공간을 세이브하기 위해, 액티브 파일 시스템은 물리적인 디스크의 할당된 영역에 대해 질의하여, 단지 할당된 영역만이 판독되어 압축된다.
단계(212)에서, 데이터 섀도잉 시스템(100)은 액티브 파일 시스템을 색인화하여 파일 시스템 내의 파일 오브젝트 마다 관련 메타데이터를 추출하여 데이터베이스에 기록한다. 데이터 섀도잉 시스템(100)은 파일 레퍼런스 번호(FRN)에 의해 파일 네비게이션 시스템 내에 포함된 모든 디렉토리를 확인하여 색인화하고, 엔트리를 확인하여, 파일을 나타내는 각 클러스터 동작을 위한 데이터베이스에 삽입한다. 데이터 섀도잉 시스템(100)은 초기화 완성을 표시하는 데이터베이스의 엔트리를 삽입함으로써 베이스라인을 초기화한다. 이미지와 색인이 완료하면, 단계(213) 에서의 데이터 섀도잉 시스템(100)은 액티브 파일 스트림 저널에 대항하여 "가장 최근의 엔트리(Most Recent Entries)"로 불리우는 제 2 커서 세트를 생성한다.
단계(214)에서, 데이터 섀도잉 시스템(100)은 변경 추적을 가능하게 하고, 단계(215)에서, 파일 오브젝트 내용을 포함한, 변경의 레코드를 데이터베이스에 기록하기 위해서, 액티브 파일 시스템에 대한 저널은 개시 커서로부터 가장 최근의 엔트리까지 처리된다. 처리하기 위한 파일이 대기열에 전혀 남아 있지 않은 시점에 도달하면, 보전 시점 엔트리를 데이터베이스에 삽입하기 적절한 동작이 취해진다.
최종적으로, 단계(216)에서, 데이터 섀도잉 시스템(100)은 베이스라인 이미지와 파일 오브젝트 변경 기록이 연관되어 있는 데이터베이스 내의 보존 시점을 기록한다. 이는 보전 시점을 나타내는 시점에서 시종일관의 디스크 복원을 가능하게 하는데 필요한 데이터이다. 따라서, 전체 디스크 사본 동안에 발생되는 전체 디스크 사본 및 파일 변경, 생성, 삭제, 또는 재배치는 "보전 시점"으로 불리우는 전체 복원가능한 시점을 나타내도록 하나의 세트에 수집된다.
변경 추적
도 3은 모니터링 컴퓨터 시스템의 메모리(113)에 새롭게 추가되는 데이터 사본을 저장하기 위한 본 데이터 섀도잉 시스템(100)의 동작을 흐름도 형태로 도시한다. 데이터 섀도잉 시스템(100)은 모니터링 컴퓨터 시스템의 메모리(113) 상에 존재하는 파일 및 폴더에 발생하는 변경의 통지를 수신하기 위해 운영 시스템의 변경 저널로 레지스터를 처리한다. 그 다음, 변경 저널은 데이터 섀도잉 시스템(100)에 변경을 동적으로 통지하고, 데이터 섀도잉 시스템(100)이 취할 적절한 동작을 결정할 수 있게 한다. 파일 작성, 이동, 내용 변경 및 재명명은 모두 동작을 필요로 하는 이벤트이며, 각각의 동작은 처리를 위한 동작 대기열에 입력된다.
데이터 섀도잉 시스템의 동작 대기열은, 데이터 섀도잉 시스템의 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)으로부터 탈착 또는 부착되는 기간 동안에 이용된다. 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)에 부착되어 있으면, 데이터 섀도잉 시스템(100)은, 데이터베이스(114)의 엔트리를 갱신하고, 필요하다면, 파일 2진 내용을 압축하여 데이터 섀도잉 시스템의 메모리 모듈(101)에 전송함으로써, 각각의 동작 대기열의 엔트리를 처리한다.
데이터 섀도잉 시스템 메모리 모듈(101)이 탈착되는 기간 동안에, 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)에 부착되면, 동작 대기열은, 실행되는 행동을 기록하기 위해서 이용된다. 이 기록 처리에 의해, 데이터 섀도잉 시스템(100)은 수행되는 동작의 우선 순위를 정할 수 있고, 하위 우선 순위의 파일에 앞서 처리될 가장 중요한 파일을 선택한다. 이것은, 파일 시스템의 일관적인 시점을 모으기 위해서 필요한 데이터를 유지하는 연속 처리이다. 초기화 및 색인화가 완료되는 즉시, 변경 추적의 처리가 상술한 바와 같이 개시된다.
저널 처리
저널 처리는 계속적이고, 데이터 섀도잉 시스템 메모리 모듈(101)이 모니터 링 컴퓨터 시스템(110)에 부착되어 있는지 여부에 따라 발생한다. 단계(301)에서의 데이터 섀도잉 시스템(100)의 제어 소프트웨어 요소(103)는, 이전에 처리된 최종 엔트리부터 시작되어, 가장 최근의 변경에 대한 파일 시스템 저널을 문의한다. 그 다음, 단계(302)의 제어 소프트웨어 요소(103)는, 데이터베이스(114)의 동작 대기열의 변경 레코드를 작성하고, 각각의 관련 저널 엔트리에 대한 저널 커서를 증가시킨다, 각각의 관련된 저널 엔트리에 있어, 제어 소프트웨어 요소(103)는 데이터베이스(114)의 동작 대기열의 변경 레코드를 작성하고, 저널 커서를 증가시킨다. 저널 엔트리가 소모(갱신)될 때에는, 제어 소프트웨어 요소(103)는 새로운 엔트리를 감시한다.
데이터 동기(Data Synchronization)
데이터 동기는 간헐적이고, 데이터 섀도잉 시스템 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)에 부착되어 있을 때에만 발생한다. 메모리 모듈(101)이 모니터링 컴퓨터 시스템(110)에 부착되어 있을 때에는, 제어 소프트웨어 요소(103)는 단계(304)에서 데이터베이스(114)의 동작 대기열의 최초의 처리되지 않은 변경 레코드부터 처리하기 시작한다. 가장 오래된 변경 레코드 및 모든 관련된 처리되지 않은 변경 레코드에 대해, 단계(305)에서의 제어 소프트웨어 요소(103)는, 각각이 여전히 관련되고 있는지 여부를 결정한다(예컨대, 파일이 작성되어, 이미 삭제되어 있으면, 그것은 관련되어 있지 않다). 단계(306)에서의 제어 소프트웨어 요소(103)는, 데이터베이스(114)의 동작 대기열로부터, 모든 관련없는 변경 레코드를 삭제한다. 대신에, 단계(307)에서, 제어 소프트웨어 요소(103)는, 각각의 관련된 변경 레코드에 대한 적절한 행동을 취한다. 파일이 작성되었다면, 단계(308)에서, 제어 소프트웨어 요소(103)는 새로운 파일과 파일 버전의 레코드를 데이터베이스(114)의 동작 대기열에 저장하고, 단계(308)에서 데이터 섀도잉 시스템 메모리 모듈(101)에 파일 버전의 내용을 복사한다. 파일이 이동했거나 또는 새롭게 명명되었다면, 제어 소프트웨어 요소(103)는 데이터베이스(114)의 동작 대기열에 새로운 파일 레코드를 작성하고, 오래된 파일 레코드로부터의 모든 파일 버전을 새로운 파일 레코드와 연관시켜, 그 오래된 파일 레코드를 단계(309)에서 삭제된 것으로 마크한다. 파일이 삭제되었다면, 제어 소프트웨어 요소(103)는 단계(310)에서 삭제된 것으로 데이터베이스(114)의 동작 대기열의 파일 레코드를 마크한다. 디렉토리가 작성되었다면, 제어 소프트웨어 요소(103)는 새로운 디렉토리 레코드를 데이터베이스(114)의 동작 대기열에 저장한다. 디렉토리가 이동했거나 새롭게 명명되었다면, 제어 소프트웨어 요소(103)는 데이터베이스(114)의 동작 대기열의 새로운 디렉토리 레코드를 작성하고, 오래된 디렉토리 레코드로부터의 모든 파일 레코드를 새로운 디렉토리 레코드와 연관시켜, 단계(312)에서 삭제된 것으로서 오래된 디렉토리 레코드를 마크한다. 디렉토리가 삭제되었다면, 단계(313)에서, 제어 소프트웨어 요소(103)는 데이터베이스(114)의 동작 대기열의 디렉토리 레코드를 삭제된 것으로서 마크한다. 마지막으로, 단계(314)에서, 제어 소프트웨어 요소(103)는 데이터베이스(114)의 동작 대기열로부터 변경 레코드를 삭제하고, 처리가 단계(305)로 진행한다.
보전 시점 작성
도 4는 보전 시점을 작성하고 저장하여 모니터링 컴퓨터 시스템의 메모리(113)에서의 변경을 벤치마킹하기 위한 본 데이터 섀도잉 시스템의 동작을 흐름도 형태로 도시한다.
이것은, 한 시점에 있어, 디스크 복원을 실행하는데 필요한 정보를 저장하는데 필요한 동작이다. 보전 시점을 작성하는 처리는, 액티브 파일 시스템에 의해 디스크 상에 유지된 메타데이터 파일의 일관된 "스냅샷"을 판독하여 저장하는 것을 필요로 한다. 이것은, 스냅샷이 작성되는 동안에 발생하는 변경에 대해 이들의 파일 시스템을 모니터링하는 것을 필요로 하고, 다른 시도를 요구하면서, 그들의 스냅샷을 무료로 하는지 여부를 판단할 것을 필요로 한다. 예시적인 동작은 이하의 단계를 포함한다.
보전 시점을 작성하는 것을 시도하기 전에, 저널 처리과 데이터 동기는 최신이어야 한다. 각각의 액티브 파일 시스템은 자신의 사용을 위해 할당되어 있는 디스크 상의 물리적인 위치를 결정하기 위해, 단계(401)에서 제어 소프트웨어 요소(103)에 의해 문의된다(또는, 직접 구문 분석된다)(파일 시스템 영역). 이들의 파일 시스템 영역은, 파일 시스템의 일정한 상태를 정의하고 일관성이 있어야 하는 데이터 구조를 포함하고 있다. 그 다음, 제어 소프트웨어 요소(103)는, 자신의 다음 레코드 색인에 대해 단계(402)에서 각각의 액티브 파일 시스템의 저널을 문의하고, 이 값이 커서로서 유지된다. 제어 소프트웨어 요소(103)는, 운영 시스템에게, 단계(403)에서 메모리(102)에 모든 액티브 파일 시스템을 플러쉬할 것을 지시하고, 각각의 액티브 파일 시스템의 파일 시스템 영역은 섹터 레벨에서 디스크(113)로부터 직접 판독되어, 단계(404)에서 데이터 섀도잉 시스템(100) 상의 저장소에 저장된다.
또 다시, 제어 소프트웨어 요소(103)는 자신의 다음 레코드 색인을 위해 단계(405)에서 각각의 액티브 파일 시스템의 저널을 문의하고, 이 값을 이전에 기록된 커서와 비교한다. 커서가 일치하면, 단계(406)에서, 보전 시점은 데이터베이스(114)에서와 마찬가지로 "확인"되고 마크된다. 커서가 일치하지 않으면, 위반하는 저널이 단계(407)에서 상호 커서 엔트리에 대해 문의한다. 엔트리는 단계(408)에서 제어 소프트웨어 요소(103)에 의해 조사되어, 그들이 스냅샷을 무효로 하는지 여부를 결정한다. 그렇다면, 처리는, 단계(401)로부터, 유효한 스냅샷이 달성될 때까지 반복된다. 스냅샷이 유효하다면, 단계(410)에서, 이전의 보전 시점과 이 보전 시점 사이에 발생하는 변경 레코드에 기인하는 모든 파일 오브젝트는 데이터베이스(114) 내의 보전 시점 레코드에 연관되며, 보전 시점은 "봉인"으로서 마크된다. 데이터베이스 애플리케이션은 단계(411)에서, 백업의 조작을 실행하는 것을 지시하여, 데이터 섀도잉 시스템(100)의 메모리 모듈(101) 상에 데이터베이스(114)의 압축된 표현을 결과적으로 배치한다.
파일 버전 검색
도 5는 모니터링 컴퓨터 시스템(110)의 메모리(113) 내의 파일의 복원을 위해, 그 안에 저장된 데이터를 검색하기 위한 본 데이터 섀도잉 시스템(100)의 동작 을 흐름도 형태로 도시한다. 이것은, 한 시점에서 파일의 내용을 "재구성"하는 동작이다. 이 파일 버전은, 초기화 동안에 데이터 섀도잉 시스템(100)에 저장된 베이스라인 디스크 이미지에 또는 데이터 섀도잉 시스템(100) 상의 파일 버전 저장소에 존재할 수 있다.
데이터베이스(114)는, 초기화 동안에 캡쳐되는 파일을 포함한, 데이터 섀도잉 시스템(100)에 저장된 각각의 파일의 레코드를 포함한다. 전체적인 시간 경과에서, 주어진 파일의 복수의 버젼의 복원을 가능하게 하는 데이터는 데이터 섀도잉 시스템(100) 상에 저장되고, 몇몇 시점 중 하나의 시점으로부터 파일의 버전을 검색하는 능력을 만들어낸다. 모니터링 컴퓨터 시스템(110)에 있어 파일이 수정될 때에는, 새로운 데이터는, 모니터링 컴퓨터 시스템(110) 상에 해시되고, 명명되어, 저장되며, 그 후, 구 버전의 파일이 제거되어서, 새로운 버젼에 그 2진의 차이의 설명만을 대체한다(역 X 델타). 이 전략에 의해, 데이터 섀도잉 시스템(100)은 항상 이전 버전을 재생할 수 있고 데이터 섀도잉 시스템(100) 자신의 데이터 저장 공간 요건을 최소화하면서, 모든 현재의 파일의 진정한 사본을 유지할 수 있다.
데이터 섀도잉 시스템(100)의 데이터베이스 및 관련된 위치로부터 파일을 검색하는 처리는, 사용자가 사용자 인터페이스를 열고, 원하는 파일 또는 폴더를 배치하기 위해서, 계층적인 파일과 폴더 시스템을 통해서 네비게이션하는 단계(501)에서 개시한다. 사용자는, 단계(502)에서, 원하는 파일 또는 폴더를 선택하고, 선택된 파일 또는 폴더를, 모니터링 컴퓨터 시스템 상의 다른 폴더 위치(예컨대, "데스크 톱" 또는 "나의 문서")로 이동하기 위해서, "드러그 및 드롭" 기능을 이용한 다. 마우스 버튼을 해제하는 즉시, 단계(503)에서의 운영 시스템은 사용자 인터페이스에 의해 식별된 소스 파일과 관련된 데이터를 위한 요구를 데이터 섀도잉 시스템(100)으로부터 발생한다. 그 후, 데이터베이스는, 사용자에 의해 선택된 시점에서 역으로 추적되어, 선택된 파일의 현재의 버전 및 그 2진의 차이를 새로운 버전에 배치하기 위해 단계(504)에서 문의한다.
단계(505)에서, 사용자가 파일의 현재의 버전을 선택하면, 데이터 섀도잉 시스템(100)은, 현재 파일의 진정한 사본을 검색하여, 그 파일을 사용자에게 전달한다. 그렇지 않으면, 데이터 섀도잉 시스템(100)은, 단계(506)에서, 사용자에 의해 표시되는 파일의 그 선택된 버전을 재작성하는 시간에, 나중에 그 선택된 파일을 추적하기 위해서, 2진의 차이의 집합을 이용하고, 그 다음, 재구성된 파일을 사용자에게 전달한다. 사용자는 단계(507)에서 데이터 스트림 인터페이스에 있어서 판독 및 추적하여, 원하는 내용을 처리한다.
디스크 복원
도 6은 모니터링 컴퓨터 시스템(110)의 메모리(113)의 완전의 복원을 위해서 그 안에 저장된 데이터를 검색하기 위한 본 데이터 섀도잉 시스템(100)의 동작을 흐름도 형태로 도시한다. 이것은, 한 시점에서, 모니터링 컴퓨터 시스템(110)의 물질적인 디스크(113)의 완전한 상태를 복원하기 위해서 필요한 동작이다. 입수가능한 시점은 이전에 저장된 보전 시점에 의해 정의된다. 디스크 복원의 목적은, 물리적인 디스크(113)의 일관된 이미지를 섹터 레벨로 "재구성"하고, 이 이미지를 모니터링 컴퓨터 시스템(110)의 하드 디스크(113)에 기록하는 것이다.
물리적인 시스템 디스크(113)에 기록하기 위해서, 대체의 매체로부터, 모니터링 컴퓨터 시스템(110)을 부팅하고, 단계(601)에서 그 디스크(113)의 파일 시스템이 사용되지 않고 있음을 보증하는 것이 필요하다. 단계(602)에서, 사용자는, 환경을 용인할 수 있음을 보증하지 않으면 안된다. 데이터 섀도잉 시스템(100)은, 단계(603)에서, 모니터링 컴퓨터 시스템(110)에 접속하고, 액세스 가능해야 한다. 단계(604)에서, 종속의 하드 디스크(113)가 이용가능해야 하고, 복원 디스크 이미지를 받기에 충분히 커야 한다. 종속의 하드 디스크(113)는 포맷될 필요는 없지만, 요구되면, 포맷할 수 있다. 단계(605)에서, 종속의 하드 디스크 상에 존재하는 파일 시스템은 미장착되어 있고, 사용자는, 단계(606)에서, 종속의 하드 디스크(113) 상에 복원하기 위해 보전 시점을 선택한다.
데이터 섀도잉 시스템(100)에 저장된 베이스라인 비 NTFS 디스크 이미지는, 단계(607)에서, 종속의 하드 디스크(113)에 섹터 단위로 직접 기록된다. 데이터베이스(114)는, 선택된 베이스라인에 가장 근접한 파일 시스템 이미지에 대응하는 스냅샷에 대해 단계(608)에서 문의한다. 단계(609)에서, 스냅샷은 종속의 하드 디스크에 기록되고, 각각의 파일 오브젝트에 대해, 데이터베이스(114)는 파일 오브젝트의 저장 위치에 대해 단계(610)에서 문의한다. 파일 오브젝트의 내용은 단계(611)에서 그 디스크 위치에 직접 기록된다. 종속의 드라이브(113)는 현재 사용할 준비하고, 모니터링 컴퓨터 시스템(110)은 단계(612)에서 재부팅될 수 있다.
게스트 PC/휴대가능 파일 액세스
데이터 섀도잉 시스템(100)은, 제 2의 비호스트 컴퓨터 시스템에의 데이터 섀도잉 시스템 메모리 모듈(101)의 접속이 신속히 식별되도록, 모니터링 컴퓨터 시스템(110)의 구별 기능을 기록한다. 다른 접속 조건에서, 사용자가 데이터 섀도잉 시스템의 메모리 모듈(101) 내에 저장된 파일에의 액세스를 원하는지 여부, 또는 사용자가 새롭게 접속된 컴퓨터 시스템과 쌍으로 되기 위해서 데이터 섀도잉 시스템(100)을 재초기화하는 것을 원하는지 여부를, 데이터 섀도잉 시스템의 "오토런" 초기화 애플리케이션은 사용자에게 질의한다. 사용자가 새롭게 접속된 컴퓨터 시스템으로 재초기화하기를 원하면, 이전의 모니터링 컴퓨터 시스템(110)으로부터의 모든 백업 데이터가 제거되고, 동일함을 표시하는 메시지가 표시된다. 사용자가 메모리 모듈(101)에 포함되어 있는 파일에 액세스하기를 원하면, 데이터 섀도잉 시스템(100)은, 사용자가 이전의 그래픽 사용자 인터페이스와 동일한 인터페이스를 이용하는 것을 허락하는 제한된 애플리케이션을 초기화한다. 그 다음, 사용자는 새롭게 접속된 컴퓨터 시스템의 하드 디스크 드라이브 상에 파일을 배치하고 드래그 및 드롭할 수 있다.
모니터링 컴퓨터 시스템의 운영 시스템은, 모니터링 컴퓨터 시스템(110)에 새롭게 접속되어 있는 디스크 드라이브 또는 데이터 섀도잉 시스템(100)의 기본의 디렉토리에 포함되어 있는 특정 파일을 인식한다. 타입 'autorun.inf'의 파일은, 파일 내에 정의된 바와 같이, 실행되는 일련의 동작의 존재에 대해서 운영 시스템에게 경고한다. 데이터 섀도잉 시스템(100)은, 모니터링 컴퓨터 시스템(110) 상에 성공적으로 설치하는 즉시, 후속의, 또는 게스트, 컴퓨터, 시스템에 플러그인되면, 이러한 'autorun.inf' 파일을 상이하게 동작하도록 변경한다. 이러한 변경된 'autorun.inf' 파일은, 복제된 데이터베이스를 재구성하고 신호를 보냄으로써, 데이터 섀도잉 시스템(100)에게 드라이브의 내용을 이용가능하게 하도록 지시한다. 이러한 방법을 통해, 관심있는 사용자 파일은 게스트 컴퓨터 시스템 상에 복사하기 위해 식별될 수 있다. 따라서, 디지털 그래픽 및 음악 파일 등의 모니터링 컴퓨터의 파일은 원하는 바대로 표시 또는 공유하기 위해 게스트 컴퓨터 시스템 상의 데이터 섀도잉 시스템(100)으로부터 전송될 수 있다.
게스트 컴퓨터 시스템의 파일에의 액세스를, 모니터링 컴퓨터 시스템에서의 액세스와 마찬가지로 무결정성(seamless)으로서 만들기 위해서, 게스트 컴퓨터 시스템의 파일 익스플로어가 이용된다. 파일 익스플러어 시스템에 등록하고, 호출함으로써, 데이터 섀도잉 시스템(100)의 내용의 디스플레이는, 사용자의 전형적인 컴퓨터 시스템의 내용의 디스플레이를 모방한다.
요약
데이터 섀도잉 시스템은, 2개의 형태, 디스크 섹터와 파일로 데이터 관리 데이터베이스에 나타내면서, 메모리 모듈 상에 데이터를 단일의 형태로 자동 저장한다. 이로써, 데이터 섀도잉 시스템은, 중복의 데이터를 저장하지 않고 한 시점에 올바른 디스크 레벨 및 파일 레벨 복원을 가능하게 하면서, 전체 시간에 걸쳐 복수의 파일 시스템의 상태를 효율적으로 추적하여 저장한다.

Claims (24)

  1. 모니터링 컴퓨터 시스템의 메모리에 기록되는 데이터의 자동 백업 저장, 및 복원용의 이러한 데이터의 상기 메모리에서의 선택적 검색을 위한 데이터 섀도잉 시스템으로서,
    모니터링 컴퓨터 시스템에 배타적으로 접속되어 있으며, 또한 상기 모니터링 컴퓨터 시스템의 상기 메모리에 기록되어 있는 상기 데이터의 섀도우 사본을 저장하는 메모리 모듈 수단과,
    복수의 상기 모니터링 컴퓨터 시스템에 존재하고, 상기 모니터링 컴퓨터 시스템상에 존재하는 모든 비-NTFS 파일을 포함하는 고객 데이터 파일을 상기 메모리 모듈 수단에 자동 저장하는 고객 데이터 파일 관리 수단
    을 포함하되,
    상기 고객 데이터 파일 관리 수단은,
    상기 모니터링 컴퓨터 시스템의 메모리에 기록된 모든 비-NTFS 파일을 포함하는 고객 데이터와 연관되어 있는 파일 디렉토리 구조를, 고객 데이터 파일의 원래의 이름을 상기 모니터링 컴퓨터 시스템 상에 저장된 것으로서 식별하는 파일 트리 정보와, 상기 고객 데이터를 저장하는 상기 메모리 모듈 수단 내의 위치에 자율적으로 맵핑하는 고객 데이터 파일 맵핑 수단과,
    상기 모니터링 컴퓨터 시스템 내의 데이터베이스에 상기 파일 트리 정보를 저장하는 맵핑 데이터베이스 수단
    을 포함하는 데이터 섀도잉 시스템.
  2. 제 1 항에 있어서,
    상기 고객 데이터 파일 관리 수단은, 상기 고객 데이터 파일의 각각을 처리하여 상기 고객 데이터 파일 각각의 관련 해시값(hash value)을 생성하는 고객 데이터 파일 해시 수단을 더 포함하되,
    상기 메모리 모듈 수단은, 상기 고객 데이터 파일의 각각과, 상기 메모리 모듈 수단 내의 상기 관련 해시값을 저장하는 고객 데이터 파일 저장 수단을 포함하며,
    상기 맵핑 데이터베이스 수단은 상기 고객 데이터 파일의 상기 해시값을 상기 데이터베이스에 저장하는
    데이터 섀도잉 시스템.
  3. 제 2 항에 있어서,
    상기 고객 데이터 파일 저장 수단은 상기 고객 데이터 파일의 각각 및 상기 메모리 모듈 수단 내의 상기 관련 해시값과 함께 상기 파일 트리 정보를 추가로 저장하는 데이터 섀도잉 시스템.
  4. 제 2 항에 있어서,
    상기 복수의 모니터링 컴퓨터 시스템의 각각에 존재하고, 상기 메모리 모듈 수단 상에 시스템 파일을 자율적으로 저장하는 시스템 파일 관리 수단을 더 포함하되,
    상기 시스템 파일 관리 수단은, 상기 모니터링 컴퓨터 시스템의 메모리에 기록된 시스템 파일과 연관되어 있는 파일 디렉토리 구조를, 시스템 파일의 원래의 이름을 상기 모니터링 컴퓨터 시스템 상에 저장된 것으로서 식별하는 시스템 파일 트리 정보와, 상기 시스템 파일을 저장하는 상기 메모리 모듈 수단 내의 위치에 자율적으로 맵핑하는 시스템 파일 맵핑 수단을 포함하고,
    상기 맵핑 데이터베이스 수단은 상기 모니터링 컴퓨터 시스템 내의 데이터베이스에 상기 시스템 파일 트리 정보를 저장하는
    데이터 섀도잉 시스템.
  5. 제 4 항에 있어서,
    상기 시스템 파일은, 고객 제공의 데이터를 제외하고, 마스터 부팅 기록, 파티션 테이블 및 프로그램 중 적어도 하나를 포함하는 컴퓨터 파일을 포함하는 데이터 섀도잉 시스템.
  6. 제 4 항에 있어서,
    상기 시스템 파일 관리 수단은, 상기 시스템 파일의 각각을 처리하여 상기 시스템 파일의 각각의 하나의 관련 해시값을 생성하는 시스템 파일 해시 수단을 더 포함하되,
    상기 메모리 모듈 수단은, 상기 시스템 파일의 각각 및 상기 관련 해시값을 상기 메모리 모듈 수단에 저장하는 시스템 파일 저장 수단을 더 포함하고,
    상기 맵핑 데이터베이스 수단은 상기 고객 데이터 파일의 각각의 상기 해시값을 상기 데이터베이스에 저장하는
    데이터 섀도잉 시스템.
  7. 제 6 항에 있어서,
    상기 시스템 파일 저장 수단은 상기 시스템 파일 각각 및 상기 관련 해시값과 함께 상기 시스템 파일 트리 정보를 상기 메모리 모듈 수단에 추가로 저장하는 데이터 섀도잉 시스템.
  8. 제 2 항에 있어서,
    상기 고객 데이터 파일 관리 수단은, 고객 데이터 파일 작성, 고객 데이터 파일 이동, 고객 데이터 파일 내용 변경, 및 고객 데이터 파일 재명명을 포함하는 상기 고객 데이터 파일에 대한 변경을 자율적으로 추적하는 변경 저널 수단을 더 포함하는 데이터 섀도잉 시스템.
  9. 제 8 항에 있어서,
    상기 고객 데이터 파일 관리 수단은, 고객 데이터 파일의 수정에 응답하여, 상기 고객 데이터 파일과 상기 수정된 고객 데이터 파일 간의 차이를 나타내는 파일 변경 데이터를 생성하는 파일 이력 수단을 더 포함하되,
    상기 고객 데이터 파일 저장 수단은 상기 파일 변경 데이터를 상기 메모리 모듈에 저장하고, 상기 수정된 고객 데이터 파일을 상기 메모리 모듈 수단의 상기 고객 데이터 파일로 대체하는
    데이터 섀도잉 시스템.
  10. 제 2 항에 있어서,
    상기 고객 데이터 파일 관리 수단은, 상기 메모리 모듈 수단에 저장하기 전에 상기 고객 데이터 파일을 압축하는 데이터 압축 수단을 더 포함하는 데이터 섀도잉 시스템.
  11. 제 1 항에 있어서,
    상기 고객 데이터 파일 관리 수단은,
    액티브 고객 데이터 파일 시스템을 색인화하여 파일 시스템 내의 파일 오브젝트마다 관련 메타데이터를 추출하는 메타데이터 수단과,
    상기 메타데이터를 데이터베이스에 기록하는 데이터베이스 수단
    을 더 포함하는 데이터 섀도잉 시스템.
  12. 제 1 항에 있어서,
    상기 고객 데이터 파일 관리 수단은,
    모든 액티브 고객 데이터 파일 모두를 선택된 시점에 색인화하는 파일 시스템 스냅샷 수단과,
    상기 고객 데이터 파일 모두의 현재 내용을 나타내는 보전 시점으로서 메모리에 상기 색인을 저장하는 스냅샷 저장 수단
    을 더 포함하는 데이터 섀도잉 시스템.
  13. 모니터링 컴퓨터 시스템의 메모리에 기록되는 데이터의 자동 백업 저장, 및 복원용의 이러한 데이터의 상기 메모리에서의 선택적 검색을 위한 방법으로서,
    모니터링 컴퓨터 시스템에 배타적으로 접속되어 있는 메모리 모듈 수단에서, 상기 모니터링 컴퓨터 시스템의 상기 메모리에 기록되어 있는 상기 데이터의 섀도우 사본을 저장하는 단계와,
    상기 모니터링 컴퓨터 시스템상에 존재하는 모든 비-NTFS 파일을 포함하는 고객 데이터 파일을 상기 메모리 모듈 수단에 자율적으로 저장하는 단계
    를 포함하되,
    상기 저장 단계는,
    상기 모니터링 컴퓨터 시스템의 메모리에 기록된 모든 비-NTFS 파일을 포함하는 고객 데이터와 연관되어 있는 파일 디렉토리 구조를, 고객 데이터 파일의 원래의 이름을 상기 모니터링 컴퓨터 시스템 상에 저장된 것으로서 식별하는 파일 트리 정보와, 상기 고객 데이터를 저장하는 상기 메모리 모듈 수단 내의 위치에 자율적으로 맵핑하는 단계와,
    상기 모니터링 컴퓨터 시스템 내의 데이터베이스에 상기 파일 트리 정보를 저장하는 단계
    를 포함하는 데이터의 자동 백업 저장 방법.
  14. 제 13 항에 있어서,
    고객 데이터 파일을 자율적으로 저장하는 상기 단계는, 상기 고객 데이터 파일의 각각을 처리하여 상기 고객 데이터 파일 각각의 관련 해시값(hash value)을 생성하는 단계를 더 포함하되,
    데이터의 섀도우 사본을 저장하는 상기 단계는, 상기 고객 데이터 파일의 각각과 상기 관련 해시값을 상기 메모리 모듈에 저장하는 단계를 포함하며,
    상기 맵핑 데이터 데이터베이스는 상기 고객 데이터 파일의 각각의 상기 해시값을 상기 데이터베이스에 저장하는
    데이터의 자동 백업 저장 방법.
  15. 제 14 항에 있어서,
    상기 고객 데이터 파일 각각의 저장 단계는, 상기 고객 데이터 파일의 각각 및 상기 관련 해시값과 함께 상기 파일 트리 정보를 상기 메모리 모듈에 추가로 저장하는 데이터의 자동 백업 저장 방법.
  16. 제 14 항에 있어서,
    상기 메모리 모듈에 시스템 파일을 자율적으로 저장하는 단계를 더 포함하되,
    상기 자율적 저장 단계는,
    상기 모니터링 컴퓨터 시스템의 메모리에 기록된 시스템 파일을, 시스템 파일의 원래의 이름을 상기 모니터링 컴퓨터 시스템 상에 저장된 것으로서 식별하는 시스템 파일 트리 정보와, 상기 시스템 파일을 저장하는 상기 메모리 모듈 내의 위치에 자율적으로 맵핑하는 단계와,
    상기 모니터링 컴퓨터 시스템 내의 데이터베이스에 상기 시스템 파일 트리 정보를 저장하는 단계
    를 포함하는 데이터의 자동 백업 저장 방법.
  17. 제 16 항에 있어서,
    상기 시스템 파일은, 고객 제공의 데이터를 제외하고, 마스터 부팅 기록, 파티션 테이블 및 프로그램 중 적어도 하나를 포함하는 컴퓨터 파일을 포함하는 데이터의 자동 백업 저장 방법.
  18. 제 16 항에 있어서,
    상기 시스템 파일의 자율 저장 단계는, 상기 시스템 파일의 각각을 처리하여 상기 시스템 파일의 각각의 하나의 관련 해시값을 생성하는 단계를 더 포함하되,
    상기 데이터의 섀도우 사본을 저장하는 단계는, 상기 시스템 파일의 각각 및 상기 관련 해시값을 상기 메모리 모듈에 저장하는 단계를 더 포함하고,
    상기 맵핑 데이터 데이터베이스는 상기 고객 데이터 파일의 각각의 상기 해시값을 상기 데이터베이스에 저장하는
    데이터의 자동 백업 저장 방법.
  19. 제 18 항에 있어서,
    상기 시스템 파일 각각의 저장 단계는 상기 시스템 파일 각각 및 상기 관련 해시값과 함께 상기 시스템 파일 트리 정보를 상기 메모리 모듈에 추가로 저장하는 데이터의 자동 백업 저장 방법.
  20. 제 14 항에 있어서,
    상기 고객 데이터 파일의 자율 저장 단계는, 고객 데이터 파일 작성, 고객 데이터 파일 이동, 고객 데이터 파일 내용 변경, 및 고객 데이터 파일 재명명을 포함하는 상기 고객 데이터 파일에 대한 변경을 자율적으로 추적하는 단계를 더 포함하는 데이터의 자동 백업 저장 방법.
  21. 제 20 항에 있어서,
    상기 고객 데이터 파일의 자율 저장 단계는, 고객 데이터 파일의 수정에 응답하여, 상기 고객 데이터 파일과 상기 수정된 고객 데이터 파일 간의 차이를 나타내는 파일 변경 데이터를 생성하는 단계를 더 포함하되,
    상기 데이터의 섀도우 사본을 저장하는 단계는 상기 파일 변경 데이터를 상기 메모리 모듈에 저장하고, 상기 수정된 고객 데이터 파일을 상기 메모리 모듈의 상기 고객 데이터 파일로 대체하는
    데이터의 자동 백업 저장 방법.
  22. 제 14 항에 있어서,
    상기 고객 데이터 파일의 자율 저장 단계는, 상기 메모리 모듈에 저장하기 전에 상기 고객 데이터 파일을 압축하는 단계를 더 포함하는 데이터의 자동 백업 저장 방법.
  23. 제 13 항에 있어서,
    상기 고객 데이터 파일의 자율 저장 단계는,
    액티브 고객 데이터 파일 시스템을 색인화하여 파일 시스템 내의 파일 오브젝트마다 관련 메타데이터를 추출하는 단계와,
    상기 메타데이터를 데이터베이스에 기록하는 단계
    를 더 포함하는 데이터의 자동 백업 저장 방법.
  24. 제 13 항에 있어서,
    상기 고객 데이터 파일의 자율 저장 단계는,
    모든 액티브 고객 데이터 파일 모두를 선택된 시점에 색인화하는 단계와,
    상기 고객 데이터 파일 모두의 현재 내용을 나타내는 보전 시점으로서 메모리에 상기 색인을 저장하는 단계
    를 더 포함하는 데이터의 자동 백업 저장 방법.
KR1020097011093A 2006-10-31 2007-10-31 데이터 섀도잉 시스템 및 데이터의 자동 백업 저장 방법 KR20090110823A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US86366506P 2006-10-31 2006-10-31
US60/863,665 2006-10-31
PCT/US2007/083188 WO2008055214A2 (en) 2006-10-31 2007-10-31 System for automatically shadowing data and file directory structures that are recorded on a computer memory

Publications (1)

Publication Number Publication Date
KR20090110823A true KR20090110823A (ko) 2009-10-22

Family

ID=39345078

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020097011093A KR20090110823A (ko) 2006-10-31 2007-10-31 데이터 섀도잉 시스템 및 데이터의 자동 백업 저장 방법

Country Status (6)

Country Link
US (3) US7899789B2 (ko)
EP (2) EP2078269A4 (ko)
JP (1) JP2010508608A (ko)
KR (1) KR20090110823A (ko)
CA (2) CA2668074A1 (ko)
WO (3) WO2008055230A2 (ko)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7536529B1 (en) 2005-06-10 2009-05-19 American Megatrends, Inc. Method, system, apparatus, and computer-readable medium for provisioning space in a data storage system
US8010485B1 (en) 2005-10-20 2011-08-30 American Megatrends, Inc. Background movement of data between nodes in a storage cluster
US8266105B2 (en) * 2006-10-31 2012-09-11 Rebit, Inc. System for automatically replicating a customer's personalized computer system image on a new computer system
WO2008055230A2 (en) * 2006-10-31 2008-05-08 Rebit, Inc. Automatically shadowing data for a plurality of network-connected computers using a network-attached memory
US20080104146A1 (en) * 2006-10-31 2008-05-01 Rebit, Inc. 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
US8498967B1 (en) 2007-01-30 2013-07-30 American Megatrends, Inc. Two-node high availability cluster storage solution using an intelligent initiator to avoid split brain syndrome
US7925630B1 (en) * 2007-03-30 2011-04-12 Symantec Corporation Method of inserting a validated time-image on the primary CDP subsystem in a continuous data protection and replication (CDP/R) subsystem
US8799595B1 (en) 2007-08-30 2014-08-05 American Megatrends, Inc. Eliminating duplicate data in storage systems with boot consolidation
US8352716B1 (en) 2008-01-16 2013-01-08 American Megatrends, Inc. Boot caching for boot acceleration within data storage systems
US20090204636A1 (en) * 2008-02-11 2009-08-13 Microsoft Corporation Multimodal object de-duplication
US20100016074A1 (en) * 2008-03-20 2010-01-21 Gdi Game Domain International Plc Apparatus and methods for game conversion
US8799429B1 (en) 2008-05-06 2014-08-05 American Megatrends, Inc. Boot acceleration by consolidating client-specific boot data in a data storage system
EP2316041B1 (en) * 2008-08-08 2012-02-15 Nxp B.V. Circuit with testable circuit coupled to privileged information supply circuit
US20100114832A1 (en) * 2008-10-31 2010-05-06 Lillibridge Mark D Forensic snapshot
US8447740B1 (en) * 2008-11-14 2013-05-21 Emc Corporation Stream locality delta compression
CN102216025B (zh) * 2008-11-18 2015-04-08 乔治洛德方法研究和开发液化空气有限公司 用于高速激光冲裁的支承台架
US8140480B1 (en) * 2009-03-31 2012-03-20 Symantec Corporation Off-host cataloging of backup information
US8805953B2 (en) * 2009-04-03 2014-08-12 Microsoft Corporation Differential file and system restores from peers and the cloud
US8935366B2 (en) 2009-04-24 2015-01-13 Microsoft Corporation Hybrid distributed and cloud backup architecture
US8560639B2 (en) * 2009-04-24 2013-10-15 Microsoft Corporation Dynamic placement of replica data
US8769055B2 (en) 2009-04-24 2014-07-01 Microsoft Corporation Distributed backup and versioning
US8769049B2 (en) 2009-04-24 2014-07-01 Microsoft Corporation Intelligent tiers of backup data
US9419801B2 (en) * 2009-05-12 2016-08-16 Infrascale Inc. System and method for transmitting needed portions of a data file between networked computers
KR100948386B1 (ko) * 2009-08-10 2010-03-22 주식회사 시큐브 컴퓨터 시스템의 원본 보존 장치 및 방법
JP5303038B2 (ja) 2009-09-18 2013-10-02 株式会社日立製作所 重複したデータを排除するストレージシステム
KR101073894B1 (ko) 2009-12-15 2011-10-17 (주)아이젝스 멀티-포인트 데이터 복구 방법 및 시스템과 이를 저장한 컴퓨터가 판독 가능한 기록매체
US8732286B2 (en) 2010-03-31 2014-05-20 Honeywell International Inc. Health management systems with shadow modules
US8412738B2 (en) * 2010-10-18 2013-04-02 Ca, Inc. Portable infrastructure object for capturing machine images
US10394757B2 (en) 2010-11-18 2019-08-27 Microsoft Technology Licensing, Llc Scalable chunk store for data deduplication
US10216759B2 (en) 2010-11-22 2019-02-26 Microsoft Technology Licensing, Llc Heterogeneous file optimization
JP5473010B2 (ja) * 2011-03-03 2014-04-16 Necフィールディング株式会社 情報処理システムと該情報処理システムの重複ファイル排除方法、情報処理装置及びその制御方法と制御プログラム
US8990171B2 (en) 2011-09-01 2015-03-24 Microsoft Corporation Optimization of a partially deduplicated file
RU2573388C2 (ru) 2011-10-26 2016-01-20 Кемфарм Инк. Бензойная кислота, производные бензойной кислоты и конъюгаты гетероарилкарбоновой кислоты с гидроморфоном, пролекарства, способы получения и их применение
US8984028B2 (en) 2012-05-29 2015-03-17 Recommind, Inc. Systems and methods for storing data and eliminating redundancy
CN102760168B (zh) * 2012-06-13 2015-01-07 腾讯科技(深圳)有限公司 碎片文件扫描的方法及装置
CN104081329A (zh) * 2013-01-25 2014-10-01 株式会社东芝 对数据进行备份的备份存储系统、备份存储装置以及方法
CN103886070A (zh) * 2014-03-21 2014-06-25 华为技术有限公司 文件系统的数据回收方法及装置
JP5984151B2 (ja) 2014-08-26 2016-09-06 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データの復旧方法、プログラムおよびデータ処理システム
US10140188B2 (en) * 2014-11-26 2018-11-27 ArcServe (USA) LLC Snapshot management
MX2017006935A (es) 2014-12-02 2017-08-10 Kempharm Inc * Acido benzoico, derivados de acido benzoico y conjugados de acido heteroaril carboxilico de oximorfona, profarmacos, metodos de elaboracion y uso de los mismos.
US10802928B2 (en) 2015-09-10 2020-10-13 International Business Machines Corporation Backup and restoration of file system
CN106502830B (zh) * 2016-10-27 2019-01-22 一铭软件股份有限公司 一种基于Btrfs文件系统的系统备份还原方法
CN108021472B (zh) * 2017-11-28 2021-02-02 厦门市美亚柏科信息股份有限公司 ReFS文件系统的格式化恢复方法及存储介质
CN108228763A (zh) * 2017-12-25 2018-06-29 深圳市海派通讯科技有限公司 一种基于智能终端自媒体冗余数据处理的方法
US10922283B2 (en) * 2019-02-22 2021-02-16 Rackware, Inc. File synchronization
JP7419853B2 (ja) 2020-02-07 2024-01-23 カシオ計算機株式会社 情報処理装置及びプログラム

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638509A (en) * 1994-06-10 1997-06-10 Exabyte Corporation Data storage and protection system
US5864853A (en) 1994-09-14 1999-01-26 Kabushiki Kaisha Toshiba Portable file system operable under various computer environments
US5852724A (en) 1996-06-18 1998-12-22 Veritas Software Corp. System and method for "N" primary servers to fail over to "1" secondary server
US5905888A (en) 1997-02-19 1999-05-18 On Spec Electronic, Inc. Bootable redundant hard disk attached to a PC's parallel port with rom-address auto-detect and configure during BIOS scan
US6324544B1 (en) * 1998-10-21 2001-11-27 Microsoft Corporation File object synchronization between a desktop computer and a mobile device
WO2000065438A2 (en) * 1999-04-28 2000-11-02 Tranxition Corporation Method and system for automatically transitioning of configuration settings among computer systems
US6535998B1 (en) * 1999-07-26 2003-03-18 Microsoft Corporation System recovery by restoring hardware state on non-identical systems
US6704873B1 (en) 1999-07-30 2004-03-09 Accenture Llp Secure gateway interconnection in an e-commerce based environment
US6847984B1 (en) * 1999-12-16 2005-01-25 Livevault Corporation Systems and methods for backing up data files
US6571285B1 (en) 1999-12-23 2003-05-27 Accenture Llp Providing an integrated service assurance environment for a network
US6694362B1 (en) 2000-01-03 2004-02-17 Micromuse Inc. Method and system for network event impact analysis and correlation with network administrators, management policies and procedures
US20030120822A1 (en) 2001-04-19 2003-06-26 Langrind Nicholas A. Isolated control plane addressing
WO2002056181A2 (en) * 2001-01-11 2002-07-18 Force Communications Inc Z File switch and switched file system
US7062490B2 (en) * 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US7043503B2 (en) * 2002-02-15 2006-05-09 International Business Machines Corporation Ditto address indicating true disk address for actual data blocks stored in one of an inode of the file system and subsequent snapshot
US7225204B2 (en) * 2002-03-19 2007-05-29 Network Appliance, Inc. System and method for asynchronous mirroring of snapshots at a destination using a purgatory directory and inode mapping
US7328225B1 (en) * 2002-03-27 2008-02-05 Swsoft Holdings, Ltd. System, method and computer program product for multi-level file-sharing by concurrent users
AU2003263093A1 (en) * 2002-09-06 2004-03-29 Maxtor Corporation One button external backup
US8577795B2 (en) * 2002-10-10 2013-11-05 Convergys Information Management Group, Inc. System and method for revenue and authorization management
AU2003282361A1 (en) * 2002-11-20 2004-06-15 Filesx Ltd. Fast backup storage and fast recovery of data (fbsrd)
US20050010918A1 (en) * 2003-07-11 2005-01-13 International Business Machines Corporation Autonomic image migration/deployment appliance
US7533372B2 (en) * 2003-08-05 2009-05-12 Microsoft Corporation Cross language migration
US7454443B2 (en) * 2003-08-26 2008-11-18 Tamir Ram Method, system, and program for personal data management using content-based replication
US20050283662A1 (en) * 2004-06-21 2005-12-22 Li Yi Q Secure data backup and recovery
US7206790B2 (en) * 2004-07-13 2007-04-17 Hitachi, Ltd. Data management system
US7310711B2 (en) * 2004-10-29 2007-12-18 Hitachi Global Storage Technologies Netherlands B.V. Hard disk drive with support for atomic transactions
US8918366B2 (en) * 2005-02-07 2014-12-23 Mimosa Systems, Inc. Synthetic full copies of data and dynamic bulk-to-brick transformation
US7483929B2 (en) * 2005-02-08 2009-01-27 Pro Softnet Corporation Systems and methods for storing, backing up and recovering computer data files
US7685175B2 (en) * 2005-08-12 2010-03-23 Michael Lee Carroll Content manager
US20070136200A1 (en) 2005-12-09 2007-06-14 Microsoft Corporation Backup broker for private, integral and affordable distributed storage
US8433732B2 (en) * 2006-08-18 2013-04-30 Falconstor, Inc. System and method for storing data and accessing stored data
WO2008055230A2 (en) * 2006-10-31 2008-05-08 Rebit, Inc. Automatically shadowing data for a plurality of network-connected computers using a network-attached memory

Also Published As

Publication number Publication date
WO2008055237A2 (en) 2008-05-08
WO2008055237A3 (en) 2008-07-10
WO2008055214B1 (en) 2008-10-09
JP2010508608A (ja) 2010-03-18
CA2668076A1 (en) 2008-05-08
EP2078255A4 (en) 2011-03-02
EP2078269A2 (en) 2009-07-15
WO2008055214A3 (en) 2008-08-21
WO2008055230A9 (en) 2008-07-03
US7899789B2 (en) 2011-03-01
CA2668074A1 (en) 2008-05-08
US8046335B2 (en) 2011-10-25
WO2008055230A2 (en) 2008-05-08
US7640280B2 (en) 2009-12-29
US20080104147A1 (en) 2008-05-01
WO2008055230A3 (en) 2008-08-14
WO2008055214A2 (en) 2008-05-08
EP2078269A4 (en) 2011-02-23
US20100057794A1 (en) 2010-03-04
US20080104107A1 (en) 2008-05-01
EP2078255A2 (en) 2009-07-15

Similar Documents

Publication Publication Date Title
US8046335B2 (en) System for automatically shadowing data and file directory structures that are recorded on a computer memory
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
US9904601B2 (en) Synchronization of storage using comparisons of fingerprints of blocks
US8126851B2 (en) System for automatically recovering a computer memory using shadowed data and file directory structures
US7650341B1 (en) Data backup/recovery
US8117410B2 (en) Tracking block-level changes using snapshots
KR100622801B1 (ko) 파일 시스템 액세스 방법, 파일 시스템 복원 방법, 컴퓨터 판독 가능 기록 매체 및 데이터 처리 시스템
EP1535198B1 (en) Multiple concurrent active file systems
CN111316245A (zh) 使用完全水合备份还原数据库
US8433863B1 (en) Hybrid method for incremental backup of structured and unstructured files
US8782003B1 (en) Synchronization of storage using log files and snapshots
US20060294421A1 (en) Isolating and storing configuration data for disaster recovery
US9043280B1 (en) System and method to repair file system metadata
CA2783370A1 (en) Systems and methods for performing data management operations using snapshots
US8266105B2 (en) System for automatically replicating a customer's personalized computer system image on a new computer system
US20210109896A1 (en) Smart Filesystem Indexing For Any Point-in-Time Replication
US11461190B2 (en) Filesystem operation bookmarking for any point in time replication
van Vugt Performing File System Management Tasks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application