KR20100096075A - 로컬 플래시 메모리 및 원격 서버 하이브리드 연속 데이터 보호 - Google Patents

로컬 플래시 메모리 및 원격 서버 하이브리드 연속 데이터 보호 Download PDF

Info

Publication number
KR20100096075A
KR20100096075A KR1020107010048A KR20107010048A KR20100096075A KR 20100096075 A KR20100096075 A KR 20100096075A KR 1020107010048 A KR1020107010048 A KR 1020107010048A KR 20107010048 A KR20107010048 A KR 20107010048A KR 20100096075 A KR20100096075 A KR 20100096075A
Authority
KR
South Korea
Prior art keywords
data
cdp
flash memory
remote server
local
Prior art date
Application number
KR1020107010048A
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 KR20100096075A publication Critical patent/KR20100096075A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 최근에 수정된 데이터에 대한 백업 복사본을 보관시키기 위해 플래시 메모리를 사용하는 한 방법을 제공한다. 최근에 수정된 데이터는 로컬 하드 드라이브에 저장되고 네트워크 연결이 존재하지 않거나 충분하지 않을 때 로컬 플래시 드라이브에 (일반적으로는 버전과 함께)복제된다. 네트워크 연결이 수립되자 마자, 누적된 데이터는 원격 CDP 서버에 전송되고 플래시 드라이브의 전체 공간은 다시 재사용될 수 있다. 그 결과, 데이터는 언제나 복제되는데, 하나의 데이터 복사본이 하드 드라이브에 저장되고 다른 데이터 복사본이 (일반적으로는 버전과 함께) 원격 서버 또는 로컬 플래시 드라이브에 저장된다. 그러므로, CDP 서버와 플래시 드라이브상의 데이터의 조합은 하드 드라이브에 저장된 데이터를 복원하는 데에 사용될 수 있다.

Description

로컬 플래시 메모리 및 원격 서버 하이브리드 연속 데이터 보호{LOCAL FLASH MEMORY AND REMOTE SERVER HYBRID CONTINUOUS DATA PROTECTION}
본 발명은 일반적으로 연속 데이터 보호에 관한 것으로, 더욱 상세히는, 본 발명은 연속 데이터 보호를 위해 로컬 플래시 메모리 및 원격 서버를 이용하는 시스템 및 방법을 제공한다.
하드 디스크는 깨지기 쉽고, 제한된 수명을 가지고 있으며, 그 기능 오류는 저장되어 있는 귀중한 데이터를 액세스할 수 없게 만든다. 대부분의 기존의 백업 솔루션들은 주기적으로 데이터 복사본을 생성하여, 최근에 생성되거나 수정된 데이터를 다음번 백업 시간까지 보호되지 않은 상태에 둔다. 연속 데이터 보호(CDP;Continuous Data Protection) 시스템(예를 들어 Tivoli® CDP)은 데이터가 디스크에 저장될 때마다 데이터에 대해 원격지 복사본을 생성함으로써 상기와 같은 문제점을 해결하려 한다. 연속 데이터 보호(CDP)는 또한 연속 백업으로도 지칭되는데, 컴퓨터 데이터에 대해 행해진 모든 수정에 대한 복사본을 자동적으로 저장함으로써 생긴, 본질적으로 사용자가 저장하는 모든 데이터 버전을 캡춰하는, 그 데이터에 대한 백업을 일컫는다. 이는 사용자 또는 관리자가 데이터를 임의의 시점에 복구하는 것을 허용한다. CDP는 데이터에 대한 수정내용을 별개의 저장 위치에 캡춰하는 서비스이다. 상이한 요구에 대해 충족시키는 서비스를 제공하는 상이한 기술들을 수반하는 연속하는 수정내용들을 캡춰하기 위한 다수의 방법들이 있다. CDP 기반 솔루션들은 충돌시점의 이미지와 일치하는(crash-consistent) 이미지들로부터 파일, 메일함, 메시지 및 데이터베이스 파일 및 로그와 같은 논리적 객체에 이르는 복구가능한 객체에 대해 미세한 조정을 제공할 수 있다. 파일에 대한 IBM사의 Tivoli® CDP(IBM's Tivoli® Continuous Data Protection for Files)는 데이터가 손상, 사용자 오류, 바이러스 또는 시스템 고장의 경우에 완전한 데이터 보호를 제공하는 통합적인 복구 솔루션이다. 이것은 분 단위로 설치하고 구성하며, 배후에서 보이지 않게 실행한다. 파일에 대한 IBM's Tivoli® CDP에 대한 더 많은 정보에 대해선, http://www-306.ibm.com/software/tivoli/resource-center/storage/cdp.jsp?S_TACT=104CB62&ca=104CB627를 참조하시오. 불행히도, 기존의 CDP 시스템은 백업 복사본을 원격 서버에 생성하고 네트워크 연결이 가능하지 않을 땐 그 데이터를 보호하지 않는데, 이는 모바일 사용자에겐 흔한 경우이다. 일부 CDP 시스템은(예를 들어, Sonic WALL® CDP, Sonic WALL® CDP에 대한 더 많은 정보에 관해선, http://www.sonicwall.com/us/backup_and_recovery.html을 참조하시오) 데이터를 여분의 로컬 하드 드라이브에 복제한다. 불행히도, 이러한 옵션도 모바일 사용자에겐 불편한 것인데 이는 로컬 하드 드라이브가 부피가 크고 배터리에서 추가 전력을 소모하기 때문이다.
플래시 메모리는 더욱 값싸게 되고, 더욱 커지고 더욱 고속이 되었다. (플래시 메모리는 전기적으로 소거되고 재프로그래밍될 수 있는 비휘발성 컴퓨터 메모리이다). 이것은 컴퓨터와 기타 디지털 제품간에 데이터의 일반적인 저장 및 전송을 위한 USB 플래시 드라이브(썸 드라이브, 핸디 드라이브, 메모리 스틱, 플래시 스틱, 점프 드라이브), 및 메모리 카드에 주로 사용되는 기술이다. 그것은 또한 큰 블록으로 소거 및 프로그래밍되는 EEPROM의 특별한 유형이다. 초기 플래시에선 전체 칩이 한번에 소거되어야만 했었다. 플래시 메모리는 바이트 단위로 프로그램가능한 EEPROM 보단 비용이 훨씬 덜 들고 따라서 매우 많은 양의 비휘발성의 고체상태 저장이 필요로 될 때마다 지배적인 기술이 되어왔다. (플래시 메모리에 대한 더 많은 정보에 대해선, http://electronios.howstuffworks.com/flash-memory.htm를 참조하시오) 그 결과, 이 기술은 이제 제거가능한 드라이브를 목적으로 하는 것이 아닌 다른 목적에 사용된다. 하이브리드 드라이브는 최근의 기록 내용이 디스크 플래터에 저장되기 전에 최근의 기록 내용을 저장하는 플래시 메모리를 포함한다. 하이브리드 하드 드라이브(HHD; Hybrid Hard Drive)라고도 알려진 하이브리드 드라이브는 대형의 버퍼 유형의 컴퓨터 하드 디스크 드라이브이다. 이것은 정상적인 사용 동안 데이터를 캐시에 저장하기 위해 대형 버퍼(최대 1GB)의 비휘발성 플래시 메모리를 채용한다는 점에서 표준 하드 드라이브와는 상이하다. 비휘발성 데이터 저장을 위해 이러한 대형 버퍼를 주로 사용함으로써, 하드 드라이브의 플래터는, 현재 하드 드라이브에서와 같이 계속해서 회전하는 대신에 거의 대부분의 시간에 쉬고 있다. 이것은, 여러 이점 중에서도 속도, 감소된 전력 소비, 개선된 신뢰성 및 고속 부팅 프로세스 등의 여러 이점을 제공한다. HHD에 대한 더 많은 정보에 대해선, http://www.engadget.com/tag/hhd를 참조하시오. 그러나, 하이브리드 드라이브는 CDP를 제공하진 않는데 이는, (1)데이터가 디스크에 저장되기 전에 플래시 메모리에 단지 저장되고 그리고 (2) 플래시 메모리 내의 데이터는 저장 직후 덮어쓰기될 수 있기 때문이다. 그러나, 플래시 메모리는 여러 이점들을 제공하는데, (1) 하이브리드 드라이브는 기록된 일부 데이터를 플래시 메모리에 저장할 수 있고 따라서 하드 디스크의 플래터가 회전하지 않고 있으면 이 드라이브의 하드 디스크의 스핀 업 동작을 연기시킬 수 있기 때문에 전력을 절약할 수 있고; 그리고 (2) 플래시 메모리는 일정하고 작은 데이터 액세스 시간을 갖는다는 이점을 제공한다. 그러므로, 하이브리드 디스크 및 Windows® Vista의 ReadyBoost는 성능 개선에 대한 무작위적 판독 요구 기능을 제공하기 위해 플래시 메모리를 사용한다. (ReadyBoost는 마이크로소프트사의 윈도우즈 비스타 운영 체제에 맨 처음 포함된 디스크 캐싱 기술이다. 이것은, 시스템 성능을 향상시키기 위해, USB 2.0 드라이브 상에서 플래시 메모리를, SD 카드, CompactFlash, 또는 기타 형태의 플래시 메모리를 사용하는 것에 의해, 컴퓨터로 하여금 윈도우즈 비스타를 더욱 응답성이 양호하게 실행시키는 것을 목적으로 한다.)
그러므로, 관련 기술의 결점의 적어도 하나를 해결하는 솔루션이 필요로 된다.
일반적으로, 본 발명은 최근에 수정된 데이터에 대한 백업 복사본을 보관시키기 위해 플래시 메모리(USB 썸 드라이브와 같은)를 사용하는 한 방법을 제공한다. 최근에 수정된 데이터는 로컬 하드 드라이브에 저장되고 네트워크 연결이 존재하지 않거나 충분하지 않을 때 로컬 플래시 드라이브에 (일반적으로는 버전과 함께)복제된다. 네트워크 연결이 수립되자마자, 누적된 데이터는 원격 CDP 서버에 전송되고 플래시 드라이브의 전체 공간은 다시 재사용될 수 있다. 그 결과, 데이터는 언제나 복제되는데, 하나의 데이터 복사본이 하드 드라이브에 저장되고 다른 데이터 복사본이 (버전과 함께) 원격 서버 또는 로컬 플래시 드라이브에 저장된다. 그러므로, CDP 서버와 플래시 드라이브상의 데이터의 조합은 하드 드라이브에 저장된 데이터를 복원하는 데에 사용될 수 있다.
본 발명은 다음과 같은 이점을 제공한다.
1. CDP는 네트워크 연결이 되어있지 않을 때에도 항상 가능하다.
2. 모바일 사용자에겐 중요한 사항인, 추가 전력 소비가 무시할 수 있을 정도이다.
3. 플래시 드라이브가 제거될 수 있고 백업 시스템과는 별개로 편리한 곳에(예로서, 포켓에) 저장될 수 있다. 이러한 방식으로, 메인 시스템 및 이 시스템의 저장장치가 분실되거나 파괴되는 경우에도, 플래시 드라이브는 원격 CDP 서버에 저장되지 않은 데이터를 여전히 포함한다.
4. 기존의 그리고 미래의 플래시 드라이브가 기존의 시스템에 추가될 수 있고 용이하게 업그레이드될 수 있다.
5. 동일한 플래시 드라이브와 동일한 소프트웨어 패키지가 잠재적으로 디스크 전력을 보존하고 (하이브리드 드라이브와 마찬가지로) 랜덤 액세스 성능을 개선시키는 데에 동시에 사용될 수 있다.
본 발명은 또한 관련 방법 및/또는 프로그램 제품도 제공한다. 그러한 방법 및 프로그램 제품은 연속 데이터 보호를 위해 원격 서버 및 로컬 플래시 메모리를 이용할 것이다.
본 발명에 따르면, 연속 데이터 보호를 위해 로컬 플래시 메모리 및 원격 서버를 이용하는 시스템 및 방법을 제공할 수 있다.
도 1A는 본 발명에 따른 스택커블 파일 시스템을 기반으로 한 가능한 구현예를 도시한다.
도 1B는 본 발명이 구현될 수 있는 예시적인 네트워킹 구성을 도시한다.
도 2는 본 발명에 따른 CPD 클라이언트의 예시적인 구현을 도시한다.
도 3A는 본 발명의 방법의 예시적인 실시예를 도시한다.
도 3B는 도 3A에 예시된 본 발명의 방법의 시작에 이어지는, 이 방법의 구성을 도시한다.
본 발명의 상기한 특징 및 기타 특징은 첨부 도면과 연계하여 본 발명의 여러 양상에 대한 하기에 설명하는 발명의 상세한 설명에서 더욱 용이하게 이해될 것이다.
도면은 반드시 축척 비율에 따라 나타낼 필요는 없다. 도면은 단순히 개략적인 표현을 나타내는 것이고, 발명의 특정한 파라미터를 반영하는 것을 의도하진 않는다. 도면은 단지 발명의 대표적인 실시태양만을 묘사하는 것을 의도하므로 발명의 범위를 제한하는 것으로 이해되지 않아야 한다. 도면에서 유사하게 부여한 도면 참조부호는 유사한 구성요소를 나타낸다.
본 발명은 연속 데이터 보호를 위해 원격 서버 하이브리드일 수는 있지만 반드시 원격 서버 하이브리드이어야 할 필요가 있는 것은 아닌, 원격 서버와 로컬 플래시 메모리를 이용하기 위한 방법을 제공한다.
본 발명은 임의의 3개의 논리 레벨들인 (1) 디바이스, (2) 블록 드라이버, 및 (3) 파일 시스템에서 구현될 수 있다. 본 발명이 하이브리드 드라이브를 사용하는 경우에, 하이브리드 드라이브는 가장 최근에 기록된 데이터 블록 및 데이터 버전의 백업 복사본을 보관하도록 하이브리드 드라이브의 플래시 메모리를 사용하기 위해 수정될 수 있다. 또다시, 본 발명은 원격 서버 하이브리드의 사용을 필요로 하는 것은 아니지만 요망되는 경우엔 원격 서버 하이브리드를 사용할 수 있다는 것을 강조한다. 데이터 버퍼를 원격 서버에 보내기 위해선, 하이브리드 드라이브는 특수한 블록 드라이버로부터의 지원을 필요로 할 수 있다. 완전한 블록 드라이버 레벨 솔루션은 서버(도 1B의 CDP 서버(104B))와 통신하기 위해 사용된 네트워크 프로토콜 구현(도 2의 246), 플래시 디스크 디바이스 드라이브(도 2의 244) 및 하드 디스크 드라이브(도 2의 242)와 상호작용하는 스택커블(stackable) 디바이스 드라이버로서 구현될 수 있다. 마찬가지로, 스택커블 파일 시스템(윈도우즈 상에서 필터 드라이버 파일 시스템으로도 알려짐)은 데이터를 원격 서버에 기록하기 위해 두 개의 디스크 기반 파일 시스템(하나는 하드 디스크를 위한 것이고 다른 하나는 플래시 드라이브를 위한 것임) 및 네트워크 파일 시스템을 사용할 수 있다. 드라이버 레벨 및 파일 시스템 레벨 솔루션 양자 모두는 플래시 드라이브(도 2의 240)가 하드 디스크 드라이브(도 2의 218)와 분리되어 있다는 이점을 갖는다. 이것은 임의의 기존의 하드 디스크(도 2의 218) 및 플래시 드라이브(도 2의 240)를 사용하는 것을 허용하고, 이들 모두를 독립적으로 업그레이드시키고, 생존가능성을 향상시키기 위해 사용되지 않을 때는 물리적으로 상이한 위치에 보관시키는 능력을 허용한다. 또한, 디바이스 레벨 구현은 하드웨어 변경을 필요로 하고 새로운 API가 수정된 드라이브와 통신할 것을 필요로 한다. 그러므로, 디바이스 레벨 구현은 본원에서 더 이상 고려되지 않는다.
스택커블 디바이스 및 파일 시스템 구현은 기록이 요구될 때마다 하기와 같이 동작한다. 도 3A에서 알 수 있는 바와 같이, 프로세스(300)는 단계(302)에서 시작하고, 단계(304)에서, 갱신된 데이터는 기록을 위해 로컬 하드 디스크에 보내진다. 단계(311)에서, 갱신된 데이터는 로컬 하드 드라이브에 저장되고 프로세스는 단계(322)에서 종료한다. 동시에, 단계(306)에서,네트워크 연결이 존재하는지의 여부가 결정된다. 만일 네트워크 연결이 존재하면, 단계(308)에서, 갱신된 데이터는 백업을 위해 서버에 전송되고 프로세스는 단계(322)에서 종료한다. 만일 네트워크 연결이 존재하지 않으면, 단계(310)에서, 갱신된 데이터는 로컬 플래시 드라이브 상에 저장된 기록에 대한 로그에 추가된다. 단계(312)에서, 플래시 드라이브가 꽉 차있는지의 여부가 결정된다. 플래시 드라이브가 꽉 차있지 않다면, 단계(313)에서 갱신된 데이터는 플래시 드라이브에 저장되고 프로세스는 도 3B의 A에서 계속된다. 플래시 드라이브가 꽉 차있다면, 단계(314)에서, 가장 최근 버전의 데이터가 플래시 드라이브에 저장되어 있는지의 여부가 결정된다. 가장 최근 버전의 데이터가 플래시 드라이브에 저장되어 있지 않으면, 단계(316)에서, 새로운 갱신 데이터의 내용이 이보다 먼저 상기 로그에 기록된 동일한 데이터 블록의 오래된 버전을 덮어쓰기하고 프로세스는 도 3B의 A에서 계속된다. 플래시 드라이브가 꽉 차있고 가장 최근 버전의 데이터만을 포함하고 있으면, 단계(318)에서, 사용자의 미래의 데이터가 백업되지 않을 것임을 지시하는 경고가 사용자에게 전송되고 프로세스는 도 3B의 A에서 계속된다. 이 시점에, 사용자는 작업을 중단하고, 로컬 DVD 매체에 백업을 개시하고, 이 플래시 드라이브를 여분의 플래시 드라이브로 대체하거나, 또는 하드 디스크 드라이브의 고장시 최근 데이터 갱신 내용의 일부를 손실할 수도 있는 위험을 무릅쓰고 작업을 계속할 수 있다. 다행히, 요즘의 플래시 메모리 드라이브는 기가바이트 정도의 데이터를 보관할 수 있고, 이는 마이크로소프트사의 파워포인트 프리젠테이션 파일 또는 마이크로소프트사의 워드 문서와 같은 파일 수 천 개를 충분히 보관할 수 있다. 그러므로, 대부분의 사용자들은 네트워크 연결 상태에 있는 두 간격 전에(이 시점에, 플래시 메모리 컨텐츠는 원격 서버에 복사됨) 플래시 메모리 로그 공간을 전부 사용하는 경우는 절대로 없을 것이다. 프로세스는 도 3B의 A에서 계속된다. 단계(320)에서, 네트워크 연결이 존재하는지의 여부가 결정되는데, 만일 존재하지 않으면, 프로세스는 존재해야 할 네트워크 연결을 계속 검사한다. 네트워크 연결이 존재한다면, 갱신된 데이터는 단계(324)에서, 백업을 위해 플래시 드라이브로부터 서버로 전송되고, 단계(326)에서, 갱신된 데이터는 플래시 드라이브로부터 삭제되고 프로세스는 단계(322)에서 종료한다.
한편, 스택커블 드라이버 레벨 구현은 파일 시스템 레벨 구현보다 더욱 양호한 맞춤화 및 최적화를 허용한다. 예를 들어, 스택커블 드라이버 레벨 구현은 플래시 드라이브에 대한 사용자 지정 로그 구현을 포함할 수 있다. 스택커블 파일 시스템 기반 구현에 대한 가능한 구현(100)이 도 1A에 도시되어 있다.
다른 한편, 스택커블 파일 시스템은 이미 개발되었거나 지원된 파일 시스템의 더욱 양호한 코드 재사용을 허용한다. 예를 들어, 스택커블 파일 시스템(108)은 플래시 드라이브(예를 들어, JFFS2)(106)에 대해 설계된 기존의 파일 시스템 (및 독립적으로 보관된 파일 시스템) 및 네트워크 파일 시스템(예를 들어, NFS 또는 CIFS)(104)를 사용할 수 있다. 저널링 플래시 파일 시스템 버전 2 또는 JFFS2는 플래시 메모리 디바이스에 사용하기 위한 로그 구조로 된 파일 시스템이다. 이것은 JFFS의 후계자이다. JFFS2는 2.4.10 릴리즈 이래로 리눅스 커널에 포함되어 있다. JFFS2는 또한 eCos RTOS 및 RedBoot 부트로더에도 이용가능하다. 네트워크 파일 시스템(NFS)은 최초에 선마이크로시스템즈사에 의해 1984년에 개발된 네트워크 파일 시스템 프로토콜이고, 클라이언트 컴퓨터상의 사용자는 네트워크 디바이스가 클라이언트 컴퓨터의 로컬 디스크에 부착되어 있었던 것처럼 쉽게 네트워크를 통해 파일을 액세스할 수 있게 한다. 공통 인터넷 파일 시스템(CIFS;Common Internet File System)은 파일, 프린터, 직렬 포트 및 네트워크상의 노드 간의 잡다한 통신에 대한 공유된 액세스에 주로 적용된 애플리케이션 레벨 네트워크 프로토콜이다. 이것은 또한 인증된 프로세스간 통신 매커니즘이다. 이것은 주로 마이크로소프트 윈도우즈가 탑재된 컴퓨터에 의해 주로 사용되는데, 단순히 “마이크로소프트 윈도우 네트워크"로 알려져 있다. 이것은 지원 및 개발에 대해 스택커블 파일 시스템을 간명하게 한다. 또한, 스택커블 파일 시스템은 파일 시스템이고 파일 위치 및 이름과 같은 메타 정보에 대한 액세스 권한을 갖는다. 이것은 스택커블 파일 시스템이 상이한 파일에 대해 상이한 백업 정책을 지원할 수 있게 한다. 따라서, 일부 파일이 더욱 중요할 수 있고 버전을 이용하여 백업될 수 있으며, 덜 중요한 파일은 버전에 의하지 않고 백업될 수 있고, 재생될 수 있는 파일들은 전혀 백업을 필요로 하지 않는다. 파일 시스템 구현에 대한 추가적인 이점은 상기 파일 시스템 페이지 캐시의 동작이다. 이것은 플래시 메모리로부터 원격 서버로의 데이터를 더욱 고속으로 전송할 수 있게 하는 데 이는 데이터의 적어도 일부가 페이지 캐시내에 캐싱되어 있는 것으로 예상되고 원격서버에 용이하게 전송될 수 있기 때문이다. 그러므로, 구현된 본 발명의 바람직한 실시예는 스택커블 파일 시스템이지만 또한 블록 레벨 구현의 파일 시스템일 수 있다.
본 발명의 바람직한 실시예에서, 스택커블 파일 시스템은 (1) 백업을 목적으로 표준 NFS 또는 CIFS 서버, 또는 (2) 특수화된 CDP 서버(예를 들어, Tivoli CDP에 의해 사용되는 것과 동일함)를 사용할 수 있다.
첫번째에 대한 경우에, 원격 파일 서버는 버저닝 파일 시스템(102)(예를 들어, ext3cow - Ext3cow 또는 기록시 복사(copy-on-write) 기능을 갖춘 제3 확장된 파일 시스템은 ext3 파일 시스템을 기반으로 한 개방 소스, 버저닝 파일 시스템이다. 버저닝은, ext3cow에게 그 이름으로서 “cow”를 부여하는, 블록 레벨 기록시 복사(copy-on-write) 기능을 통해 구현된다. ext3cow의 구현에 대한 상세한 사항은 데이터의 버저닝을 지원하는, http://hssl.cs.jhu.edu/papers/peterson-tos05.pdf에 있는 Ext3cow: A Time-Shifting File System for Regulatory Compliance에서 알 수 있다. 또한, 원격 클라이언트가 버저닝 파일 시스템으로부터 파일의 특정 버전들을 요구하는 것을 허용하는 특수 매커니즘을 구현하는 것도 필요하다. 또한 클라이언트 상에서 스택커블 버저닝 파일 시스템을 실행하는 것도 가능하다는 것을 유의해야 한다. 이 구현은 버저닝 파일 시스템이 임의의 수정없이 기존의 파일 서버(예를 들어 NFS 또는 CIFS 서버)(104)를 그러나 열악한 성능을 갖는 것으로 예상되는 서버를 사용하는 것을 허용한다.
두 번째의 경우에서, 네트워크 파일 시스템을 CDP서버와 통신하도록 설계할 필요가 있다.
상기 설명한 바와 같이, 도 1A 및 1B는 본 발명의 시스템의 바람직한 실시예의 구조를 나타낸다. 또한 클라이언트(데스크탑, 노트북, 서버)(도 2)로부터 설명을 시작한다. 도 1B에 도시된 바와 같이 CDP 시스템(100B)에서, CDP 클라이언트(102B)는 CDP 클라이언트(102B)가 예를 들어, 갱신된 데이터를 업로딩하기 위해 CDP 서버(104B)에 연결되도록 또는, 대안으로서, 개인 또는 공용 네트워크 중재를 통해 원격 프린터(프린터(112B)) 또는 저장 디바이스(저장장치((114B))에 연결될 수 있도록 네트워크(110B)에 연결된다. (컴퓨터 네트워크는 데이터, 자원 및 통신의 공유를 위한 목적으로 원격통신 시스템을 사용하여 함께 연결된 다수의 컴퓨터로 이루어진다. 더욱 상세한 정보에 대해선, http://historyoftheinternet.org/를 참조하시오). 모뎀, 케이블 모뎀 및 이더넷 카드들은 단지 현재 이용가능한 여러 타입의 네트워크 어댑터들이다. 네트워크 카드, 네트워크 어댑터 또는 NIC는(network interface card) 컴퓨터가 컴퓨터 네트워크를 통해 통신할 수 있도록 설계된 컴퓨터 하드웨어의 부분이다. 이는 네트워크 카드, 네트워크 어댑터 또는 NIC가 네트워킹 매체에 대한 물리적 액세스를 제공하고 MAC 주소의 사용을 통해 로우 레벨의 주소지정 시스템을 제공하므로, OSI 계층 1(물리 계층) 및 계층 2(데이터 링크 계층) 디바이스이다. 이는 사용자가 케이블의 사용으로 또는 무선으로 서로 연결하는 것을 허용한다. 때때로, 그러나, 네트워크는 고장나거나 트래픽의 최고치로 인해 과적재되어 데이터가 CDP 서버(104B)에 업로드되지 못할 수 있다. 따라서, CDP 클라이언트(102B)는 도 3A 및 3B에 나타낸 본 발명의 방법을 이용할 필요가 있다.
도 2에 도시된 바와 같이, CDP 클라이언트(200)는 실시간 백업을 수행하는 파일 시스템이다. 대다수의 데이터 처리 시스템에서와 같이, 프로그램 코드를 저장 및/또는 실행하는 데 적합한 CDP 클라이언트(200)는 시스템 버스를 통해 직접 또는 간접적으로 연결된 적어도 하나의 프로세서(처리 유닛(206))을 포함할 것이다. 메모리 요소는 프로그램 코드의 실제 실행 동안 이용된 로컬 메모리(RAM (230)), 대용량 저장장치(저장장치(218)), 및 실행 동안 대용량 저장장치로부터 코드가 검색되어야 할 횟수를 감소시키기 위해 적어도 일부 프로그램 코드에 대한 임시 저장장소를 제공하는 캐시 메모리(캐시(232))를 포함할 수 있다. 입력/출력 또는 I/O 디바이스(외부 디바이스(216))(키보드, 디스플레이, 포인팅 디바이스 등을 포함하지만 이에 한정되진 않음)는 직접적으로 또는 I/O 제어기(I/O 인터페이스(214))의 중재로 시스템에 연결될 수 있다. CDP 클라이언트(200)는 또한 플래시 메모리(240)를 갖는다.
CDP 클라이언트(200)는 계층 구조로 설계되는데, 플래시 메모리(240)는 원격 CDP 서버(104B)가 이용불가능할 때 데이터 갱신내용(그들의 버전들과 함께도 가능함)을 보관하는 버퍼로서의 역할을 한다. 다른 말로 하면, 플래시 계층(240)과 원격 서버(104B)의 조합은 임의의 시점에 임의의 파일 또는 임의의 파일 버전을 복구하는 데 필요한 모든 데이터를 포함한다. 네트워크 연결(예를 들어, 106B 및/또는 108B)이 재수립되기만 하면 수집된 데이터는 원격 서버(104B)에 보내진다.
플래시 계층(240)은 일반적으로 제한된 용량을 가지며 성능을 개선시키기 위해 가장 빈번하게 액세스된 최신 버전의 파일 및 데이터 갱신내용을 보관하기 위해 사용된다. 그러므로, CDP의 경우에, 모든 버전들이 서버에 저장된 후 플래시 계층(240)으로부터 최신의 버전을 제외하고 모든 버전이 폐기된다. 클라이언트(200)(102B)가 서버(104B)에 연결된다면, 가장 덜 빈번하게 액세스된 데이터는 성능 개선을 위해 보다 더 빈번하게 액세스된 데이터로 교체된다. 분리된 동작의 경우엔, 이전 버전의 데이터는 최근 버전이 저장될 수 있도록 폐기된다. 그러한 모든 데이터가 폐기된 경우에, 더 많은 공간이 필요로 된다면, 동일한 파일의 유사한 데이터 버전이 폐기된다. 본 발명의 시스템은 파일 시스템 계층에서 동작하고 따라서 추가의 정책이 특정한 파일 또는 디렉토리의 중요성에 기초하여 추가될 수 있다. 모든 지난 버전의 파일이 폐기되고 새로운 데이터 갱신내용을 저장하기에 충분한 공간이 남아있지 않으면 본 발명의 시스템은 사용자에게 파일 시스템이 꽉 차있음을 선언하거나 가장 덜 중요한 파일 복사본을 폐기하기 시작할 수 있다.
플래시 계층이 다 소모되는 것을 방지하기 위해, 데이터는 네트워크 연결이 가능하지 않을 때 플래시 계층에 기록되어야 할 필요는 없지만 그 보단 차라리 백업 서버에 직접적으로 보내진다.
본 발명은 일반적으로 하드웨어 및/또는 소프트웨어를 통해 컴퓨터로 구현된다. 따라서, 클라이언트 시스템 및/또는 서버는 종래 기술에서 알려진 바와 같은 컴퓨터화된 컴포넌트를 포함할 것이다. 이러한 컴포넌트는 일반적으로 (컴포넌트들 중에서도) 처리 유닛, 메모리, 버스, 입력/출력(I/O) 인터페이스, 외부 디바이스 등을 포함한다. 연속 데이터 보호를 위해 로컬 플래시 메모리 및 원격 서버 하이브리드를 수반하는 특정한 실시예가 묘사되고 설명되었을지라도, 본 발명은 임의 유형의 백업 서버와 연계하여 구현될 수 있음을 알아야 한다.
본 명세서에서 연속 데이터 보호를 위해 로컬 플래시 메모리 및 원격 서버를 이용하기 위한 시스템 및 방법으로서 도시되고 설명되었지만, 본 발명은 또한 여러 대안 실시예를 제공한다는 것을 알아야 한다. 예를 들어, 한 실시예에서, 본 발명은 컴퓨터 인프라구조가 연속 데이터 보호를 위해 로컬 플래시 메모리 및 원격 서버를 이용할 수 있도록 하기 위해 컴퓨터 프로그램 코드를 포함하는 컴퓨터로 판독가능한/사용가능한 매체를 제공한다. 이러한 의미에서 보면, 컴퓨터로 판독가능한/사용가능한 매체는 본 발명의 여러 프로세스 단계들의 각각을 구현하는 프로그램 코드를 포함한다. 용어로서 컴퓨터로 판독가능한 매체 또는 컴퓨터로 사용가능한 매체는 프로그램 코드의 하나 이상의 임의의 유형의 실제 구현을 포함한다. 특히, 컴퓨터로 판독가능한/사용가능한 매체는 하나 이상의 휴대형 저장 물품(예로서, 컴팩트 디스크, 자기 디스크, 테이프 등)에 구체화되거나, 메모리 및/또는 저장 시스템(예로서, 고정된 디스크, 판독 전용 메모리, 임의 접근 메모리, 캐시 메모리 등)과 같은 컴퓨팅 디바이스의 하나 이상의 데이터 저장부에 구체화된 컴퓨터 프로그램 코드, 및/또는 네트워크를 거쳐 이동하는(예로서, 프로그램 코드의 유선/무선 전자적 배포 동안) 데이터 신호(예로서, 전파된 신호)를 포함할 수 있다.
본 발명의 다양한 양상에 대한 상기 설명은 예시적으로 그리고 설명을 위한 목적으로 제공되었다. 본 발명에 대해 하나도 빠뜨리는 것 없이 설명되었다거나 개시된 형태에 한정된다는 것으로 설명한 것은 아니며, 명백히 다수의 수정 및 변형도 가능하다. 당업자에겐 명백할 수 있는 그러한 수정 및 변형도 첨부 특허청구범위에 의해 정의된 발명의 범위 내에 포함된다는 것을 의도한다.
108: 스택커블 파일 시스템
110: 버추얼 파일 시스템(VFS; Virtual File System)
112: 애플리케이션
102B: CDP 클라이언트
104B: CDP 서버
106B, 108B: 네트워크 연결
110B: 네트워크
112B: 프린터
114B: 저장장치

Claims (10)

  1. 적어도 하나의 CDP(continuous data protection) 클라이언트, 적어도 하나의 CDP 클라이언트로부터 백업된 데이터를 저장하는 저장장치를 갖는 적어도 하나의 원격 서버, 및 적어도 하나의 CDP 클라이언트와 적어도 하나의 원격 서버를 연결하는 네트워크를 포함하는 시스템에서 연속 데이터 보호(CDP)를 제공하는 방법으로서, 상기 적어도 하나의 CDP 클라이언트는 자신에 대해 국부적으로 데이터를 저장하기 위한 로컬 하드 드라이브 저장장치를 갖고 또한 자신에 대해 국부적으로 백업 데이터를 저장하기 위한 로컬 플래시 메모리를 갖는 것인, 상기 시스템에서 CDP를 제공하는 방법에 있어서, 상기 적어도 하나의 CDP 클라이언트에서,
    a. 갱신된 데이터를 로컬 하드 드라이브 저장장치에 저장하는 단계,
    b. 갱신된 데이터를 백업 목적으로 전송하기 위해 원격 서버에 대한 충분한 네트워크 연결이 존재하는지의 여부를 결정하는 단계, 및
    c. 충분한 네트워크 연결이 존재하지 않는다면, 갱신된 데이터를 로컬 플래시 메모리에 저장하는 단계를 포함하는, 시스템에서 CDP를 제공하는 방법.
  2. 제1항에 있어서, 충분한 네트워크 연결이 존재한다면, 갱신된 데이터를 백업 목적으로 원격 서버에 전송하는 단계 d를 더 포함하는, 시스템에서 CDP를 제공하는 방법.
  3. 제1항에 있어서, 상기 단계 c는 갱신된 데이터를 로컬 하드 드라이브 저장장치에 저장하는 단계를 더 포함하는 것인, 시스템에서 CDP를 제공하는 방법.
  4. 제1항에 있어서, 상기 단계 c는, 상기 저장하는 단계 이전에, 로컬 플래시 메모리가 꽉 차있는지의 여부를 결정하는 단계, 및 만일 로컬 플래시 메모리가 꽉 차있지 않다면, 갱신된 데이터를 로컬 플래시 메모리에 저장하는 단계를 더 포함하는 것인, 시스템에서 CDP를 제공하는 방법.
  5. 제4항에 있어서, 상기 단계 c는, 상기 저장하는 단계 이전에 그리고 상기 결정하는 단계 이후에, 만일 로컬 플래시 메모리가 꽉 차있다면, 로컬 플래시 메모리가 가장 최근 버전의 갱신된 데이터를 가지고 있는지의 여부를 결정하는 단계, 및 만일 가장 최근 버전의 갱신된 데이터를 가지고 있지 않다면 동일한 데이터의 오래된 버전에 새로운 갱신된 데이터를 덮어쓰기하는 단계를 더 포함하는 것인, 시스템에서 CDP를 제공하는 방법.
  6. 제1항에 있어서, 상기 단계 c는, 갱신된 데이터를 백업 목적으로 원격 서버에 전송하기 위해 충분한 네트워크 연결이 존재하는지의 여부를 결정하는 단계, 및, 만일 충분한 네트워크 연결이 존재한다면, 갱신된 데이터를 로컬 플래시 메모리로부터 원격 서버로 전송하는 단계를 더 포함하는 것인, 시스템에서 CDP를 제공하는 방법.
  7. 적어도 하나의 CDP 클라이언트, 적어도 하나의 CDP 클라이언트로부터 백업된 데이터를 저장하는 저장장치를 갖는 적어도 하나의 원격 서버, 및 적어도 하나의 CDP 클라이언트와 적어도 하나의 원격 서버를 연결하는 네트워크를 포함하는 시스템에서 동작하기 위한 컴퓨터로 판독가능한 매체내의 컴퓨터 프로그램 제품으로서, 상기 적어도 하나의 CDP 클라이언트는 네트워크 I/O, CPU 및 데이터를 자신에 대해 국부적으로 저장하기 위한 로컬 하드 드라이브 저장장치를 갖고, 또한 백업 데이터를 자신에 대해 국부적으로 저장하기 위한, 상기 로컬 하드 드라이브 저장장치와 별개인, 로컬 플래시 메모리를 갖는 것인, 상기 시스템에서 동작하기 위한 컴퓨터로 판독가능한 매체내의 컴퓨터 프로그램 제품에 있어서, 연속 데이터 보호(CDP)를 제공하기 위해, 상기 적어도 하나의 CDP 클라이언트에서,
    a. 갱신된 데이터를 로컬 하드 드라이브 저장장치에 저장하는 단계,
    b. 갱신된 데이터를 백업 목적으로 전송하기 위해 원격 서버에 대한 충분한 네트워크 연결이 존재하는지의 여부를 결정하는 단계, 및
    c. 충분한 네트워크 연결이 존재하지 않는다면, 갱신된 데이터를 로컬 플래시 메모리에 저장하는 단계를 포함하는 방법을 구현하는, 상기 시스템에서 동작하기 위한 컴퓨터로 판독가능한 매체내의 컴퓨터 프로그램 제품.
  8. 연속 데이터 보호(CDP)를 제공하기 위한 CDP 클라이언트에 있어서,
    a. CDP 클라이언트가 CDP 클라이언트로부터 갱신된 데이터를 저장하기 위한 저장 장치를 갖는 원격 서버와 네트워크를 통해 통신할 수 있게 해주고 갱신된 데이터를 원격 서버에 전송하기 위해 충분한 네트워크 연결을 갖는지의 여부를 결정하기 위한 네트워크 I/O 디바이스,
    b. CDP 클라이언트를 제어하기 위한 CPU,
    c. 갱신된 데이터를 CDP 클라이언트에 대해 국부적으로 저장하는 로컬 하드 드라이브 저장장치, 및
    d. 네트워크 I/O 디바이스가 갱신된 데이터를 원격 서버에 전송하기 위한 상기 네트워크 연결이 충분하지 않다고 결정하였을 때 갱신된 데이터를 CDP 클라이언트에 대해 국부적으로 저장하는 로컬 플래시 메모리를 포함하는, CDP를 제공하기 위한 CDP 클라이언트.
  9. 제8항에 있어서, 버추얼 파일 시스템(VFS; Virtual File System) 및 상기 버추얼 파일 시스템에 연결된 스택커블(stackable) 파일 시스템을 더 포함하는 것인, CDP를 제공하기 위한 CDP 클라이언트.
  10. 제8항에 있어서, 로컬 하드 드라이브 저장장치에 연결된 로컬 하드 드라이브 저장장치 드라이버, 플래시 메모리에 연결된 플래시 메모리 드라이버 및 네트워크 I/O 디바이스에 연결된 네트워크 프로토콜 구현체를 더 포함하는, CDP를 제공하기 위한 CDP 클라이언트.
KR1020107010048A 2007-10-24 2008-09-22 로컬 플래시 메모리 및 원격 서버 하이브리드 연속 데이터 보호 KR20100096075A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/877,931 2007-10-24
US11/877,931 US8862689B2 (en) 2007-10-24 2007-10-24 Local flash memory and remote server hybrid continuous data protection

Publications (1)

Publication Number Publication Date
KR20100096075A true KR20100096075A (ko) 2010-09-01

Family

ID=40579908

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107010048A KR20100096075A (ko) 2007-10-24 2008-09-22 로컬 플래시 메모리 및 원격 서버 하이브리드 연속 데이터 보호

Country Status (6)

Country Link
US (1) US8862689B2 (ko)
EP (1) EP2218006B1 (ko)
JP (1) JP5404637B2 (ko)
KR (1) KR20100096075A (ko)
CN (1) CN101836192A (ko)
WO (1) WO2009055174A1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101636777B1 (ko) * 2008-08-08 2016-07-21 시게이트 테크놀로지 엘엘씨 하이브리드 저장 장치 및 그에 대한 논리 블록 어드레스 할당 방법
US8244685B2 (en) * 2010-02-24 2012-08-14 Autonomy, Inc. Data restoration utilizing forward and backward deltas
JP2011203977A (ja) * 2010-03-25 2011-10-13 Hitachi-Lg Data Storage Inc ストレージ装置、及びストレージ装置におけるファイルシステムの生成方法
US8700949B2 (en) 2010-03-30 2014-04-15 International Business Machines Corporation Reliability scheme using hybrid SSD/HDD replication with log structured management
CN101860570B (zh) * 2010-06-10 2014-12-10 中兴通讯股份有限公司 一种备份和恢复移动终端用户数据的方法及***
US9386098B2 (en) * 2010-06-11 2016-07-05 Fidelithon Systems, Llc Smartphone management system and method
KR101530463B1 (ko) * 2010-11-16 2015-06-29 인텔 코포레이션 데이터 기억 시스템에 대한 엔드포인트 캐싱
US8924500B2 (en) * 2011-03-29 2014-12-30 Amazon Technologies, Inc. Local storage linked to networked storage system
US8458134B2 (en) 2011-03-30 2013-06-04 International Business Machines Corporation Near continuous space-efficient data protection
EP2852897B1 (en) * 2012-05-20 2020-10-07 Microsoft Technology Licensing, LLC Server-based hierarchical mass storage system
AR086595A3 (es) * 2012-05-29 2014-01-08 Julio Enrique Rovelli Procedimiento de resguardo del sistema operativo windows contra los virus informaticos spyware, y/o hackers y disco rigido utilizado en dicho procedimiento
CN102802057B (zh) * 2012-07-05 2017-02-08 深圳创维数字技术有限公司 数字电视接收终端、将数据写入闪存的方法及***
US10185631B2 (en) 2013-07-04 2019-01-22 Data Deposit Box Inc. System and method of performing continuous backup of a data file on a computing device
CN104637510A (zh) * 2013-11-12 2015-05-20 四零四科技股份有限公司 外接储存装置及外接储存装置的数据存储方法
US9146686B2 (en) * 2013-12-12 2015-09-29 Moxa Inc. External storage device and data storing method for the external storage device
US10642511B2 (en) * 2018-10-05 2020-05-05 EMC IP Holding Company LLC Continuous data protection storage media using smart solid state drives
US11500740B2 (en) * 2019-11-22 2022-11-15 EMC IP Holding Company LLC Continuous data protection
CN112306761A (zh) * 2020-10-12 2021-02-02 国家电网有限公司 一种面向多业务不停机检修的运维保障方法及***
CN112540872B (zh) * 2020-11-26 2022-04-01 华云数据控股集团有限公司 通用持续数据保护方法、装置及电子设备

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119151A (en) 1994-03-07 2000-09-12 International Business Machines Corp. System and method for efficient cache management in a distributed file system
JPH09212261A (ja) * 1996-01-31 1997-08-15 Hitachi Ltd 情報処理装置の電源制御システム
US6324654B1 (en) * 1998-03-30 2001-11-27 Legato Systems, Inc. Computer network remote data mirroring system
US7103797B1 (en) * 1998-03-30 2006-09-05 Emc Corporation Resource allocation throttling in remote data mirroring system
JP2000137636A (ja) 1998-10-30 2000-05-16 Hitachi Ltd バックアップ装置
US7203732B2 (en) * 1999-11-11 2007-04-10 Miralink Corporation Flexible remote data mirroring
US6748403B1 (en) * 2000-01-13 2004-06-08 Palmsource, Inc. Method and apparatus for preserving changes to data
US20030014523A1 (en) * 2001-07-13 2003-01-16 John Teloh Storage network data replicator
JP2003186627A (ja) 2001-12-18 2003-07-04 Nec Corp 磁気テープ装置データパックアップ制御方式
US7028154B2 (en) * 2002-06-18 2006-04-11 Hewlett-Packard Development Company, L.P. Procedure to reduce copy time for data backup from short-term to long-term memory
US20040010628A1 (en) * 2002-07-11 2004-01-15 Gillam Richard J. System and method for discouraging unauthorized duplication of data stored on a storage media
JP2004148596A (ja) 2002-10-29 2004-05-27 Canon Inc インクジェット記録装置
US7036040B2 (en) * 2002-11-26 2006-04-25 Microsoft Corporation Reliability of diskless network-bootable computers using non-volatile memory cache
US7548201B2 (en) * 2003-04-16 2009-06-16 Cable Leakage Technologies, Inc. Method and system for automatically analyzing and modifying cable television signal leak information
GB0308991D0 (en) * 2003-04-17 2003-05-28 Psion Digital Ltd A data access replication or communication system comprising a distributed software application
US7069351B2 (en) * 2003-06-02 2006-06-27 Chung Keicy K Computer storage device having network interface
US7454443B2 (en) * 2003-08-26 2008-11-18 Tamir Ram Method, system, and program for personal data management using content-based replication
US7457828B2 (en) * 2003-08-29 2008-11-25 Sap Ag System and method for synchronizing distributed buffers when committing data to a database
US7415703B2 (en) * 2003-09-25 2008-08-19 International Business Machines Corporation Loading software on a plurality of processors
JP2005107805A (ja) 2003-09-30 2005-04-21 Hitachi Computer Peripherals Co Ltd 非同期リモートコピーデータの世代分割管理方法及びコンピュータシステム
US7406488B2 (en) * 2004-02-04 2008-07-29 Netapp Method and system for maintaining data in a continuous data protection system
US7315965B2 (en) * 2004-02-04 2008-01-01 Network Appliance, Inc. Method and system for storing data using a continuous data protection system
US20050273858A1 (en) * 2004-06-07 2005-12-08 Erez Zadok Stackable file systems and methods thereof
US7502961B2 (en) * 2004-09-09 2009-03-10 Microsoft Corporation Method, system, and apparatus for providing alert synthesis in a data protection system
US20060051157A1 (en) * 2004-09-09 2006-03-09 International Business Machines Corporation Systems, methods, and media for backing up a computer system
US7366861B2 (en) * 2005-03-07 2008-04-29 Microsoft Corporation Portable media synchronization manager
US7620773B2 (en) * 2005-04-15 2009-11-17 Microsoft Corporation In-line non volatile memory disk read cache and write buffer
US7389379B1 (en) * 2005-04-25 2008-06-17 Network Appliance, Inc. Selective disk offlining
US20070033356A1 (en) * 2005-08-03 2007-02-08 Boris Erlikhman System for Enabling Secure and Automatic Data Backup and Instant Recovery
US20070136397A1 (en) * 2005-12-09 2007-06-14 Interdigital Technology Corporation Information life-cycle management architecture for a device with infinite storage capacity
TWI307035B (en) * 2006-04-10 2009-03-01 Ind Tech Res Inst Method and system for backing up remote mirror data on internet
US7523149B1 (en) * 2006-05-23 2009-04-21 Symantec Operating Corporation System and method for continuous protection of working set data using a local independent staging device
US20080034019A1 (en) * 2006-08-04 2008-02-07 Pavel Cisler System for multi-device electronic backup
US20080140901A1 (en) * 2006-12-11 2008-06-12 Corrion Bradley W Safe removal of external device from computing device
US20080144601A1 (en) * 2006-12-18 2008-06-19 Nokia Corporation Systems, methods, devices, and computer program products providing data replication for mobile terminals
US8032472B2 (en) * 2007-04-04 2011-10-04 Tuen Solutions Limited Liability Company Intelligent agent for distributed services for mobile devices

Also Published As

Publication number Publication date
US20090109823A1 (en) 2009-04-30
EP2218006B1 (en) 2012-12-05
JP2011501317A (ja) 2011-01-06
JP5404637B2 (ja) 2014-02-05
EP2218006A1 (en) 2010-08-18
EP2218006A4 (en) 2012-02-22
WO2009055174A1 (en) 2009-04-30
CN101836192A (zh) 2010-09-15
US8862689B2 (en) 2014-10-14

Similar Documents

Publication Publication Date Title
JP5404637B2 (ja) 継続的データ保護を提供するための方法、システム及びコンピュータ・プログラム
US10241873B2 (en) Headstart restore of first volume to a second volume
US9361306B1 (en) Managing concurrent write operations to a file system transaction log
US9542396B1 (en) Managing a file system to avoid unnecessary replay of a transaction log
US8788628B1 (en) Pre-fetching data for a distributed filesystem
WO2018040591A1 (zh) 一种远程数据复制方法及***
JP3870063B2 (ja) データ・フラグメントを利用して、移動可能な格納ボリュームを効率的にインポート/エクスポートする方法およびシステム
ES2582364T3 (es) Sistemas y métodos para realizar replicación de datos
US20150378921A1 (en) Systems and methods for storage service automation
US9460177B1 (en) Managing updating of metadata of file systems
JP5445463B2 (ja) 計算機システム、データ保存方法およびプログラム
US7383465B1 (en) Undoable volume using write logging
CN113568566B (zh) 利用索引物件来进行简易存储服务无缝迁移的方法、主装置以及存储服务器
JP2014533850A (ja) 記憶システム上に格納されたファイルを読み取るための方法、コンピュータ・プログラム、記憶システム
WO2015054897A1 (zh) 数据存储方法、数据存储装置和存储设备
JP2012507788A (ja) ストレージ・エリア・ネットワークを使用してコンピュータシステムを復旧するための方法およびシステム
US11314639B2 (en) Protecting against data loss during garbage collection
US10712941B2 (en) Leveraging temporal locality to link files together and bypass accessing a central inode list
CN113568567B (zh) 利用索引物件来进行简易存储服务无缝迁移的方法、主装置以及存储服务器
TWI564803B (zh) 用於儲存虛擬化的系統和方法
US20230273799A1 (en) Storage system with boot volume rollback points
US10719401B2 (en) Increasing data recoverability during central inode list loss
Steigerwald Imposing order

Legal Events

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