KR20020097192A - 컴퓨터 파일의 아카이브 갱신 방법 및 시스템 - Google Patents

컴퓨터 파일의 아카이브 갱신 방법 및 시스템 Download PDF

Info

Publication number
KR20020097192A
KR20020097192A KR1020027011460A KR20027011460A KR20020097192A KR 20020097192 A KR20020097192 A KR 20020097192A KR 1020027011460 A KR1020027011460 A KR 1020027011460A KR 20027011460 A KR20027011460 A KR 20027011460A KR 20020097192 A KR20020097192 A KR 20020097192A
Authority
KR
South Korea
Prior art keywords
file
archive
comparison
comparison method
condition
Prior art date
Application number
KR1020027011460A
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 KR20020097192A publication Critical patent/KR20020097192A/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/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/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/83Indexing scheme relating to error detection, to error correction, and to monitoring the solution involving signatures

Abstract

파일의 변경을 반영하기 위해 컴퓨터 파일의 아카이브를 갱신하는 방법 및 시스템은 복수의 비교 방법 중 어느 하나를 바람직한 비교 방법으로서 선택하는 것을 포함한다. 본 비교 방법은 파일과 파일의 아카이브를 비교하는 제1 비교 방법과, 파일을 통계적으로 표시하는 제1 토큰 세트를 계산하여 파일의 아카이브를 통계적으로 표시하는 제2 토큰 세트와 비교하는 제2 비교 방법을 포함한다. 본 비교 방법은 파일과 파일의 아카이브 간의 차이 표시를 생성하여 파일의 아카이브를 갱신하도록 상기 바람직한 비교 방법을 실행하는 것을 더 포함한다.

Description

컴퓨터 파일의 아카이브 갱신 방법 및 시스템{METHOD AND SYSTEM FOR UPDATING AN ARCHIVE OF A COMPUTER FILE}
파일 아카이빙 시스템은 데이터 손실을 방지하기 위해 컴퓨터 파일을 백업한다. 파일은 시간이 지남에 따라 변경되기 때문에, 비교기는 아카이브 버전을 갱신하기 위해 신규 파일과 아카이브 파일을 차등화(differencing)한다. 알려진 비교기로는 개정 제어 엔진(revision control engine) 및 배타적 논리합(exclusive-or : XOR) 프로세스를 포함한다.
파일 아카이빙 시스템에 사용되고 있는 종래의 비교기와 차등화 시스템은 프로세스 또는 메모리가 집중화되고(intensive) 유연하지 않게 되는(inflexible) 단점이 있다. 그 결과, 비교기와 차등화 시스템이 일부 시스템, 애플리케이션, 및/또는 조건에는 부적합하다.
본 발명은 파일 아카이빙(file archiving) 분야에 관한 것으로서, 특히 컴퓨터 파일의 아카이브 갱신 방법 및 시스템에 관한 것이다.
도 1은 본 발명의 일 실시예에 따른 분산 파일 아카이빙 시스템을 도시하는 도면.
도 2는 본 발명의 일 실시예에 따른 백업 프로세스를 제어하기 위한 사용자 인터페이스를 예시하는 스크린.
도 3은 본 발명의 일 실시예에 따른 도 1의 클라이언트 컴퓨터 및 서버 컴퓨터를 상세히 도시하는 블럭도.
도 4는 본 발명의 일 실시예에 따른 도 3의 클라이언트 컴퓨터용 아카이빙 시스템을 도시하는 블럭도.
도 5는 본 발명의 일 실시예에 따른 파일의 아카이브를 갱신하는 방법의 일례를 예시하는 흐름도.
도 6 내지 도 9는 본 발명의 일 실시예에 따른 컴퓨터 파일의 아카이브를 갱신하는 방법을 예시하는 흐름도.
도 10은 본 발명의 일 실시예에 따라 사용되는 차등화 방법을 결정하는 방법을 예시하는 흐름도.
본 발명은 종래의 시스템 및 방법에 관한 문제점 및 단점을 실질적으로 감소 또는 제거하기 위해 컴퓨터 파일의 아카이브를 갱신하는 개선된 방법 및 시스템을제공한다. 특히, 데이터 저장, 데이터 전송, 또는 기타 아카이브 리소스를 최적화하기 위한 사용자 및/또는 시스템 입력, 조건, 또는 기준에 기초하여, 복수의 비교기 중 어느 하나를 선택한다.
파일의 변경을 반영하기 위해 컴퓨터 파일의 아카이브를 갱신하는 방법 및 시스템은 복수의 비교 방법 중 어느 하나를 바람직한 비교 방법으로서 선택하는 것을 포함한다. 본 비교 방법은 파일과 파일의 아카이브를 비교하는 제1 비교 방법과, 파일을 통계적으로 표시하는 제1 토큰 세트를 계산하여 파일의 아카이브를 통계적으로 표시하는 제2 토큰 세트와 비교하는 제2 비교 방법을 포함한다. 본 비교 방법은 파일과 파일의 아카이브 간의 차이 표시(indicia of difference)를 생성하여 파일의 아카이브를 갱신하도록 상기의 바람직한 비교 방법을 실행하는 것을 더 포함한다.
본 발명의 다른 양상으로는, 적어도 하나의 조건에 기초하여 제1 파일과 이에 관련되는 제2 파일 간을 비교하기 위한 선택된 비교 방법(a selected comparison method)을 선택하는 것을 포함하는 파일 아카이빙 방법 및 시스템을 포함한다. 상기 선택된 비교 방법은 제1 비교 방법 및 제2 비교 방법에서 선택한다. 제1 비교 방법은 제1 파일과 관련되는 적어도 하나의 바이트를 제2 파일과 관련되는 적어도 하나의 바이트와 비교하는 것을 포함한다. 제2 비교 방법은 제1 파일과 관련되는 제1 통계치 세트(a first set of statistics)를 제2 파일과 관련되는 제2 통계치 세트(a second set of statistics)와 비교하는 것을 포함한다. 또한, 본 방법은 제1 파일, 제2 파일, 및 선택된 비교 방법에 기초하여 적어도 하나의 차이표시를 생성하는 것과, 상기 표시에 기초하여 제1 파일을 갱신하는 것을 포함한다. 또한, 본 방법은 차이 표시에 기초하여 제1 파일을 갱신하기 위한 표시(indicia)를 제공하는 것을 포함한다.
본 발명의 기술적 이점들은 당업자라면 이하의 도면, 상세한 설명, 및 청구범위로부터 용이하게 이해될 수 있을 것이다.
도 1은 서버 컴퓨터(300) 상에서 파일 아카이브를 갱신하기 위해 인터넷 또는 기타 네트워크 연결(200)을 통해 서버 컴퓨터(300)에 연결되는 클라이언트 컴퓨터(100)를 도시한다. 클라이언트 컴퓨터(100) 및 서버 컴퓨터(300)는 랩톱, 퍼스널 컴퓨터(personal computer : PC), 데스크 탑 PC, 핸드헬드 PC 등의 범용 컴퓨터나 특정 목적을 위해서 특별히 구성된 컴퓨터 등, 적절한 종류의 어느 것이든 가능하다. 예를 들면, 일 실시예로서, 클라이언트 컴퓨터(100)는 호텔 방에서 전화선을 통해 서버 컴퓨터(300)에 연결된 랩톱일 수 있다. 다른 실시예로서, 클라이언트 컴퓨터(100)는 특별히 구성되어 의료 진단 설비에 결합되고, 유용한 정보를 아카이빙하기 위해 인터넷을 통해 중앙 서버 컴퓨터(200)에 연결될 수 있다. 레코드(record)는 진단 프로세스 또는 일련의 프로세스를 통해 특정 클라이언트 컴퓨터(100) 상에서 갱신되기 때문에, 레코드의 아카이브는 본 발명을 이용하여 중앙 서버 컴퓨터 상에서 갱신될 수 있다. 본 발명의 다양한 특성에 따른 파일 아카이빙 시스템 및 방법은 하드웨어와 소프트웨어의 임의의 적절한 조합에 의해 구현될 수 있음이 이해될 것이다.
이하에서 보다 상세히 설명되는 바와 같이, 본 발명의 다양한 특성에 따른 파일 아카이빙 시스템 및 방법은 클라이언트 컴퓨터(100) 상에서의 파일의 변경을 반영하기 위해 서버 컴퓨터(300) 상에서 파일 아카이브를 갱신하는 것을 포함한다. 이러한 시스템에 있어서, 하나 이상의 갱신된 파일은, 둘 이상의 이용 가능한 비교 방법 중에서 선택된 비교 방법을 이용하여 아키이브 버전의 파일과 비교된다. 상기의 방법들 중 제1 방법을 이용하는 비교기는 갱신된 파일과 클라이언트 컴퓨터(100)에 상주하는 파일의 사본(copy)을 비교하고, 파일과 파일의 아카이브 간의 차이인 하나 이상의 데이터 워드(word) 또는 바이트(byte)의 표시를 제공한다. 비교 방법 중 제2 방법을 이용하는 비교기는 갱신된 파일을 블럭들로 구분하거나 세그먼트들로 분할하고, 갱신된 파일을 통계적으로 표시하는 토큰 세트(a set of tokens)를 생성하기 위해 블럭 당 토큰을 계산하며, 이러한 토큰과, 파일의 아카이브를 통계적으로 표시하는 또 다른 토큰 세트를 비교한다. 제2 방법을 이용하면, 비교기는 파일과 그 아카이브 간의 차이인 데이터 워드를 포함하는 하나 이상의 블럭으로 이루어진 표시를 제공한다. 또한, 또 다른 적절한 비교 방법도 이용될 수 있다. 이용 가능한 복수의 비교 방법이 제공되므로, 상기 시스템은 선택될 소정의 조건 세트(a set of conditions)에 대하여 적절한 비교 방법을 적용할 수 있다.
도 2는 하나 이상의 파일의 아카이빙하는 데 있어서 최적화될 조건을 사용자가 선택하여 이용 가능한 비교 방법들 중 어느 하나를 특정하도록 사용자에게 프롬프팅(prompting)하기 위한 클라이언트 컴퓨터(100) 상의 사용자 인터페이스를 도시한다. 비교 방법은 임의의 적절한 기술에 의해 수동으로 또는 자동으로 선택될 수 있다.
도 2를 참조하여 예를 들면, 컴퓨터(100)는 사용자가 입력하도록 프롬프트하기 위해 "백업 세트 에디터"라는 명칭의 대화 상자(110)를 디스플레이한다. 대화 상자(110)는 "백업 방법" 섹션(120)과 "서버 개정" 섹션(140)의 2개의 주요 섹션을포함한다. "백업 방법" 섹션(120)은 라디오 버튼과 같은 2개의 아이템 선택기를 포함한다. 제1 선택기(112)는 "국부 저장부 최소화"라고 지칭되고, 제2 선택기(114)는 "전송 시간 최소화"라고 지칭된다. 제1 선택기(112) 및 제2 선택기(114)는 클라이언트 컴퓨터(100) 상에서 활성화(active)되는 하나 이상의 파일을 아카이빙할 때 최적화될 하나 이상의 조건을 사용자가 선택하게 한다.
제1 조건은 클라이언트 컴퓨터(100) 상에서 데이터 저장 공간을 효율적으로 사용하는 것이다. 제2 조건은 표시(indicia)를 클라이언트 컴퓨터(100)로부터 서버 컴퓨터(300)로 효율적으로 전달하는 것이다. 사용자는 선택기(112)를 클릭함으로써 최적화될 제1 조건을 선택할 수 있고, 선택기(114)를 클릭함으로써 제2 조건을 선택할 수 있다.
사용자가 선택할 때에는, 사용자가 소정의 아카이빙 동작에 사용될 비교 방법의 종류 또는 차등화 엔진의 종류를 총체적인 수준에서 결정할 필요가 있다. 자동 선택기는 파일 단위를 기초로 파일에 대한 최선의 차등화 엔진을 동적으로 결정한다. 이러한 시스템은 백업 시에, 최적화될 조건 또는 기준 세트에 기초하여 파일에 대한 최선의 차등화 엔진을 결정할 수 있다. 이러한 최적화는, 백업될 각각의 파일이 해당 파일에 대해 최선의 차등화 엔진에 의해 처리되므로 제품(product)의 전체적인 성능을 향상시킨다.
임의의 적절한 수학적 모델을 이용하여 단독으로 또는 다양한 조합으로 평가될 기준의 예로는: 백업 시에 클라이언트가 이용할 수 있는 네트워크의 대역폭; 반복적인 패킷 전송을 요청함으로써 측정될 수 있는 네트워크 연결의 신뢰도; 백업되는 파일의 크기(size); 백업되는 파일의 종류(type); 클라이언트 컴퓨터의 가용 하드디스크 저장 공간의 양; 디스크 프래그먼트(fragment) 방식 및/또는 CPU-디스크 인터페이스의 갱신 및 속도와 같은 클라이언트 컴퓨터의 하드 디스크의 동작 효율; 및 사용자가 고가의 인공위성 네트워크를 통해 연결된 경우와 같은 네트워크 연결 비용을 포함한다.
기준을 얻기 위해서, 예컨대 이용 가능한 네트워크(200)의 대역폭을 결정하는 데 클라이언트 컴퓨터(100)의 운영 체제가 조회된다. 만일 소정의 운영 체제가 이러한 조회를 지원하지 않는다면, 모뎀이나 네트워크 인터페이스 카드로부터 정보를 획득하도록 계층적 디바이스 드라이버(layered device driver)가 구현될 수 있다. 만일 대역폭이 임계치 이하이라고 결정되면, 자동 선택 시스템은 네트워크 상으로 보내질 표시를 최소화하는 차등화 엔진을 선택할 수 있다. 만일 백업될 파일의 크기가 클라이언트 머신(100)의 가용 디스크 저장 공간에 비해 크다면, 자동 선택 시스템은 클라이언트 머신(100)의 최소량의 국부 디스크 저장 공간을 필요로 하는 차등화 엔진을 선택할 수 있다. 자동 선택 시스템은 파일 종류에 기초하여 적절한 차등화 엔진을 선택할 수 있다. 그 일예로서, 마이크로소프트 아웃룩(Microsoft Outlook)에 의해 생성되는 .pst 파일을 들 수 있다. 이 파일은 크고 때때로 변경되므로, 바이트 또는 블럭 차등화 엔진에 의해서는 효율적으로 처리되지 않는다. 이러한 종류의 파일을 보다 효율적으로 처리하는 차등화 엔진이 이용 가능하게 변형된 경우, 시스템은 엔진이 .pst 파일을 처리하도록 할당할 수 있다.
또한, "백업 방법" 섹션(120)은 사용자가 제어부(116)를 통해 클라이언트 컴퓨터(100)에 보유될 백업 파일의 개정 수를 지정할 수 있도록 한다. 클라이언트 컴퓨터(100)에 보유되는 개정의 수를 증가시킴에 따라서 장점 및 단점이 있다. 만일 클라이언트 컴퓨터(100)에 보다 많은 개정이 보유되면, 고객의 복원 요청이 클라이언트 컴퓨터의 아카이브로 만족될 수 있어서, 서버(300)와 통신할 필요성을 없앨 수 있는 가능성이 보다 높아진다. 또한, 개정이 많이 필요할수록, 백업이 수행될 때 디스크 공간 및 처리 시간이 보다 증가하게 된다.
"서버 개정" 섹션(140)은 서버 컴퓨터(300) 상에 보유될 백업 파일의 개정 수를 사용자가 지정할 수 있게 한다. 이 섹션(140)은 라디오 버튼과 같은 2개의 아이템 선택기를 포함한다. 제1 선택기(142)는 "서버 개정 세팅 사용"이라 지칭되고, 제2 선택기(144)는 "제한:"이라 지칭된다. 제1 선택기(142) 및 제2 선택기(144)는 서버 컴퓨터(300) 상에 보유될 백업 파일의 개정 수를 제한하는 두 가지 방법 중 어느 하나를 사용자가 선택할 수 있게 한다.
제1 방법은 서버 컴퓨터(300) 상에 보유될 개정 수가 서버 컴퓨터 관리자에 의해 서버 컴퓨터(300) 상에서 구성되는 값에 의해 결정되도록 하는 것이다. 제2 방법은 클라이언트 컴퓨터(100) 상의 사용자가 유지될 개정 수를 지정하도록 하는 것이다. 사용자는 선택기(142)를 클릭함으로써 서버 개정 지정을 위한 제1 방법을 선택할 수 있고, 선택기(144)를 클릭함으로써 제2 방법을 선택할 수 있다. 만일 사용자가 제2 방법을 선택한다면, 사용자는 희망하는 개정 수를 제어부(146)에서 입력함으로써 개정 수를 지정할 수 있다. 서버 컴퓨터(300) 상에 보유되는 개정수를 증가함에 따른 이점 및 단점이 있다. 개정이 더 많다는 것은 보다 많은 버전의 백업 파일이 복원될 수 있다는 것을 의미한다. 또한, 개정이 많으면 많을 수록, 백업이 수행될 때, 보다 많은 공간과 처리 시간을 필요로 한다.
도 3은 클라이언트 컴퓨터(100)와 서버 컴퓨터(300)를 상세히 도시하는 블럭도이다. 도 3을 참조하면, 랩톱 컴퓨터(100)는 범용 하드웨어, 사용자 인터페이스(310), 인텔 펜티엄 Ⅱ 또는 펜티엄 Ⅲ와 같은 중앙 처리 장치(CPU)(320), 랜덤 액세스 메모리(RAM), 32 내지 128KB 랜덤 액세스 메모리, 및 바이오스 롬(BIOS ROM)과 같은 메모리(330), 2 내지 10GB 용량의 하드 디스크와 같은 하드 디스크(340), 및 네트워크 인터페이스(350)를 포함하고, 이들 모두는 버스(355)에 의해 통상적으로 상호 접속된다. 버스(355)는 중앙 처리 장치(320)와 메모리(330)에 연결된 100MHz의 32 비트 버스와 같은 범용 고속 버스 및, 중앙 처리 장치를 하드 디스크(340), 네트워크 인터페이스(350), 및 클라이언트 컴퓨터의 기타 하드웨어에 연결시키는 UDMA-33, UDMA-66, PCI, 및 AGP와 같은 기타 다른 속도의 하나 이상의 버스를 포함할 수 있다. 사용자 인터페이스(310)는 사용자가 입력하도록 프롬프팅하는 임의의 적절한 하드웨어 및/또는 소프트웨어를 포함한다. 예를 들면, 액정 표시 장치(LCD)와 TFT 표시 장치 사용자 인터페이스(310)와 같은 임의의 적절한 형태의 평판 표시 장치(102)도 범용 키보드(104), 및 범용 접촉 감지식(touch-sensitive) 포인팅 디바이스(106)를 포함한다.
하드 디스크(340)는 중앙 처리 장치(320)의 제어 하에서 부호화되고 검색되는 파일의 자기 기록 표시를 포함한다. 본 발명에 따른 클라이언트 컴퓨터의 하드디스크 또는 기타 다른 대용량 저장 매체 상의 파일들은 아카이빙될 하나 이상의 파일 및 하나 이상의 관련 아카이브 관리 파일을 포함한다. 예를 들면, 하드 디스크(340)는 "파일 1"로 명명된 아카이빙될 제1 파일(342)과 "사본 파일 1"로 명명된 아카이브 관리 파일(342)의 표시를 포함한다. 이러한 예에 있어서, 파일(342)은, 파일(343)이 최근에 아카이빙된 사본 파일(342)인 제1 비교 방법을 이용하여 아카이빙된다.
또한, 하드 디스크(340)는 "파일 2"로 명명된 아카이빙될 제2 파일(344)과 파일(344)의 아카이빙을 관리하기 위해 "토큰 파일 2"로 명명된 아카이브 관리 파일(345)의 표시를 포함한다. 이러한 예에 있어서, 파일(344)은, 파일(345)이 최근에 아카이빙된 파일을 통계적으로 표시하는 토큰 세트를 포함하는 제2 비교 방법을 이용하여 아카이빙된다. 파일(344)이 하드 디스크(340)의 기억 용량의 보다 많은 부분을 차지하기 때문에 파일(344)을 아카이빙하는 데 제2 방법이 선택되고, 이 방법은 최종적으로 아카이빙되는 사본 파일이 클라이언트 컴퓨터 상에 보유될 필요가 없게 한다. 하드 디스크(340) 상의 파일의 상대적 크기는 예시적인 것일 뿐이고, 실제 시스템에서의 기억 용량 사용예을 나타내는 것은 아니다.
파일(342, 344)을 아카이빙하기 위해, 중앙 처리 장치(320)는 시스템(400)의 기능을 구현하는 메모리(330)로부터 소프트웨어를 실행한다. 통상적으로, 중앙 처리 장치(320)는 윈도우 98(Windows 98)과 같은 디스크 운영 체제의 기능을 수행함으로써 소프트웨어를 하드 디스크(340)로부터 메모리(330)로 로딩한다. 파일(342)은 제1 백업 세트(도시되지 않음)의 일부이고, 제1 백업 세트의 파일들은 사용자입력에 의해 그리고/또는 자동적으로 선택되는 세팅을 이용하여 아카이빙된다. 선택된 비교 방법이 복수의 아키이브 레벨을 허용한다면, 이러한 세팅은 이용 가능한 비교 방법 중 어느 하나를 선택하는 것과, 매일 또는 매주와 같은 아카이빙 주기와, 보유될 아카이브 사본의 수를 포함할 수 있다. 예를 들면, 후술될 바이트 차등화는 파일의 복수의 아카이브 버전을 허용하지만, 후술될 블럭 차등화는 허용하지 않는다. 파일(344)은 제2 백업 세트(도시되지 않음)의 일부이고, 제2 백업 세트의 파일은 제1 백업 세트과 동일하거나 또는 다른 세팅을 이용하여 아카이빙될 수 있다.
중앙 처리 장치(320)는 아카이빙될 파일과 그 아키이브 사본간의 차이 표시를 생성하기 위해 이용 가능한 비교 방법 중 선택된 하나를 수행한다. 예를 들면, 아카이브 사본은 서버 컴퓨터(300) 상에 상주할 수 있다. 그러면, 중앙 처리 장치(320)는 네트워크 인터페이스(350)를 제어하여 표시를 네트워크 연결을 통해 서버 컴퓨터(300)에 전달할 수 있다.
서버 컴퓨터(300)는 범용 하드웨어, 사용자 인터페이스(390), 인텔 펜티엄 Ⅲ와 같은 중앙 처리 장치(316), 128 내지 256KB의 SDRAM 및 BIOS ROM과 같은 메모리(370), 20 내지 40GB 용량을 갖는 스카시 레이드(SCSI RAID)와 같은 아카이빙용 서버의 사용 및 신뢰도 요구에 부합하도록 적절히 구성된 하드 디스크(380), 및 네트워크 인터페이스(375)를 포함하고, 이들 모두는 통상적으로 버스(395)를 통해 상호 접속된다. 또한, 서버 컴퓨터(300)가 스카시(SCSI)와 같은 범용 인터페이스를 이용하는 버스(395)에 결합된 테이프 백업(392)을 포함하는 것이 바람직하다. 버스(395)는 중앙 처리 장치(320)와 메모리(330)와 연결하는 100MHz 32비트 버스와 같은 범용 고속 버스와, 중앙 처리 장치(360)를 하드 디스크(380), 네트워크 인터페이스(375), 및 희망하는 바에 따라 서버 컴퓨터(300) 내의 다른 하드웨어에 결합시키는 스카시(SCSI), 피씨아이(PCI), 에이지피(AGP)와 같은 다른 속도의 하나 이상의 버스를 포함한다.
하드 디스크(380)는 중앙 처리 장치(360)의 제어 하에서 부호화되고 검색되는 파일의 자기 기록 표시를 포함한다. 하드 디스크(380)는 최근에 아카이빙된 파일(342)의 사본을 포함하는 "파일 1 아크(file 1 arc)"라 명명된 제1 아카이브 파일(382)의 표시를 포함한다. 또한, 하드 디스크(380)는 최근에 아카이빙된 파일(344)의 사본을 포함하는 "파일 2 아크(file 2 arc)"라 명명된 제2 아카이브 파일(384)을 포함한다. 클라이언트 컴퓨터(100) 상의 파일(342, 344)에서 정보가 손실된 경우에는, 최근 아카이브 버전의 파일이 아카이브 파일(382, 384)로부터 동일한 컴퓨터 또는 다른 컴퓨터로 각각 복원될 수 있다.
본 발명의 예시적인 방법에서 바이트 차등화를 이용하는 경우에, 백업되는 파일 "파일 1"은 그 아카이브 버전 "파일 1 아크" 와 비교된다. 바이트 차등화 엔진은 순방향 델타 및 역방향 델타 모두를 생성하도록 요청된다. 순방향 델타는 "파일 1 아크"로부터 "파일 1"로를 뜻하고, 역방향 델타는 "파일 1"로부터 "파일 1 아크"로를 뜻한다. 서버는 "파일 1"의 N 이전 버전을 재생산하게 하는 N개의 역방향 델타들 뿐만 아니라 "파일 1 아크"의 사본을 갖는다. 백업 패키지가 "파일 1"에 대한 순방향 및 역방향 델타를 포함하는 경우에, 서버는 순방향 델타를 그 "파일 1 아크"의 사본에 적용하여, "파일 1"의 최신 사본을 생성한다. 서버는 이러한 "파일 1"의 사본을 "파일 1 아크"로 재명명하고, "파일 1 아크"의 이전 사본을 대체한다. 또한, 서버는 수신한 역방향 델타를 저장한다. 일정 시간이 경과한 후에, 클라이언트는 서버로부터 M개의 구 개정(M은 N보다 작거나 동일함)인 "파일 1"의 복원을 요청한다. 서버는 "파일 1"에 대한 M개의 가장 최근의 백 델타들을 보낸다. 클라이언트는 백 델타를 수신하면, 이러한 백 델타를 가장 최근 것부터 가장 오래된 것까지 그 "파일 1"의 로컬 사본에 연속 적용함으로써, M개의 개정인 "파일 1"의 사본을 개조한다.
클라이언트 컴퓨터(100)의 중앙 처리 장치(320)가 서버(300)에 표시를 전달할 때, 네트워크 인터페이스(350)는 TCP/IP와 같은 통상의 네트워크 프로토콜을 통해 네트워크 인터페이스(375)로 정보를 송신한다. 본 발명의 다양한 양상에 따라 클라이언트 컴퓨터로부터 서버 컴퓨터로 표시를 전달하기 위한 적절한 네트워크는 직접 케이블 접속(DCC), 범용 직렬 버스(USB), 기억 매체 상의 데이터를 수동으로 전송하는 "스니커넷(sneakernet)", 이서넷(Ethernet), 애플토크(Appletalk), 인터넷, 및 이들의 조합을 포함한다.
파일(342, 344)의 아카이빙을 용이하게 하기 위해, 중앙 처리 장치(360)는 메모리(370)로부터 파일 아카이빙 시스템(도시되지 않음)의 기능을 구현하는 소프트웨어를 실행한다. 변경 정보에 응답하여 파일을 적절히 변경하는 임의의 파일 아카이빙 시스템이 채용될 수 있다. 바람직하게는, 파일 아카이빙 시스템은 뉴욕 아일랜디아에 지부를 두고 있는 컴퓨터 어소시에이츠, 인크.(ComputerAssociates,Inc)가 판매하고 있는는 라이프카드(LIFEGUARD)와 같은 서버측 파일 아카이빙용 전문 소프트웨어를 포함한다. 통상적으로, 중앙 처리 장치(320)는 윈도우 NT(Windows NT) 또는 리눅스(Linux)와 같은 디스크 운용 체제의 기능을 수행함으로써 하드 디스크(340)로부터 메모리(330)로 소프트웨어를 로딩한다. 중앙 처리 장치(320)는 네트워크 인터페이스(375)를 제어하여 클라이언트 컴퓨터(100)로부터 하드 디스크(380)로 표시를 전달한다.
도 4는 본 발명의 일 실시예의 클라이언트 컴퓨터(100) 상의 아카이브 시스템(400)을 도시한다. 도 4를 참조하면, 파일 세트(402)의 아카이브 파일은 파일 간의 차이 표시를 전달하며, 클라이언트 컴퓨터(100) 또는 임의의 다른 적절한 클라이언트 컴퓨터 상에서 운영되는 소프트웨어에 의해 구현 가능한 여러 가지 기능 블럭을 포함한다. 소프트웨어 구현에 적절한 기능 블럭은 비교 서브시스템(410), 운영 체제(430), 및 변형에 따라, 선택 서브시스템(440) 내의 조건 분석 서브시스템(442)을 포함한다.
비교 서브시스템(410)은 제1 비교기(412) 및 제2 비교기(420)를 포함한다. 제1 비교기(412)는 제1 비교 방법을 이용하여, 데이터 저장부 즉, 파일 세트(402)의 각각의 파일 간의 차이를 나타내는 데이터 워드의 표시를 제공하고, 서버(300)에 상주할 수 있는 이 파일들을 아카이브한다. 비교기(420)는 제2 비교 방법을 이용하여, 파일 세트(402) 내의 각각의 파일과 이들의 아카이브 간의 차이를 나타내는 데이터 워드 블럭 표시를 제공한다. 비교기(412)와 비교기(420) 중 어느 것을 선택하는가는 사용자 제어 및 사용자 인터페이스 서브시스템(444)에 의해, 및/또는스위치(443)에 의해 개략적으로 지시되는 바와 같이, 조건 분석 서브시스템(444)에 의해 가능하다.
비교 서브시스템(410)은 비교기(412, 420)에 부가하여 추가된 비교기를 포함할 수 있다. 예를 들면, 비교기는 범용 이메일/교신(e-mail/contact) 관리 소프트웨어에 의해 생성된 파일의 아카이빙용으로 특별히 구성될 수 있다. 이러한 소프트웨어의 예로는 개인용 연락 정보, 송수신된 이메일 등을 저장하기 위해 단일의 대용량 파일을 생성하는 마이크로소프트 아웃룩 97(Micorosoft Outlook 97)이 있다. 이러한 파일 내의 기록들은 파일을 생성하는 소프트웨어가 전용하는 필드 헤딩(field headings)을 갖는다. 이러한 필드 헤딩은 파일을 블럭으로 구분하는 데 이용될 수 있다.
이메일/교신 관리 소프트웨어 파일에 적합할 수 있는 비교기의 일 변형예는 아카이빙될 파일의 필드 헤딩을 추출하고, 이러한 필드 헤딩과 최근에 아카이빙된 파일의 필드 헤딩 세트를 비교한다. 비교기는 최근에 아카이빙된 파일에는 나타나지 않는 필드 헤딩으로 시작하는 데이터 워드 블럭과 같이, 신규 필드 헤딩에 대응하는 파일의 임의의 일부분의 표시를 생성한다.
비교기(412)는 각각의 바이트, 16 비트 워드, 및 다른 변형예 간의 차이 표시를 생성하므로 바이트 차등화 엔진이다. 비교기(412)는 최근에 아카이빙된 파일 사본의 데이터 저장부(414), 선택기/복원기(416), 압축기(417), 및 데이터 워드 비교기(418)를 포함한다. 클라이언트 컴퓨터(100)의 하드 디스크(340)와 같은 적당한 저장 매체 상의 데이터 저장부(414)는 렘펠-지브(Lempel-Ziv) 알고리즘을 이용하는 것과 같이 압축된 형태로 사본을 저장한다.
세트(402)로부터 특정 파일의 아카이브를 갱신할 때, 선택기/복원기(416)는 데이터 저장부(414)로부터 대응하는 파일 사본을 선택하고, 그 사본을 비압축 형태로 전환한다. 압축의 이점이 필요하지 않은 변형예에 있어서, 선택기/복원기(416)는 단지 선택 기능을 수행할 수 있다. 데이터 워드 비교기(418)는 파일과 서버(300)에 상주하는 파일의 아카이브 간의 차이 표시를 생성하도록 세트(402)의 파일과 선택기/복원기(416)에 의해 제공되는 비압축 파일 사본을 비교한다. 데이터 저장부(414)의 파일 사본은 서버(300) 상의 아카이브 내의 것과 매칭되므로, 네트워크(200)를 통해 아카이브 파일의 모든 컨텐츠가 전달될 필요 없이 이러한 비교가 수행될 수 있다.
비교기(412)의 기능은 엑스시시 소프트웨어 테크놀로지 트랜스퍼 게엠바하(XCC Software Technology Transfer GmbH)에 의해 출시된 RCE API 버전과 같은 범용 개정 제어 소프트웨어에 의해 구현될 수 있다. 소프트웨어 구현 시스템(400)은 인터페이스를 RCE API에 제공하는 동적 연결 라이브러리(DLL)를 로딩할 수 있다. 그 다음, 비교기(412)는 로딩된 동적 연결 라이브러리를 이용하여 함수 호출을 함으로써 수행된다.
서버 컴퓨터는 소정의 차등화 엔진용 DLL로 실함수 호출을 수행하도록 서버 컴퓨터 상에서 독립된 프로세스를 개시함으로써 차등화 엔진의 예기치 않은 고장으로부터 보호된다. 이러한 접근의 이점은 마스터 서버 컴퓨터가 차등화 엔진의 예기치 않은 고장으로부터 보호된다는 것이다. 만일 차등화 엔진이 고장인 경우에,차등화 엔진에 호출되는 개개의 프로세스도 고장날 것이나, 마스터 서버 프로세스는 영향을 받지 않는다. 이로 인해 서버는 다른 클라이언트가 요구하는 서비스를 계속할 수 있게 된다.
비교기(420)는 512 바이트 세그먼트와 같은 데이터 워드 블럭 간의 차이 표시를 생성하기 때문에 블럭 차등화 엔진이다. 비교기(420)는 토큰 세트의 데이터 저장부(422), 세그먼터(426), 토큰 생성기(428), 및 비교기(424)를 포함한다. 데이터 저장부(422) 내의 토큰은 최근에 아카이빙된 데이터 저장부(402)의 파일을 통계적으로 표시하는 것이다. 세트(402)로부터 특정 파일의 아카이브를 갱신할 때, 세그먼터(426)는 파일을 복수의 블럭으로 구분하며, 이러한 복수의 블럭이 조합되는 경우에는 파일을 재구성한다. 예를 들면, 세그먼터(426)는 프로세스 과정 동안 파일을 국부적으로 세그먼트할 수 있다.
토큰 생성기(428)는 각 블럭을 통계적으로 표시하는 토큰을 생성한다. 비교기(424)는 데이터 저장부(422)의 토큰 세트와 토큰 생성기(428)의 토큰을 비교하고, 이 토큰들 간의 차이에 기초하여 파일과 그 파일의 최근 아카이브간의 임의의 차이 표시를 생성한다. 각 토큰은 데이터 워드 블럭의 표시이기 때문에, 비교기(424)는 불일치하는 각각의 토큰에 대해 상이한 데이터 워드를 갖는 한 블럭의 표시를 생성한다.
비교기(412, 420)는 각각 이점을 갖는다. 비교기(412, 420)를 선택할 수 있으므로, 본 발명의 다양한 양상에 따른 시스템은 파일 아카이빙 동안에 다양한 조건을 최적화할 수 있다. 예를 들면, 비교기(412)와 이 비교기가 채택한 제1 비교방법은 특히 파일과 이 파일의 최근 아카이빙된 것 간의 차이 표시가 비교적 간결한다는 이점을 갖는다. 단지 파일과 아카이브 간의 바이트 차이만이 전달될 필요가 있을 뿐이다. 비교기(420)와 이 비교기가 채택한 제2 비교 방법은 최근에 아카이빙된 최종 파일에 관한 정보를 클라이언트 컴퓨터 상에 비교적 간결하게 저장한다는 이점을 갖는다. 파일 세트(402)에서 임의의 소정 파일을 아카이빙하기 위해, 데이터 저장부(422)의 토큰 세트는 데이터 저장부(414)의 파일 사본에 비해 상당히 적은 저장 용량을 필요로 한다. 비교기들과 이들 각각의 비교 방법은 상기한 점들을 고려하여 선택될 수 있다.
토큰 세트는 복수의 토큰을 포함하고, 각각의 토큰은 소정의 파일 블럭을 표시한다. 본 발명의 다양한 양상에 따른 토큰은 데이터 블럭을 통계적으로 표시하는 임의의 데이터 값을 포함한다. 예를 들면, 데이터 저장부(422)의 토큰 세트의 토큰은, 파일 세트(402)의 파일에서 최근에 아카이빙된 파일의 각 블럭에 관한 통계적 정보를 제공하는 32비트 CRC 값과 같은 CRC 값이다. CRC는 이들의 상대적 위치 뿐만 아니라 데이터 값의 크기 모두에 기초하여, 32비트 값을 이용하는 것과 같이 고유하게 결정된다.
비록 단순한 토큰이 파일과 파일의 아카이브 간의 차이를 무시하는 위험을 초래할 수도 있지만, 체크섬(checksums)과 같은 간단한 토큰 또한 사용될 수 있다. 비교하는 동안 배타적 논리합(XOR) 동작도 수행될 수 있다. 예를 들면, 시스템은 갱신된 파일의 세그먼트의 XOR과 CRC의 곱을 토큰 테이블의 XOR과 CRC의 곱을 비교함으로써, 갱신된 파일과 이전의 파일을 비교한다. 다른 종래의 차등화 시스템 및방법은 본 발명에 따른 다양한 구성에 유리하게 채용될 수도 있다.
도 5는 파일의 아카이브를 갱신하는 예시적인 방법을 예시하는 흐름도이다. 도 5를 참조하면, 이러한 방법은 비교 방법에 대한 사용자의 선택 또는 자동적인 비교 방법 선택을 이용하여 구현될 수 있다. 사용자 선택에 관련된 본 방법의 입력 데이터/프로세스 요소는 "A"로 지칭되어 점선으로 박스되어 지정된다. 자동 선택에 관련된 본 방법의 입력 데이터/프로세스 요소는 "B"로 지칭되어 점선으로 박스되어 지정된다. 프로세스(504)는 사용자에게 프롬프트하도록 정보를 보내어 사용자로부터 선택된 입력을 수신한다. 프로세스(504)에 의해 디스플레이될 수 있는 적절한 대화 박스가 도 2에 예시되어 있다. 자동 선택이 채택되면, 프로세스(502)는 채택할 비교 방법 중 바람직한 어느 하나를 지시하는 하나 이상의 조건에 관한 정보를 수신한다.
프로세스(504)는 사용자 입력 또는 프로세스(502)로부터의 제어 출력 중 어느 하나에 기초하여 한 가지 비교 방법을 활성화 한다. 시스템(400)의 비교기(412)에 의해 채택되는 바이트 차등화가 선택되면, 프로세스(520)는 파일의 사본(511)을 선택하고 그 사본을 복원한다. 상술된 바와 같이, 본 발명의 방법 중의 다양한 다른 방법들이 그러하듯이, 압축은 선택 사항이다. 그 다음으로, 프로세스(508)는 사본(511)의 데이터 워드와 파일(509)의 데이터 워드를 비교하고, 그들간의 차이 표시(513)를 제공한다. 표시(513)는 프로세스(518)로 전달되고, 이는 통상적으로 서버(300) 상에서 수행된다. 서버 컴퓨터에서 수행될 때, 표시(513)의 프로세스(518)로의 송신은 네트워크 연결(200)로서 표시된다. 프로세스(518) 이외의 도 5에 예시된 프로세스는 클라이언트 컴퓨터상에서 수행된다.
프로세스(510)는 그 안에 표시된 중요한 정보 면에서 사본(511)이 파일(509)과 동일하도록 파일(509)의 사본(511)을 갱신한다. 그런 다음, 파일(509)을 더 갱신하는 것은 도 5의 프로세스를 반복함으로써 아카이빙될 수 있다. 개정의 여러 단계에서 파일(509)의 많은 사본이 로컬 컴퓨터 상에 보유되어 이전의 개정으로의 백업이 보다 빠르고 편리할 수 있도록 할 수 있다. 그러한 사본에 액세스하기 위해 네트워크 연결은 필요하지 않다.
시스템(400)의 비교기(414)에 의해 사용되는 블럭 차등화가 선택되면, 프로세스(506)는 파일(509)으로 512 바이트 영역으로 구분하는 것과 같이, 파일(509)을 블럭으로 세그먼트화 또는 구분한다. 그 다음, 프로세스(512)는 각 블럭이 제1 토큰 세트(515)에 제공되도록, 32비트 CRC와 같은 토큰을 계산한다. 프로세스(514)는 제1 토큰 세트(515)의 토큰과 제2 토큰 세트(507)의 각 토큰을 비교한다. 제2 토큰 세트(507)의 토큰은 파일(509)의 이전 버전의 이전 아카이빙 동안에 프로세스(506, 512)에 의해 도출된 토큰이다. 프로세스(514)는 각각의 토큰을 비교하여, 파일(509)의 블럭과, 제2 토큰 세트(507)에 의해 통계적으로 표시된 그 파일의 최근의 아카이브 버전 간의 차이를 결정한다. 프로세스(514)는 파일(509)과 그 아카이브 버전 간의 차이 표시(513)를 제공하며, 이 표시는 상술한 바와 같이 프로세스(518)로 통신된다.
프로세스(516)는 제2 토큰 세트(507)를 제1 토큰 세트(515)로 갱신한다. 또한, 파일(509)로 더 갱신하는 것은 갱신된 토큰 세트(507)를 이용하여 도 5의 프로세스를 반복함으로써 아카이빙될 수 있다.
프로세스(518)는 서버 컴퓨터 상에서 파일(509)의 아카이브(517)를 갱신하는 것이 바람직하며, 이러한 서버 컴퓨터는 파일(509)이 상주하는 클라이언트 컴퓨터와는 다른 빌딩, 도시, 또는 심지어 다른 대륙으로 물리적으로 떨어져 있을 수도 있다. 프로세스(518)는 단일-파일 아카이브와 같은 단일 버전의 파일을 유지할 수 있으며, 소정의 많은 아카이브 버전을 유지하도록 적용될 수 있다. 사용자가 최근 버전보다 우수한 것으로 입증된 서류 개정 또는 하드 디스크 구성으로 돌아갈 수 있기 때문에 복수의 아카이브 버전을 제공하는 것은 이점이 될 있다. 이러한 기능은 미국특허 제6,016,553호에 개시된 바와 같은 종래의 백업 소프트웨어의 함께 사용될 수 있다.
도 6 내지 도 9는 컴퓨터 파일의 아카이브를 갱신하는 방법을 예시한다. 도 6을 참조하면, 방법(1000)은 프로세스(1010)를 개시하는데, 이 프로세스에서는 차등화 DLL이 이용 가능하다면 로딩된다. 다음으로, 프로세스(1020)는 국부 파일로부터 백업 세트 정의를 검색한다. 다음으로, 프로세스(1030)는 백업 세트 정의마다 디렉토리를 트래버스하고 파일을 평가한다. 프로세스는 결정 단계(1035)로 진행한다.
결정 단계(1035)는 현재 파일이 백업될 것인지를 결정한다. 만약 "예"인 경우라면, 프로세스 흐름은 프로세스(1040)로 진행한다. 프로세스(1040)는 사용될 차등화 방법을 결정한다. 프로세스(1040)는 도 10을 참조하며 상세히 설명될 것이다. 다음으로, 프로세스 흐름은 결정 단계(1050)로 진행한다. 결정 단계(1050)는바이트 차등화 엔진을 사용할 것인지를 결정한다. 만약 그렇다면, 프로세스 흐름은 원 A1으로 표시된 바와 같이, 연속 방법(1500)으로 진행한다. 만약 그렇지 않다면, 프로세스 흐름은 원 B1으로 표시된 바와 같이, 연속 방법(2000)으로 진행한다.
도 7에 예시된 연속 방법(1500)에 있어서, 프로세스 흐름은 파일용 데이터베이스를 오픈하고 최근 개정의 ID를 취하는 프로세스(1510)로 계속된다. 다음으로, 프로세스(1520)는 최근 개정을 복원한다. 다음으로, 프로세스(1530)는 적절한 서브루틴을 호출함으로써 역방향 델타를 작성한다. 다음으로, 프로세스(1540)는 적절한 서브루틴을 호출함으로써 순방향 델타를 작성한다. 다음으로, 프로세스(1550)는 신규 파일을 압축한다. 다음으로, 프로세스 흐름은 원 A2로 표시한 바와 같이, 연속 방법(2000)으로 진행한다.
도 8에 예시된 연속 방법(1500)에 있어서, 프로세스 흐름은 파일용 신규 데이터베이스를 작성하는 프로세스(1560)로 계속된다. 다음으로, 프로세스(1570)는 헤더 정보를 데이터베이스에 기록한다. 다음으로, 프로세스(1580)는 압축된 신규 파일을 데이터베이스에 복사한다. 다음으로, 프로세스(1590)는 신규 백 델타(back delta)를 데이터베이스에 추가한다. 다음으로, 프로세스(1600)는 구 데이터베이스로부터 각각의 백 델타를 신규 데이터베이스에 복사한다. 다음으로, 프로세스(1610)는 버전 히스토리를 신규 데이터베이스에 추가한다.
연속 방법(2000)은 도 9에 예시되어 있다. 단계(2010)에서, 이러한 파일에 대한 블럭 통계가 블럭 데이터베이스 파일로부터 검색된다. 다음으로, 결정 단계(2030)에서, 방법(2000)은 파일에 대한 통계가 존재하는지를 판정한다. 만약 통계가 존재하지 않는다면, 베이스라인 백업(baseline backup)이 수행되고, 그 다음 결정 단계(2030)에서 단계(2020)으로 진행하는 분기(branch)는 없다.
단계(2020)에서, 파일은 로크(lock)되고 파일의 압축된 사본이 작성된다. 단계(2050)로 진행하여, 방법(2000)은 모든 파일에 대해 블럭 통계를 계산한다. 결정 단계(2030)로 되돌아와서, 만약 통계가 존재한다면, 결정 단계(2030)의 "예" 분기는 단계(2040)로 진행한다. 단계(2040)에서, 방법(2000)은 현재 블럭 통계와 블럭 데이터베이스로부터 검색된 블럭 통계 간의 델타를 계산한다. 다음으로, 단계(2060)에서, 이러한 파일의 블럭 통계가 블럭 데이터베이스 파일에 추가된다. 다음으로, 단계(2070)에서, 소스 파일이 언로크(unlock)된다.
도 10은 사용될 차등화 방법을 결정하는 방법을 예시하는 흐름도이다. 방법(3000)은 방법(3000)이 바이트 차등화 엔진 및 블럭 차등화 엔진이 모두 이용불가능한지를 결정하는 결정 단계(3010)에서 시작한다. 만약 이들 엔진이 모두 이용 불가능하다면, 결정 단계(3010)의 "예" 분기는 단계(3020)로 진행한다. 단계(3020)에서, 에러가 리턴된다. 만약 이들 엔진 중 어느 하나 또는 모두가 이용 가능하다면, 결정 단계(3010)의 "예" 분기는 결정 단계(3030)로 진행한다.
결정 단계(3030)에서, 방법(3000)은 블럭 차등화 엔진이 이용 불가능한지를 결정한다. 만약 블럭 차등화 엔진이 이용 불가능하다면, 결정 단계(3030)의 "예" 분기는 단계(3040)로 진행한다. 단계(3040)에서, 방법(3000)은 바이트 차등화 엔진을 사용한다. 만약 블럭 차등화 엔진이 이용 가능하다면, 결정 단계(3030)의 "아니오" 분기는 결정 단계(3050)로 유도한다. 결정 단계(3050)에서, 방법(3000)은 바이트 차등화 엔진이 이용 불가능한지를 결정한다. 만약 바이트 차등화 엔진이 이용 불가능하다면, 결정 단계(3050)의 "예" 분기는 단계(3060)로 진행한다. 단계(3060)에서, 방법(3000)은 블럭 차등화 엔진을 사용한다. 만약 블럭 차등화 엔진이 이용 가능하다면, 결정 단계(3050)의 "아니오" 분기는 단계(3070)로 진행한다.
단계(3070)에서, 방법(3000)은 과거(past) 델타 방법을 결정한다. 다음으로, 결정 단계(3080)에서, 방법(3000)은 방법(3000)이 과거 차등화 방법을 결정할 수 있는지의 여부를 결정한다. 만약 방법(3000)이 과거 차등화 방법을 결정할 수 있다면, 결정 단계(3080)의 "예" 분기는 단계(3090)로 진행한다. 단계(3090)에서, 방법(3000)은 과거 차등화 방법을 사용한다. 만약 방법(3000)이 과거 차등화 방법을 결정할 수 없다면, 단계(3080)의 "아니오" 분기는 단계(3095)로 진행한다. 단계(3095)에서, 방법(3000)은 백업 세트에 특정된 차등화 방법을 사용한다.
본 발명의 바람직한 실시예 및 이와 관련되는 방법으로 설명하였지만, 바람직한 실시예의 변형 및 변경은 당업자에게는 자명한 것이다. 따라서, 상술된 바람직한 예시적인 실시예의 설명은 본 발명을 한정하거나 제한하지 않는다.
또한, 다른 변경, 대체, 및 변형은 본 발명의 사상과 범위를 벗어나지 않고도 가능하며 후술되는 청구 범위에 의해 한정된다.

Claims (70)

  1. 파일의 변경을 반영하기 위해 상기 파일의 아카이브(archive)를 갱신하는 방법에 있어서,
    복수개의 비교 방법 중 어느 하나를 바람직한 비교 방법으로서 선택하는 단계; 및
    상기 파일과 상기 파일의 아카이브 간의 차이 표시(indicia of differences)를 생성하여 상기 파일의 아카이브를 갱신하도록 상기 바람직한 비교 방법을 실행하는 단계
    를 포함하고,
    상기 복수개의 비교 방법은
    파일과 상기 파일의 아카이브를 비교하는 제1 비교 방법; 및
    상기 파일을 통계적으로 표시하는 제1 토큰 세트를 계산하여 상기 파일의 아카이브를 통계적으로 표시하는 제2 토큰 세트와 비교하는 제2 비교 방법
    을 포함하는 아카이브 갱신 방법.
  2. 제1항에 있어서,
    상기 파일은 클라이언트 컴퓨터에 상주하고, 상기 파일의 아카이브는 서버 컴퓨터에 상주하며, 상기 파일은 상기 클라이언트 컴퓨터에 상주하는 파일의 아카이브의 사본(copy)과 상기 제1 비교 방법에 의해 비교되고,
    상기 파일의 아카이브를 갱신하기 위해 상기 차이 표시를 상기 클라이언트 컴퓨터로부터 상기 서버 컴퓨터로 전달하는 단계
    를 더 포함하는 아카이브 갱신 방법.
  3. 제1항에 있어서,
    상기 차이 표시는,
    상기 바람직한 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 파일과 상기 파일의 아카이브 간의 서로 다른 임의의 데이터 워드(data word); 및
    상기 바람직한 비교 방법이 상기 제2 비교 방법을 포함할 때, 상기 파일과 상기 파일의 아카이브 간의 서로 다른 임의의 데이터 워드 블럭
    을 포함하는 아카이브 갱신 방법.
  4. 제2항에 있어서,
    상기 파일의 아카이브의 갱신 시에 최적화되도록 선택되는 조건으로서 제1 조건 및 제2 조건 중 어느 하나를 사용자가 선택하도록 프롬프팅(prompting)하는 단계; 및
    상기 선택된 조건이 최적화되도록 상기 바람직한 비교 방법을 선택하는 단계
    를 더 포함하는 아카이브 갱신 방법.
  5. 제4항에 있어서,
    상기 제1 조건은 상기 클라이언트 컴퓨터 상의 데이터 저장 공간을 효율적으로 사용하는 것이고,
    상기 제2 조건은 상기 차이 표시를 상기 클라이언트 컴퓨터로부터 상기 서버 컴퓨터로 효율적으로 전달하는 것인 아카이브 갱신 방법.
  6. 제2항에 있어서,
    상기 바람직한 비교 방법의 선택은
    상기 바람직한 비교 방법을 표시하는 하나 이상의 조건을 분석하는 단계; 및
    상기 조건에 응답하여 상기 바람직한 비교 방법을 선택하는 단계
    를 포함하는 아카이브 갱신 방법.
  7. 제6항에 있어서,
    상기 조건 중 하나는 상기 클라이언트 컴퓨터를 상기 서버 컴퓨터와 연결하는 네트워크의 대역폭인 아카이브 갱신 방법.
  8. 제6항에 있어서,
    상기 조건 중 하나는 상기 파일의 크기(size)인 아카이브 갱신 방법.
  9. 제6항에 있어서,
    상기 조건 중 하나는 상기 파일의 종류(type)인 아카이브 갱신 방법.
  10. 제2항에 있어서,
    상기 파일의 아카이브의 사본은 상기 클라이언트 컴퓨터에 압축된 형태로 상주하고,
    상기 제1 비교 방법은
    상기 파일의 아카이브의 사본을 복원(decompress)하여 상기 파일의 아카이브의 복원된 사본을 생성하는 단계, 및
    상기 파일의 각 바이트와 상기 파일의 아카이브의 복원된 사본의 대응하는 바이트를 비교하는 단계
    를 포함하는 아카이브 갱신 방법.
  11. 제1항에 있어서,
    상기 제2 토큰 세트는 클라이언트 컴퓨터에 상주하고,
    상기 파일의 아카이브는 서버 컴퓨터에 상주하며,
    상기 제2 비교 방법은
    상기 파일을 복수의 블럭으로 구분하는 단계,
    상기 복수의 블럭 각각에 대해 순환 중복 코드(cyclic redundancy code : CRC) 값을 계산함으로써 상기 파일을 통계적으로 표시하는 상기 제1 토큰 세트를 계산하는 단계, 및
    상기 제1 토큰 세트의 각각의 토큰을 상기 제2 토큰 세트의 각각의 토큰과 비교하는 단계
    를 포함하는 아카이브 갱신 방법.
  12. 제2항에 있어서,
    상기 클라이언트 컴퓨터와 상기 서버 컴퓨터 간에 네트워크 연결을 제공하는 단계
    를 더 포함하는 아카이브 갱신 방법.
  13. 제12항에 있어서,
    상기 네트워크 연결은 인터넷을 포함하는 아카이브 갱신 방법.
  14. 제13항에 있어서,
    상기 클라이언트 컴퓨터는 휴대용 컴퓨터인 아카이브 갱신 방법.
  15. 파일의 변경을 반영하기 위해 상기 파일의 아카이브를 갱신하기 위한 시스템에 있어서,
    비교 서브시스템 - 상기 비교 서브시스템은
    파일과, 클라이언트 컴퓨터에 상주하는 상기 파일의 아카이브의 사본을 비교하도록 동작하는 제1 비교기; 및
    상기 파일을 통계적으로 표시하는 제1 토큰 세트를 계산하고, 상기제1 토큰 세트와, 상기 클라이언트 컴퓨터에 상주하며 상기 파일의 아카이브의 통계적으로 표시하는 제2 토큰 세트를 서버 컴퓨터 상에서 비교하도록 동작하는 제2 비교기
    를 포함함 -; 및
    상기 파일과 상기 파일의 아카이브 간의 차이 표시를 생성하기 위해 상기 제1 비교기와 상기 제2 비교기 중 바람직한 어느 하나를 활성화시키는 선택 서브시스템
    을 포함하는 아카이브 갱신 시스템.
  16. 제15항에 있어서,
    상기 파일은 상기 클라이언트 컴퓨터에 상주하고,
    상기 차이 표시에 응답하여 상기 차이 표시를 상기 클라이언트 컴퓨터로부터 상기 서버 컴퓨터로 전달하기 위해 상기 서버 컴퓨터에 결합되도록 구성되는 네트워크 인터페이스
    를 더 포함하는 아카이브 갱신 시스템.
  17. 제15항에 있어서,
    상기 파일의 아카이브의 사본은 상기 클라이언트 컴퓨터에 압축된 형태로 상주하고,
    상기 제1 비교기는 상기 파일의 아카이브의 사본을 복원하여 복원된 사본을생성하고, 상기 파일의 각 바이트를 상기 복원된 사본의 대응하는 바이트와 비교하도록 동작하는 아카이브 갱신 시스템.
  18. 제15항에 있어서,
    상기 제2 비교기는 상기 파일을 복수의 블럭으로 구분하고, 상기 복수의 블럭 각각에 대해 순환 중복 코드(CRC) 값을 계산함으로써 상기 파일을 통계적으로 표시하는 상기 제1 토큰 세트를 계산하며, 상기 제1 토큰 세트의 각각의 토큰을 상기 제2 토큰 세트의 각각의 토큰과 비교하도록 동작하는 아카이브 갱신 시스템.
  19. 제15항에 있어서,
    상기 선택 서브시스템은
    선택 조건으로서 제1 조건 및 제2 조건 중 어느 하나를 사용자가 선택하도록 프롬프팅하는 사용자 인터페이스
    를 포함하고,
    상기 선택 서브시스템은 상기 제2 조건이 최적화되도록 상기 제1 비교기와 상기 제2 비교기 중 바람직한 어느 하나를 선택하는 아카이브 갱신 시스템.
  20. 제16항에 있어서,
    상기 선택 서브시스템은
    상기 제1 비교기와 상기 제2 비교기 중 바람직한 어느 하나를 표시하는 하나이상의 조건에 응답하여 바람직한 어느 하나를 선택하는 조건 분석 서브시스템
    을 포함하는 아카이브 갱신 시스템.
  21. 제20항에 있어서,
    상기 조건 중 하나는 상기 클라이언트 컴퓨터를 상기 서버 컴퓨터에 연결하는 네트워크의 대역폭인 아카이브 갱신 시스템.
  22. 제20항에 있어서,
    상기 조건 중 하나는 상기 파일의 크기인 아카이브 갱신 시스템.
  23. 제20항에 있어서,
    상기 조건 중 하나는 상기 파일의 종류인 아카이브 갱신 시스템.
  24. 파일 아카이빙 방법(method for file archiving)에 있어서,
    적어도 어느 하나의 조건에 기초하여 제1 파일과 이에 관련되는 제2 파일 간을 비교하기 위한 선택된 비교 방법을 선택하는 단계 - 상기 선택된 비교 방법은 제1 비교 방법과 제2 비교 방법에서 선택되고, 상기 제1 비교 방법은 상기 제1 파일과 관련되는 적어도 하나의 바이트와 상기 제2 파일과 관련되는 적어도 하나의 바이트를 비교하는 단계를 포함하며, 상기 제2 비교 방법은 상기 제1 파일과 관련되는 제1 통계치 세트(set of statistics)와 상기 제2 파일과 관련되는 제2 통계치세트를 비교하는 단계를 포함함 -;
    상기 제1 파일, 상기 제2 파일, 및 상기 선택된 비교 방법에 기초하여 적어도 하나의 차이 표시를 생성하는 단계; 및
    상기 차이 표시에 기초하여 상기 제1 파일을 갱신하도록 상기 차이 표시를 제공하는 단계
    를 포함하는 파일 아카이빙 방법.
  25. 제24항에 있어서,
    상기 제1 파일은 상기 제2 파일의 아카이브를 포함하는 파일 아카이빙 방법.
  26. 제24항에 있어서,
    상기 제1 통계치 세트는 상기 제1 파일과 관련되는 적어도 하나의 제1 토큰 세트를 포함하고, 상기 제2 통계치 세트는 상기 제2 파일과 관련되는 적어도 하나의 제2 토큰 세트를 포함하는 파일 아카이빙 방법.
  27. 제26항에 있어서,
    상기 제1 토큰은 데이터 블럭에 관하여 순환 중복 코드(CRC)를 포함하는 파일 아카이빙 방법.
  28. 제27항에 있어서,
    상기 데이터 블럭은 512 바이트의 데이터 세그먼트를 포함하는 파일 아카이빙 방법.
  29. 제24항에 있어서,
    상기 차이 표시를 생성하는 단계는
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제2 파일로부터 상기 제1 파일로의 순방향 델타(forward delta)를 생성하는 단계; 및
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제1 파일로부터 상기 제2 파일로의 역방향 델타(backward delta)를 생성하는 단계
    를 포함하는 파일 아카이빙 방법.
  30. 제29항에 있어서,
    상기 순방향 델타를 제1 파일에 적용하는 단계; 및
    상기 역방향 델타를 저장하는 단계
    를 더 포함하는 파일 아카이빙 방법.
  31. 제29항에 있어서,
    상기 순방향 델타는 상기 제1 파일로부터 상기 제2 파일을 생성하는 데 사용 가능한 데이터를 포함하는 파일 아카이빙 방법.
  32. 제24항에 있어서,
    상기 제1 파일을 서버 컴퓨터에 저장하는 단계; 및
    상기 제2 파일을 클라이언트 컴퓨터에 저장하는 단계
    를 더 포함하는 파일 아카이빙 방법.
  33. 제24항에 있어서,
    상기 차이 표시를 생성하는 단계는,
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제1 파일과 상기 제2 파일 간에 서로 다른 적어도 하나의 데이터 워드의 표시(indicia)를 생성하는 단계; 및
    상기 선택된 비교 방법이 상기 제2 비교 방법을 포함할 때, 상기 제1 파일과 상기 제2 파일 간에 서로 다른 적어도 하나의 데이터 워드 블럭의 표시를 생성하는 단계
    를 포함하는 파일 아카이빙 방법.
  34. 제24항에 있어서,
    상기 선택된 비교 방법을 선택하는 단계는
    최적화하도록 선택된 조건을 수신하는 단계; 및
    사용자로부터의 조건에 기초하여 상기 선택된 비교 방법을 선택하는 단계
    를 포함하는 파일 아카이빙 방법.
  35. 제24항에 있어서,
    상기 선택된 비교 방법을 선택하는 단계는 상기 제1 파일과 관련되는 이전의 비교 방법을 결정하는 단계를 포함하는 파일 아카이빙 방법.
  36. 제24항에 있어서,
    상기 선택된 비교 방법을 선택하는 단계는 국부 저장부(local storage)를 최소화할 것인지 또는 전송 시간을 최소화할 것인지를 결정하는 단계를 포함하는 파일 아카이빙 방법.
  37. 제24항에 있어서,
    상기 선택된 비교 방법을 선택하는 단계는
    상기 조건을 분석하는 단계; 및
    상기 조건에 기초하여 상기 선택된 비교 방법을 자동적으로 선택하는 단계
    를 포함하는 파일 아카이빙 방법.
  38. 제37항에 있어서,
    상기 조건은 상기 제2 파일의 크기를 포함하는 파일 아카이빙 방법.
  39. 제37항에 있어서,
    상기 조건은 상기 제2 파일과 관련되는 종류를 포함하는 파일 아카이빙 방법.
  40. 제37항에 있어서,
    상기 조건은 네트워크 연결의 대역폭을 포함하는 파일 아카이빙 방법.
  41. 제24항에 있어서,
    상기 제1 파일 및 상기 제2 파일은 압축된 파일 아카이빙 방법.
  42. 파일 아카이빙 시스템에 있어서,
    저장 매체 상의 소프트웨어를 포함하고,
    상기 소프트웨어는 실행 시에,
    적어도 어느 하나의 조건에 기초하여 제1 파일과 이와 관련련 제2 파일 간의 비교를 위한 선택된 비교 방법 - 상기 선택된 비교는 제1 비교 방법과 제2 비교 방법에서 선택되고, 상기 제1 비교 방법은 상기 제1 파일과 관련되는 적어도 하나의 바이트와 상기 제2 파일과 관련되는 적어도 하나의 바이트를 비교하는 단계를 포함하며, 상기 제2 비교 방법은 상기 제1 파일과 관련되는 제1 통계치 세트와 상기 제2 파일과 관련되는 제2 통계치 세트를 비교하는 단계를 포함함 - 을 선택하고,
    상기 제1 파일, 상기 제2 파일, 및 상기 선택된 비교 방법에 기초하여 적어도 하나의 차이 표시를 생성하며,
    상기 차이 표시에 기초하여 상기 제1 파일을 갱신하기 위해 상기 차이 표시를 제공하도록 동작하는 파일 아카이빙 시스템.
  43. 제42항에 있어서,
    상기 제1 파일은 상기 제2 파일의 아카이브를 포함하는 파일 아카이빙 시스템.
  44. 제42항에 있어서,
    상기 제1 통계치 세트는 상기 제1 파일과 관련되는 적어도 하나의 제1 토큰을 포함하고, 상기 제2 통계치 세트는 상기 제2 파일과 관련되는 적어도 하나의 제2 토큰을 포함하는 파일 아카이빙 시스템.
  45. 제44항에 있어서,
    상기 제1 토큰은 데이터 블럭에 관하여 순환 중복 코드(CRC)를 포함하는 파일 아카이빙 시스템.
  46. 제45항에 있어서,
    상기 데이터 블럭은 512 바이트의 데이터 세그먼트를 포함하는 파일 아카이빙 시스템.
  47. 제42항에 있어서,
    상기 소프트웨어는
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제2 파일로부터 상기 제1 파일로의 순방향 델타를 생성하고,
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제1 파일로부터 상기 제2 파일로의 역방향 델타를 생성하도록 더 동작하는 파일 아카이빙 시스템.
  48. 제47항에 있어서,
    상기 소프트웨어는
    상기 순방향 델타를 상기 제1 파일에 적용하고,
    상기 역방향 델타를 저장하도록 더 동작하는 파일 아카이빙 시스템.
  49. 제47항에 있어서,
    상기 순방향 델타는 상기 제1 파일로부터 상기 제2 파일을 생성하는 데 사용 가능한 데이터를 포함하는 파일 아카이빙 시스템.
  50. 제47항에 있어서,
    상기 소프트웨어는
    상기 제1 파일을 서버 컴퓨터에 저장하고,
    상기 제2 파일을 클라이언트 컴퓨터에 저장하도록 더 동작하는 파일 아카이빙 시스템.
  51. 제42항에 있어서,
    상기 소프트웨어는
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제1 파일과 상기 제2 파일 간의 서로 다른 적어도 하나의 데이터 워드의 표시를 생성하고,
    상기 선택된 비교 방법이 상기 제2 비교 방법을 포함할 때, 상기 제1 파일과 상기 제2 파일 간의 서로 다른 적어도 하나의 데이터 워드 블럭의 표시를 생성하도록 더 동작하는 파일 아카이빙 시스템.
  52. 제42항에 있어서,
    상기 소프트웨어는 사용자로부터 최적화될 선택된 조건에 기초하여 상기 선택된 비교 방법을 선택하도록 더 동작하는 파일 아카이빙 시스템.
  53. 제42항에 있어서,
    상기 소프트웨어는 상기 제1 파일과 관련되는 이전의 비교 방법에 기초하여 상기 선택된 비교 방법을 선택하도록 더 동작하는 파일 아카이빙 시스템.
  54. 제42항에 있어서,
    상기 소프트웨어는 파일 아키이빙을 위해 국부 저장부 및 전송 시간 중 어느 하나를 최소화하는 데 기초하여 상기 선택된 비교 방법을 선택하도록 더 동작하는 파일 아카이빙 시스템.
  55. 제42항에 있어서,
    상기 소프트웨어는
    상기 조건을 분석하고,
    상기 조건에 기초하여 상기 선택된 비교 방법을 선택하도록 더 동작하는 파일 아카이빙 시스템.
  56. 제55항에 있어서,
    상기 조건은 상기 제2 파일의 크기를 포함하는 파일 아카이빙 시스템.
  57. 제55항에 있어서,
    상기 조건은 상기 제2 파일과 관련되는 종류를 포함하는 파일 아카이빙 시스템.
  58. 제55항에 있어서,
    상기 조건은 네트워크 연결의 대역폭을 포함하는 파일 아카이빙 시스템.
  59. 제42항에 있어서,
    상기 제1 파일 및 상기 제2 파일은 압축된 파일 아카이빙 시스템.
  60. 파일 아카이빙 시스템에 있어서,
    적어도 어느 하나의 조건에 기초하여 제1 파일과, 이에 관련되는 제2 파일 간의 비교를 위한 선택된 비교 방법 - 상기 선택된 비교 방법은 제1 비교 수단과 제2 비교 수단에서 선택되고, 상기 제1 비교 수단은 상기 제1 파일과 관련되는 적어도 하나의 바이트와 상기 제2 파일과 관련되는 적어도 하나의 바이트를 비교하는 수단을 포함하며, 상기 제2 비교 수단은 상기 제1 파일과 관련되는 제1 통계치 세트와 상기 제2 파일과 관련되는 제2 통계치 세트를 비교하는 수단을 포함함 - 을 선택하는 수단;
    상기 제1 파일, 상기 제2 파일, 및 상기 선택된 비교 방법에 기초하여 적어도 하나의 차이 표시를 생성하는 수단; 및
    상기 차이 표시에 기초하여 상기 제1 파일을 갱신하기 위해 상기 차이 표시를 제공하는 수단
    을 포함하는 파일 아카이빙 시스템.
  61. 제60항에 있어서,
    상기 제1 파일은 상기 제2 파일의 아카이브를 포함하는 파일 아카이빙 시스템.
  62. 제60항에 있어서,
    상기 제1 통계치 세트는 상기 제1 파일에 관련되는 적어도 하나의 제1 토큰을 포함하고, 상기 제2 통계치 세트는 상기 제2 파일에 관련되는 적어도 하나의 제2 토큰을 포함하는 파일 아카이빙 시스템.
  63. 제24항에 있어서,
    상기 차이 표시를 생성하는 수단은
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제2 파일로부터 상기 제1 파일로의 순방향 델타를 생성하는 수단; 및
    상기 선택된 비교 방법이 상기 제1 비교 방법을 포함할 때, 상기 제1 파일로부터 상기 제2 파일로의 역방향 델타를 생성하는 수단
    을 포함하는 파일 아카이빙 시스템.
  64. 제63항에 있어서,
    상기 순방향 델타를 상기 제1 파일에 적용하는 수단; 및
    상기 역방향 델타를 저장하는 수단
    을 더 포함하는 파일 아카이빙 시스템.
  65. 제63항에 있어서,
    상기 순방향 델타는 상기 제1 파일로부터 상기 제2 파일을 생성하는 데 사용 가능한 데이터를 포함하는 파일 아카이빙 시스템.
  66. 제60항에 있어서,
    상기 선택된 비교 방법을 선택하는 수단은
    상기 조건을 분석하는 수단; 및
    상기 조건에 기초하여 상기 선택된 비교 방법을 자동적으로 선택하는 수단
    을 포함하는 파일 아카이빙 시스템.
  67. 제66항에 있어서,
    상기 조건은 상기 제2 파일의 크기를 포함하는 파일 아카이빙 시스템.
  68. 제66항에 있어서,
    상기 조건은 상기 제2 파일과 관련되는 종류를 포함하는 파일 아카이빙 시스템.
  69. 국부적으로 저장된 파일의 원격 아카이브를 갱신하기 위한 시스템에 있어서,
    현재 버전의 파일과 상기 파일의 아카이브의 국부 사본의 각각의 바이트 간의 제1 차이 표시를 생성하도록 동작하는 바이트 차등화 엔진;
    상기 현재 버전의 파일에 기초하여 현재 토큰 세트를 생성하고, 상기 파일의아카이브에 기초하여 아카이브 토큰 세트를 생성하며, 상기 현재 토큰 세트와 상기 아카이브 토큰 세트에 기초하여 상기 현재 버전과 상기 아카이브 버전 간의 제2 차이 표시를 생성하도록 동작하는 블럭 차등화 엔진;
    상기 파일의 아카이브의 갱신을 최적화하기 위해 유효한 데이터 저장 조건과 유효한 전송 조건 중 어느 하나를 선택하도록 사용자에게 프롬프트하도록 동작하는 사용자 인터페이스; 및
    상기 제1 차이 표시와 상기 제2 차이 표시를 각각 생성하는 상기 바이트 차등화 엔진과 상기 블럭 차등화 엔진 중 사용자가 바람직한 어느 하나로서 선택한 것에 기초하여 자동적으로 선택하도록 동작하는 선택기
    를 포함하는 원격 아카이브 갱신 시스템.
  70. 파일의 아카이브를 갱신하기 위한 방법에 있어서,
    바이트 차등화 엔진 및 블럭 차등화 엔진 중 어느 하나를 선택하는 단계; 및
    상기 파일의 아카이브를 갱신하기 위해 상기 차등화 엔진들 중 선택된 어느 하나를 이용하여 상기 파일과 상기 파일의 아카이브 간의 차이 표시를 생성하는 단계
    를 포함하는 아카이브 갱신 방법.
KR1020027011460A 2000-03-01 2001-03-01 컴퓨터 파일의 아카이브 갱신 방법 및 시스템 KR20020097192A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US18613700P 2000-03-01 2000-03-01
US60/186,137 2000-03-01
PCT/US2001/006820 WO2001065371A2 (en) 2000-03-01 2001-03-01 Method and system for updating an archive of a computer file

Publications (1)

Publication Number Publication Date
KR20020097192A true KR20020097192A (ko) 2002-12-31

Family

ID=22683795

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027011460A KR20020097192A (ko) 2000-03-01 2001-03-01 컴퓨터 파일의 아카이브 갱신 방법 및 시스템

Country Status (13)

Country Link
US (3) US7730031B2 (ko)
EP (1) EP1259883B1 (ko)
JP (1) JP2003525495A (ko)
KR (1) KR20020097192A (ko)
CN (1) CN1209708C (ko)
AT (1) ATE312378T1 (ko)
AU (2) AU4195601A (ko)
BR (1) BR0108797A (ko)
CA (1) CA2398838A1 (ko)
DE (1) DE60115607D1 (ko)
IL (1) IL151091A0 (ko)
WO (1) WO2001065371A2 (ko)
ZA (1) ZA200205984B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675795B1 (ko) * 2004-11-05 2007-02-02 삼성전자주식회사 양문형 냉장고 및 양문형 냉장고의 도어 개방 방법

Families Citing this family (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035880B1 (en) 1999-07-14 2006-04-25 Commvault Systems, Inc. Modular backup and retrieval system used in conjunction with a storage area network
US7434219B2 (en) 2000-01-31 2008-10-07 Commvault Systems, Inc. Storage of application specific profiles correlating to document versions
US6658436B2 (en) 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
CA2398838A1 (en) * 2000-03-01 2001-09-07 Computer Associates Think, Inc. Method and system for updating an archive of a computer file
US7107298B2 (en) 2001-09-28 2006-09-12 Commvault Systems, Inc. System and method for archiving objects in an information store
WO2003046721A1 (en) * 2001-11-23 2003-06-05 Commvault Systems, Inc. Selective data replication system and method
JP2003271316A (ja) * 2002-03-14 2003-09-26 Hitachi Ltd ストレージシステム、その動作プログラム及びその運用方法、情報処理端末及びその動作プログラム、データ管理システム
US7185031B2 (en) * 2002-03-25 2007-02-27 Quantum Corporation Creating a backup volume using a data profile of a host volume
US6925467B2 (en) 2002-05-13 2005-08-02 Innopath Software, Inc. Byte-level file differencing and updating algorithms
JP2004094617A (ja) * 2002-08-30 2004-03-25 Fujitsu Ltd 差分圧縮によるバックアップ方法、システム及び差分圧縮方法
US8060643B2 (en) * 2002-08-30 2011-11-15 Hewlett-Packard Development Company, L.P. Method and apparatus for dynamically managing bandwidth for clients in a storage area network
US7096311B2 (en) 2002-09-30 2006-08-22 Innopath Software, Inc. Updating electronic files using byte-level file differencing and updating algorithms
US6836657B2 (en) 2002-11-12 2004-12-28 Innopath Software, Inc. Upgrading of electronic files including automatic recovery from failures and errors occurring during the upgrade
US8230066B2 (en) * 2002-11-04 2012-07-24 International Business Machines Corporation Location independent backup of data from mobile and stationary computers in wide regions regarding network and server activities
US20040098421A1 (en) * 2002-11-18 2004-05-20 Luosheng Peng Scheduling updates of electronic files
US7007049B2 (en) 2002-11-18 2006-02-28 Innopath Software, Inc. Device memory management during electronic file updating
US7844734B2 (en) 2002-11-18 2010-11-30 Innopath Software, Inc. Dynamic addressing (DA) using a centralized DA manager
US7003534B2 (en) * 2002-11-18 2006-02-21 Innopath Software, Inc. Generating difference files using module information of embedded software components
US20040098361A1 (en) * 2002-11-18 2004-05-20 Luosheng Peng Managing electronic file updates on client devices
US7320010B2 (en) * 2002-11-18 2008-01-15 Innopath Software, Inc. Controlling updates of electronic files
US7099884B2 (en) * 2002-12-06 2006-08-29 Innopath Software System and method for data compression and decompression
WO2004090676A2 (en) * 2003-04-03 2004-10-21 Commvault Systems, Inc. Remote disaster data recovery system and method
US20070245228A9 (en) * 2003-04-10 2007-10-18 Andre Lavoie Financial document change identifier
US7454569B2 (en) 2003-06-25 2008-11-18 Commvault Systems, Inc. Hierarchical system and method for performing storage operations in a computer network
US7031972B2 (en) * 2003-07-21 2006-04-18 Innopath Software, Inc. Algorithms for block-level code alignment of software binary files
US20050020308A1 (en) * 2003-07-23 2005-01-27 David Lai Dynamically binding Subscriber Identity Modules (SIMs)/User Identity Modules (UIMs) with portable communication devices
US7873602B2 (en) * 2003-09-03 2011-01-18 International Business Machines Corporation Apparatus and method for maintaining databases on application servers
US7539631B1 (en) * 2003-10-06 2009-05-26 Microsoft Corporation Method, system and program for providing subscription-based virtual computing services
CN1973262B (zh) * 2003-10-23 2012-08-22 创道软件有限公司 使用集中动态寻址(da)管理器的动态寻址
US7546324B2 (en) 2003-11-13 2009-06-09 Commvault Systems, Inc. Systems and methods for performing storage operations using network attached storage
JP4576130B2 (ja) * 2004-02-12 2010-11-04 パイオニア株式会社 通信系アプリケーションプログラムのバージョン更新方法及びそのプログラム
US8886617B2 (en) 2004-02-20 2014-11-11 Informatica Corporation Query-based searching using a virtual table
US7243110B2 (en) * 2004-02-20 2007-07-10 Sand Technology Inc. Searchable archive
US7814056B2 (en) * 2004-05-21 2010-10-12 Computer Associates Think, Inc. Method and apparatus for data backup using data blocks
DE602005008240D1 (de) * 2004-05-21 2008-08-28 Computer Ass Think Inc Verfahren und vorrichtung zur speicherungs-sicherung
JP2006059319A (ja) * 2004-07-21 2006-03-02 Ricoh Co Ltd 情報処理装置、プログラムおよび記憶媒体
US7392423B2 (en) * 2004-08-13 2008-06-24 Microsoft Corporation Combined computer backup, disaster recovery and migration in a shared environment
US7516451B2 (en) 2004-08-31 2009-04-07 Innopath Software, Inc. Maintaining mobile device electronic files including using difference files when upgrading
US7818608B2 (en) * 2005-02-18 2010-10-19 Microsoft Corporation System and method for using a file system to automatically backup a file as a generational file
US7702661B2 (en) * 2005-03-02 2010-04-20 Computer Associates Think, Inc. Managing checked out files in a source control repository
US8306952B2 (en) * 2005-03-29 2012-11-06 Sap Ag Technique for managing messages
US9692725B2 (en) 2005-05-26 2017-06-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US9407608B2 (en) 2005-05-26 2016-08-02 Citrix Systems, Inc. Systems and methods for enhanced client side policy
US9621666B2 (en) 2005-05-26 2017-04-11 Citrix Systems, Inc. Systems and methods for enhanced delta compression
US7756826B2 (en) * 2006-06-30 2010-07-13 Citrix Systems, Inc. Method and systems for efficient delivery of previously stored content
US8943304B2 (en) 2006-08-03 2015-01-27 Citrix Systems, Inc. Systems and methods for using an HTTP-aware client agent
US20070027935A1 (en) * 2005-07-28 2007-02-01 Haselton William R Backing up source files in their native file formats to a target storage
US20070027936A1 (en) * 2005-07-28 2007-02-01 Stakutis Christopher J Determining changes made to a source file to transmit to a target location providing a mirror copy of the source file
JP4804836B2 (ja) * 2005-08-31 2011-11-02 三菱電機株式会社 データ生成装置及びデータ生成プログラム
US7644313B2 (en) 2006-02-14 2010-01-05 International Business Machines Corporation Method, apparatus and program product for a point-in-time recovery of a computing system
JP4577242B2 (ja) * 2006-03-10 2010-11-10 日本電気株式会社 データバックアップシステム、データバックアップ方法、及びその動作制御プログラム
US20070214198A1 (en) * 2006-03-10 2007-09-13 Nathan Fontenot Allowing state restoration using differential backing objects
CN100437504C (zh) * 2006-04-06 2008-11-26 英业达股份有限公司 硬盘数据备份系统及方法
KR101381551B1 (ko) 2006-05-05 2014-04-11 하이버 인크 그룹 기반의 완료 및 증분 컴퓨터 파일 백업 시스템, 프로세스 및 장치
US7882064B2 (en) * 2006-07-06 2011-02-01 Emc Corporation File system replication
US7853566B2 (en) 2006-08-04 2010-12-14 Apple Inc. Navigation of electronic backups
US8370853B2 (en) 2006-08-04 2013-02-05 Apple Inc. Event notification management
US9009115B2 (en) * 2006-08-04 2015-04-14 Apple Inc. Restoring electronic information
US7856424B2 (en) 2006-08-04 2010-12-21 Apple Inc. User interface for backup management
US8166415B2 (en) 2006-08-04 2012-04-24 Apple Inc. User interface for backup management
US7809687B2 (en) 2006-08-04 2010-10-05 Apple Inc. Searching a backup archive
US7809688B2 (en) 2006-08-04 2010-10-05 Apple Inc. Managing backup of content
US7860839B2 (en) 2006-08-04 2010-12-28 Apple Inc. Application-based backup-restore of electronic information
US7853567B2 (en) 2006-08-04 2010-12-14 Apple Inc. Conflict resolution in recovery of electronic data
US8311988B2 (en) 2006-08-04 2012-11-13 Apple Inc. Consistent back up of electronic information
DE112007002682T5 (de) * 2006-11-06 2009-10-15 Dell Marketing USA L.P., Round Rock Ein System und Verfahren zum Verwalten von Daten über mehrere Umgebungen
US8825684B2 (en) * 2006-11-30 2014-09-02 Koninklijke Philips N.V. Arrangement for comparing content identifiers of files
US7734669B2 (en) 2006-12-22 2010-06-08 Commvault Systems, Inc. Managing copies of data
WO2008084488A2 (en) * 2007-01-11 2008-07-17 Red Bend Ltd. Method and system for in-place updating content stored in a storage device
US20080307017A1 (en) 2007-06-08 2008-12-11 Apple Inc. Searching and Restoring of Backups
US8745523B2 (en) 2007-06-08 2014-06-03 Apple Inc. Deletion in electronic backups
EP2372553B1 (en) * 2007-06-08 2013-01-30 Apple Inc. Application-based backup-restore of electronic information
US8010900B2 (en) 2007-06-08 2011-08-30 Apple Inc. User interface for electronic backup
US8468136B2 (en) 2007-06-08 2013-06-18 Apple Inc. Efficient data backup
US8725965B2 (en) 2007-06-08 2014-05-13 Apple Inc. System setup for electronic backup
US8429425B2 (en) 2007-06-08 2013-04-23 Apple Inc. Electronic backup and restoration of encrypted data
US8307004B2 (en) 2007-06-08 2012-11-06 Apple Inc. Manipulating electronic backups
US8099392B2 (en) 2007-06-08 2012-01-17 Apple Inc. Electronic backup of applications
US20110069833A1 (en) * 2007-09-12 2011-03-24 Smith Micro Software, Inc. Efficient near-duplicate data identification and ordering via attribute weighting and learning
US8396838B2 (en) 2007-10-17 2013-03-12 Commvault Systems, Inc. Legal compliance, electronic discovery and electronic document handling of online and offline copies of data
US8407688B2 (en) * 2007-11-27 2013-03-26 Managelq, Inc. Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets
US8769048B2 (en) 2008-06-18 2014-07-01 Commvault Systems, Inc. Data protection scheduling, such as providing a flexible backup window in a data protection system
US8352954B2 (en) 2008-06-19 2013-01-08 Commvault Systems, Inc. Data storage resource allocation by employing dynamic methods and blacklisting resource request pools
US9128883B2 (en) 2008-06-19 2015-09-08 Commvault Systems, Inc Data storage resource allocation by performing abbreviated resource checks based on relative chances of failure of the data storage resources to determine whether data storage requests would fail
US8725688B2 (en) 2008-09-05 2014-05-13 Commvault Systems, Inc. Image level copy or restore, such as image level restore without knowledge of data object metadata
US20100070474A1 (en) * 2008-09-12 2010-03-18 Lad Kamleshkumar K Transferring or migrating portions of data objects, such as block-level data migration or chunk-based data migration
JP2010198155A (ja) * 2009-02-24 2010-09-09 Fujitsu Ten Ltd プログラム更新装置、プログラム更新方法、及び情報処理装置
US9390128B1 (en) * 2010-03-25 2016-07-12 Symantec Corporation Datastore for storing file access event data
US8735397B2 (en) * 2010-03-29 2014-05-27 Vanderbilt University Method for treating schizophrenia and related diseases
US8694468B1 (en) * 2010-06-09 2014-04-08 Symantec Corporation Systems and methods for performing backups
US8688645B2 (en) * 2010-11-30 2014-04-01 Netapp, Inc. Incremental restore of data between storage systems having dissimilar storage operating systems associated therewith
US8914403B2 (en) * 2011-01-13 2014-12-16 International Business Machines Corporation Scalable package management for virtual-machine images
US8943026B2 (en) 2011-01-14 2015-01-27 Apple Inc. Visual representation of a local backup
US8984029B2 (en) 2011-01-14 2015-03-17 Apple Inc. File system management
US9021198B1 (en) 2011-01-20 2015-04-28 Commvault Systems, Inc. System and method for sharing SAN storage
US8495019B2 (en) 2011-03-08 2013-07-23 Ca, Inc. System and method for providing assured recovery and replication
US8849762B2 (en) 2011-03-31 2014-09-30 Commvault Systems, Inc. Restoring computing environments, such as autorecovery of file systems at certain points in time
US8914784B2 (en) * 2011-06-10 2014-12-16 International Business Machines Corporation Method and system for checking the consistency of application jar files
US8893147B2 (en) 2012-01-13 2014-11-18 Ca, Inc. Providing a virtualized replication and high availability environment including a replication and high availability engine
CN103324643B (zh) * 2012-03-23 2017-02-08 联想(北京)有限公司 终端设备以及文件创建或修改方法
US10157184B2 (en) 2012-03-30 2018-12-18 Commvault Systems, Inc. Data previewing before recalling large data files
US9633216B2 (en) 2012-12-27 2017-04-25 Commvault Systems, Inc. Application of information management policies based on operation with a geographic entity
US9459968B2 (en) 2013-03-11 2016-10-04 Commvault Systems, Inc. Single index to query multiple backup formats
US10169121B2 (en) 2014-02-27 2019-01-01 Commvault Systems, Inc. Work flow management for an information management system
US9648100B2 (en) 2014-03-05 2017-05-09 Commvault Systems, Inc. Cross-system storage management for transferring data across autonomous information management systems
US9886490B1 (en) * 2014-03-17 2018-02-06 Numerify, Inc. Common extract store
US9823978B2 (en) 2014-04-16 2017-11-21 Commvault Systems, Inc. User-level quota management of data objects stored in information management systems
US9740574B2 (en) 2014-05-09 2017-08-22 Commvault Systems, Inc. Load balancing across multiple data paths
IL233775A (en) * 2014-07-24 2017-07-31 Verint Systems Ltd A system and method for efficiently storing small files on file system-based storage devices
US9852026B2 (en) 2014-08-06 2017-12-26 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US11249858B2 (en) 2014-08-06 2022-02-15 Commvault Systems, Inc. Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host
US9444811B2 (en) 2014-10-21 2016-09-13 Commvault Systems, Inc. Using an enhanced data agent to restore backed up data across autonomous storage management systems
US9766825B2 (en) 2015-07-22 2017-09-19 Commvault Systems, Inc. Browse and restore for block-level backups
US10346237B1 (en) * 2015-08-28 2019-07-09 EMC IP Holding Company LLC System and method to predict reliability of backup software
US10296368B2 (en) 2016-03-09 2019-05-21 Commvault Systems, Inc. Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount)
US10838821B2 (en) 2017-02-08 2020-11-17 Commvault Systems, Inc. Migrating content and metadata from a backup system
US10740193B2 (en) 2017-02-27 2020-08-11 Commvault Systems, Inc. Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount
US10891069B2 (en) 2017-03-27 2021-01-12 Commvault Systems, Inc. Creating local copies of data stored in online data repositories
US10776329B2 (en) 2017-03-28 2020-09-15 Commvault Systems, Inc. Migration of a database management system to cloud storage
US11074140B2 (en) 2017-03-29 2021-07-27 Commvault Systems, Inc. Live browsing of granular mailbox data
US10664352B2 (en) 2017-06-14 2020-05-26 Commvault Systems, Inc. Live browsing of backed up data residing on cloned disks
US10795927B2 (en) 2018-02-05 2020-10-06 Commvault Systems, Inc. On-demand metadata extraction of clinical image data
US10761942B2 (en) 2018-03-12 2020-09-01 Commvault Systems, Inc. Recovery point objective (RPO) driven backup scheduling in a data storage management system using an enhanced data agent
US10789387B2 (en) 2018-03-13 2020-09-29 Commvault Systems, Inc. Graphical representation of an information management system
US11556326B2 (en) * 2018-09-06 2023-01-17 Arm Limited Methods for performing a rollback-capable software update at a device
US10860443B2 (en) 2018-12-10 2020-12-08 Commvault Systems, Inc. Evaluation and reporting of recovery readiness in a data storage management system
CN109840087B (zh) * 2018-12-29 2020-12-25 北京三快在线科技有限公司 界面设计系统及方法、计算机可读存储介质
US11308034B2 (en) 2019-06-27 2022-04-19 Commvault Systems, Inc. Continuously run log backup with minimal configuration and resource usage from the source machine

Family Cites Families (91)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4328580A (en) * 1979-07-06 1982-05-04 Soundstream, Inc. Apparatus and an improved method for processing of digital information
DE3407920A1 (de) * 1984-03-03 1985-09-05 Robert Bosch Gmbh, 7000 Stuttgart Elektronisches steuersystem zur steuerung technischer anlagen und maschinen und steuerverfahren unter dessen verwendung
US4858131A (en) * 1986-08-29 1989-08-15 Fujitsu Limited Clutch target position control system
EP0268139A3 (en) 1986-11-05 1991-04-10 International Business Machines Corporation Manipulating rights-to-execute in connection with a software copy protection mechanism
EP0314250A3 (en) 1987-10-30 1992-03-04 New Microtime Inc. Video digital analog signal processing and display
US5384912A (en) * 1987-10-30 1995-01-24 New Microtime Inc. Real time video image processing system
US5454099A (en) 1989-07-25 1995-09-26 International Business Machines Corporation CPU implemented method for backing up modified data sets in non-volatile store for recovery in the event of CPU failure
US5133065A (en) * 1989-07-27 1992-07-21 Personal Computer Peripherals Corporation Backup computer program for networks
US5163148A (en) * 1989-08-11 1992-11-10 Digital Equipment Corporation File backup system for producing a backup copy of a file which may be updated during backup
AU645757B2 (en) * 1989-08-17 1994-01-27 Fujitsu Limited A system to pass through resource information
US5479654A (en) 1990-04-26 1995-12-26 Squibb Data Systems, Inc. Apparatus and method for reconstructing a file from a difference signature and an original file
JP2915977B2 (ja) * 1990-09-07 1999-07-05 株式会社ゼクセル 車両制御装置用センサのバックアップ装置
US5544347A (en) * 1990-09-24 1996-08-06 Emc Corporation Data storage system controlled remote data mirroring with respectively maintained data indices
US5355449A (en) * 1991-09-30 1994-10-11 Destiny Technology Corporation Method and apparatus for outline font character generation in dot matrix devices
US5263154A (en) * 1992-04-20 1993-11-16 International Business Machines Corporation Method and system for incremental time zero backup copying of data
JPH0827754B2 (ja) * 1992-05-21 1996-03-21 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータシステムにおけるファイル管理方法及びファイル管理システム
JP3309437B2 (ja) * 1992-08-19 2002-07-29 株式会社デンソー 車両の自己診断装置
EP0593062A3 (en) * 1992-10-16 1995-08-30 Siemens Ind Automation Inc Redundant networked database system
CA2148464A1 (en) 1992-11-05 1994-05-11 Warren Marwood Data formatter
US5426774A (en) * 1993-04-06 1995-06-20 Honeywell Inc. Method for maintaining a sequence of events function during failover in a redundant multiple layer system
EP0706686B1 (en) * 1993-07-01 1998-10-14 Legent Corporation System and method for distributed storage management on networked computer systems
ES2137789T3 (es) * 1993-07-19 1999-12-16 Cheyenne Advanced Tech Ltd Sistema de copia de seguridad de ficheros.
US5675725A (en) 1993-07-19 1997-10-07 Cheyenne Advanced Technology Limited Computer backup system operable with open files
WO1995019599A1 (en) 1994-07-20 1995-07-20 Intelligence Quotient International Limited File backup system
JP2888100B2 (ja) * 1993-08-06 1999-05-10 富士通株式会社 データ伝送系のバックアップ試験方式
JP3260923B2 (ja) * 1993-09-20 2002-02-25 富士通株式会社 データ処理システムのバックアップ制御装置及び方法
JPH07110783A (ja) 1993-10-12 1995-04-25 Matsushita Electric Ind Co Ltd ファイルシステム管理方法
US5584024A (en) * 1994-03-24 1996-12-10 Software Ag Interactive database query system and method for prohibiting the selection of semantically incorrect query parameters
US5664231A (en) * 1994-04-29 1997-09-02 Tps Electronics PCMCIA interface card for coupling input devices such as barcode scanning engines to personal digital assistants and palmtop computers
US5806078A (en) * 1994-06-09 1998-09-08 Softool Corporation Version management system
US5566297A (en) * 1994-06-16 1996-10-15 International Business Machines Corporation Non-disruptive recovery from file server failure in a highly available file system for clustered computing environments
JPH0869404A (ja) * 1994-08-29 1996-03-12 Fujitsu Ltd データのバックアップ方法及びそれを利用したデータ処理装置
US5799147A (en) * 1994-10-19 1998-08-25 Shannon; John P. Computer recovery backup method
US5574906A (en) * 1994-10-24 1996-11-12 International Business Machines Corporation System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing
US5634052A (en) * 1994-10-24 1997-05-27 International Business Machines Corporation System for reducing storage requirements and transmission loads in a backup subsystem in client-server environment by transmitting only delta files from client to server
US5659614A (en) * 1994-11-28 1997-08-19 Bailey, Iii; John E. Method and system for creating and storing a backup copy of file data stored on a computer
JP3856855B2 (ja) * 1995-10-06 2006-12-13 三菱電機株式会社 差分バックアップ方式
US5819020A (en) * 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
US5778165A (en) * 1995-10-20 1998-07-07 Digital Equipment Corporation Variable-level backup scheduling method and apparatus
US5778395A (en) * 1995-10-23 1998-07-07 Stac, Inc. System for backing up files from disk volumes on multiple nodes of a computer network
US5860071A (en) * 1997-02-07 1999-01-12 At&T Corp Querying and navigating changes in web repositories
US6366933B1 (en) 1995-10-27 2002-04-02 At&T Corp. Method and apparatus for tracking and viewing changes on the web
US5765173A (en) * 1996-01-11 1998-06-09 Connected Corporation High performance backup via selective file saving which can perform incremental backups and exclude files and uses a changed block signature list
US5859971A (en) * 1996-02-15 1999-01-12 International Business Machines Corp. Differencing client/server communication system for use with CGI forms
JP2001508561A (ja) 1996-02-23 2001-06-26 テイ・ティ・アンド・ティ・コーポレーション ウェブリポジトリの変更の問い合わせとナビゲーション
US5905866A (en) * 1996-04-30 1999-05-18 A.I. Soft Corporation Data-update monitoring in communications network
US5901327A (en) * 1996-05-28 1999-05-04 Emc Corporation Bundling of write data from channel commands in a command chain for transmission over a data link between data storage systems for remote data mirroring
US6101497A (en) * 1996-05-31 2000-08-08 Emc Corporation Method and apparatus for independent and simultaneous access to a common data set
US6092066A (en) * 1996-05-31 2000-07-18 Emc Corporation Method and apparatus for independent operation of a remote data facility
JPH09323805A (ja) 1996-06-10 1997-12-16 Kumahira Safe Co Inc 自動格納装置における出庫情報管理方法
JPH1021250A (ja) 1996-06-14 1998-01-23 Infoseek Corp 複数個のデータベースを探索する方法および複数個のデータベース間で文献を探索する方法
US5832520A (en) * 1996-07-03 1998-11-03 Miller, Call, Plauck And Miller Automatic file differencing and updating system
US5931904A (en) 1996-10-11 1999-08-03 At&T Corp. Method for reducing the delay between the time a data page is requested and the time the data page is displayed
JPH10171694A (ja) 1996-12-13 1998-06-26 Hitachi Ltd データバックアップ方法およびデータバックアップ装置ならびに情報記録媒体
US6374250B2 (en) * 1997-02-03 2002-04-16 International Business Machines Corporation System and method for differential compression of data from a plurality of binary sources
US5875290A (en) * 1997-03-27 1999-02-23 International Business Machines Corporation Method and program product for synchronizing operator initiated commands with a failover process in a distributed processing system
US6073209A (en) * 1997-03-31 2000-06-06 Ark Research Corporation Data storage controller providing multiple hosts with access to multiple storage subsystems
AU8457698A (en) * 1997-07-29 1999-03-08 Telebackup Systems, Inc. Method and system for nonredundant backup of identical files stored on remote computers
EP0899662A1 (en) * 1997-08-29 1999-03-03 Hewlett-Packard Company Backup and restore system for a computer network
WO1999012098A1 (en) 1997-08-29 1999-03-11 Hewlett-Packard Company Data backup and recovery systems
US6016553A (en) 1997-09-05 2000-01-18 Wild File, Inc. Method, software and apparatus for saving, using and recovering data
US6014669A (en) * 1997-10-01 2000-01-11 Sun Microsystems, Inc. Highly-available distributed cluster configuration database
JP3534596B2 (ja) 1997-12-05 2004-06-07 富士通株式会社 インテリジェントネットワーク内のデータベースの同期方法と装置
JPH11212875A (ja) 1998-01-21 1999-08-06 Hitachi Ltd 記憶装置サブシステムおよび記録データの差分バックアップ方法
US6088694A (en) * 1998-03-31 2000-07-11 International Business Machines Corporation Continuous availability and efficient backup for externally referenced objects
WO1999057658A1 (en) 1998-05-01 1999-11-11 Information Advantage System and method for updating a multi-dimensional database
JP3159174B2 (ja) 1998-06-19 2001-04-23 日本電気株式会社 プリンタ制御装置
US6233589B1 (en) * 1998-07-31 2001-05-15 Novell, Inc. Method and system for reflecting differences between two files
US6260124B1 (en) * 1998-08-13 2001-07-10 International Business Machines Corporation System and method for dynamically resynchronizing backup data
GB2341249A (en) * 1998-08-17 2000-03-08 Connected Place Limited A method of generating a difference file defining differences between an updated file and a base file
US6687222B1 (en) * 1999-07-02 2004-02-03 Cisco Technology, Inc. Backup service managers for providing reliable network services in a distributed environment
US6513052B1 (en) * 1999-12-15 2003-01-28 Imation Corp. Targeted advertising over global computer networks
CA2398838A1 (en) 2000-03-01 2001-09-07 Computer Associates Think, Inc. Method and system for updating an archive of a computer file
US6526419B1 (en) * 2000-06-09 2003-02-25 International Business Machines Corporation Method, system, and program for remote copy in an open systems environment
US6711572B2 (en) * 2000-06-14 2004-03-23 Xosoft Inc. File system for distributing content in a data network and related methods
US6950871B1 (en) * 2000-06-29 2005-09-27 Hitachi, Ltd. Computer system having a storage area network and method of handling data in the computer system
US6622259B1 (en) * 2000-07-14 2003-09-16 International Business Machines Corporation Non-disruptive migration of coordinator services in a distributed computer system
US20020178360A1 (en) * 2001-02-25 2002-11-28 Storymail, Inc. System and method for communicating a secure unidirectional response message
US7085860B2 (en) * 2002-01-11 2006-08-01 International Business Machines Corporation Method and apparatus for a non-disruptive recovery of a single partition in a multipartitioned data processing system
US7043485B2 (en) * 2002-03-19 2006-05-09 Network Appliance, Inc. System and method for storage of snapshot metadata in a remote file
US7120827B2 (en) * 2002-05-07 2006-10-10 Hitachi Ltd. System and method of volume health checking and recovery
US7620040B2 (en) * 2002-12-11 2009-11-17 Aspen Networks, Inc. Application non disruptive task migration in a network edge switch
US6959369B1 (en) * 2003-03-06 2005-10-25 International Business Machines Corporation Method, system, and program for data backup
US7899885B2 (en) * 2003-06-27 2011-03-01 At&T Intellectual Property I, Lp Business enterprise backup and recovery system and method
US7555504B2 (en) * 2003-09-23 2009-06-30 Emc Corporation Maintenance of a file version set including read-only and read-write snapshot copies of a production file
US7152183B2 (en) * 2003-11-20 2006-12-19 Hitachi, Ltd. Method and apparatus for volume replication management at planned and unplanned link down
US7058731B2 (en) * 2004-08-03 2006-06-06 Hitachi, Ltd. Failover and data migration using data replication
US7139782B2 (en) * 2004-09-21 2006-11-21 Hitachi, Ltd. Method of and system for testing remote storage
US7373433B2 (en) * 2004-10-22 2008-05-13 International Business Machines Corporation Apparatus and method to provide failover protection in an information storage and retrieval system
US7840535B2 (en) * 2004-11-05 2010-11-23 Computer Associates Think, Inc. Replicated data validation
US7433902B2 (en) * 2005-11-15 2008-10-07 International Business Machines Corporation Non-disruptive backup copy in a database online reorganization environment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675795B1 (ko) * 2004-11-05 2007-02-02 삼성전자주식회사 양문형 냉장고 및 양문형 냉장고의 도어 개방 방법

Also Published As

Publication number Publication date
JP2003525495A (ja) 2003-08-26
CN1408084A (zh) 2003-04-02
DE60115607D1 (de) 2006-01-12
ATE312378T1 (de) 2005-12-15
US20110010345A1 (en) 2011-01-13
EP1259883A2 (en) 2002-11-27
ZA200205984B (en) 2005-04-05
CN1209708C (zh) 2005-07-06
AU2001241956B2 (en) 2006-11-30
WO2001065371A2 (en) 2001-09-07
AU4195601A (en) 2001-09-12
IL151091A0 (en) 2003-04-10
WO2001065371A3 (en) 2002-04-18
BR0108797A (pt) 2003-02-18
US8019730B2 (en) 2011-09-13
US8019731B2 (en) 2011-09-13
EP1259883B1 (en) 2005-12-07
US20040220980A1 (en) 2004-11-04
US20100174685A1 (en) 2010-07-08
CA2398838A1 (en) 2001-09-07
US7730031B2 (en) 2010-06-01

Similar Documents

Publication Publication Date Title
KR20020097192A (ko) 컴퓨터 파일의 아카이브 갱신 방법 및 시스템
AU2001241956A1 (en) Method and system for updating an archive of a computer file
US20200293693A1 (en) Group based complete and incremental computer file backup system, process and apparatus
US9207872B2 (en) Remote office duplication
US9344112B2 (en) Sampling based elimination of duplicate data
US7546321B2 (en) System and method for recovery from failure of a storage server in a distributed column chunk data store
US20030225972A1 (en) Storage system
EP2454670B1 (en) Operating system restoration using remote backup system and local system restore function
US7200603B1 (en) In a data storage server, for each subsets which does not contain compressed data after the compression, a predetermined value is stored in the corresponding entry of the corresponding compression group to indicate that corresponding data is compressed
US20100049726A1 (en) System and method for compression of partially ordered data sets
US11455100B2 (en) Handling data slice revisions in a dispersed storage network
US10929228B2 (en) Overwriting data objects in a dispersed storage network
US20050131958A1 (en) Computer backups using un-used disk space
US10942665B2 (en) Efficient move and copy

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