KR101298852B1 - Method of restoring file and system for the same - Google Patents

Method of restoring file and system for the same Download PDF

Info

Publication number
KR101298852B1
KR101298852B1 KR1020110087528A KR20110087528A KR101298852B1 KR 101298852 B1 KR101298852 B1 KR 101298852B1 KR 1020110087528 A KR1020110087528 A KR 1020110087528A KR 20110087528 A KR20110087528 A KR 20110087528A KR 101298852 B1 KR101298852 B1 KR 101298852B1
Authority
KR
South Korea
Prior art keywords
file
version
file version
terminal
delta
Prior art date
Application number
KR1020110087528A
Other languages
Korean (ko)
Other versions
KR20130024221A (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 웹싱크 주식회사
Priority to KR1020110087528A priority Critical patent/KR101298852B1/en
Publication of KR20130024221A publication Critical patent/KR20130024221A/en
Application granted granted Critical
Publication of KR101298852B1 publication Critical patent/KR101298852B1/en

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/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • G06F15/17325Synchronisation; Hardware support therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은, 파일 복원 방법 및 이를 위한 시스템이 개시된다. 단말로부터 파일 버전 히스토리 중 복원 대상 파일 버전의 정보를 수신하는 단계, 상기 현재 파일 버전에서부터 상기 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복이 존재하는지 판단하는 단계, 상기 판단 결과에 따라 상기 복귀 대상 파일 버전으로 복귀하기 위한 델타 파일을 생성하는 단계 및 상기 생성한 델타 파일을 상기 단말로 전송하여 상기 단말의 동기화를 수행하는 단계를 포함하여 구성될 수 있다. 따라서, 클라우드 환경에서 적어도 하나의 단말에 의해 파일이 수정됨에 따라 다른 단말이 수정된 파일로 동기화되었지만, 단말은 서버에서 관리되는 파일 버전 히스토리를 기초하여 특정 파일 버전 복귀할 수 있다는 장점이 있다.The present invention discloses a file restoration method and a system therefor. Receiving information of a restoration target file version of the file version history from the terminal, determining whether a duplicate exists in a portion modified for the file version from the current file version to the restoration target file version, and according to the determination result The method may include generating a delta file for returning to the restoration target file version, and transmitting the generated delta file to the terminal to perform synchronization of the terminal. Accordingly, although the other terminal is synchronized with the modified file as the file is modified by the at least one terminal in the cloud environment, the terminal has an advantage of returning to a specific file version based on the file version history managed by the server.

Description

파일 복원 방법 및 이를 위한 시스템{METHOD OF RESTORING FILE AND SYSTEM FOR THE SAME}File restoration method and system for this {METHOD OF RESTORING FILE AND SYSTEM FOR THE SAME}

본 발명은 파일 버전 복원 방법 및 이를 위한 시스템에 관한 것으로, 더욱 상세하게는 클라우드 환경에서 파일 버전 히스토리를 기초로 특정 파일 버전의 파일을 복원하는 방법 및 이를 위한 시스템에 관한 것이다.The present invention relates to a method for restoring a file version and a system therefor, and more particularly, to a method and system for restoring a file of a specific file version based on a file version history in a cloud environment.

컴퓨터 네트워크의 기술발전에 따라, 각 단말의 독립적인 하드웨어 성능에 의존하던 기존의 컴퓨팅 환경은, 네트워크 상의 모든 컴퓨팅 자원을 활용하여 단말의 요청에 따라 해당 서비스를 제공하는 클라우드 컴퓨팅(Cloud Computing) 형태로 진화하고 있다.The existing computing environment, which relies on the independent hardware performance of each terminal according to the technological development of the computer network, is a form of cloud computing in which the service is provided according to the request of the terminal utilizing all the computing resources on the network It is evolving.

클라우드 컴퓨팅이란 '인터넷을 통한 IT자원의 온디맨드 아웃소싱 서비스'라고 정의할 수 있다. 클라우드 컴퓨팅 환경에서, 서비스 제공자는 여러 곳에 분산되어 있는 데이터 센터를 가상화 기술로 통합하여 사용자들이 필요로 하는 서비스를 제공하게 된다.Cloud computing can be defined as an on-demand outsourcing service for IT resources over the Internet. In a cloud computing environment, service providers will integrate data centers in multiple locations into virtualization technologies to provide the services users need.

서비스 사용자는 어플리케이션(Application), 스토리지(Storage), 운영체제(Operation System, OS), 보안(Security)등의 필요한 컴퓨팅 자원을 각 사용자 소유의 단말에 설치하여 사용하는 것이 아니라, 가상화 기술을 통해 생성된 가상공간상의 서비스를 원하는 시점에 원하는 만큼 골라서 사용하게 된다. 사용자는 각 컴퓨팅 자원의 구입비용을 지불하는 것이 아니라 사용량에 기반하여 대가를 지불하게 된다.Service users are not required to install and use necessary computing resources such as application, storage, operating system, OS, and security in each user's own terminal, The service in the virtual space can be selected and used as desired. The user does not pay for the purchase of each computing resource, but instead pays the price based on usage.

이러한 클라우드 컴퓨팅 서비스에 따르면, 서비스 사용자들은 어떠한 장소에서든 네트워크 접속과 기본적인 연산기능만을 수행하는 단말을 통해 클라우드 가상공간에 접속하여 대용량의 저장장치와 고성능 컴퓨팅 리소스가 필요한 작업들을 수행하고, 고도화된 서비스들도 제공받을 수 있는 장점이 있다.According to these cloud computing services, service users access the cloud virtual space through terminals that perform only network access and basic computing functions at any place, and perform tasks requiring large storage and high performance computing resources. There is also an advantage that can be provided.

한편, 다양한 종류의 단말을 사용하여 클라우드 가상공간에 접속하는 서비스 사용자가 단말을 이용하여 클라우드 가상공간에 접속하여 파일을 변경한 경우, 변경된 파일은 단말을 제외한 클라우드 가상공간에 접속한 다양한 종류의 단말과 동기화가 되야 한다. 이에 따라, 변경된 파일은 파일을 변경한 단말을 제외한 클라우드 가상공간에 접속한 다양한 종류의 단말로 전송된다. Meanwhile, when a service user accessing a cloud virtual space using various types of terminals accesses a cloud virtual space using a terminal and changes a file, the changed file is connected to various types of terminals accessing the cloud virtual space except for the terminal. It should be synchronized with. Accordingly, the changed file is transmitted to various types of terminals connected to the cloud virtual space except for the terminal which changed the file.

이와 같이, 단말은 현재 파일 버전에서 파일을 변경하여 새로운 파일 버전으로 발전할 수는 있지만, 현재 파일 버전에서 이전 파일 버전으로는 복귀할 수 없다는 문제점이 존재한다.As such, although the terminal may evolve to a new file version by changing a file in the current file version, there is a problem that the terminal cannot return to the previous file version.

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 클라우드 환경에서 파일 버전 히스토리를 기초로 특정 파일 버전의 파일을 복원하는 방법 및 이를 위한 시스템을 제공하는데 있다.An object of the present invention for solving the above problems is to provide a method and system for restoring a file of a specific file version based on the file version history in a cloud environment.

상기한 본 발명의 목적을 달성하기 위한 본 발명의 일 실시예에 따른 파일 복원 방법은, 단말로부터 파일 버전 히스토리 중 복원 대상 파일 버전의 정보를 수신하는 단계, 상기 현재 파일 버전에서부터 상기 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복이 존재하는지 판단하는 단계, 상기 판단 결과에 따라 상기 복귀 대상 파일 버전으로 복귀하기 위한 델타 파일을 생성하는 단계 및 상기 생성한 델타 파일을 상기 단말로 전송하여 상기 단말의 동기화를 수행하는 단계를 포함하여 구성될 수 있다.The file restoration method according to an embodiment of the present invention for achieving the object of the present invention, the step of receiving information of the restoration target file version of the file version history from the terminal, the restoration target file version from the current file version Determining whether there is a duplication in the modified part for the file version up to, generating a delta file for returning to the return target file version according to the determination result, and transmitting the generated delta file to the terminal It may be configured to include the step of performing the synchronization of the terminal.

본 발명의 일 실시예에 따른 클라우드 시스템의 서버는, 상기 단말로부터 파일 버전 히스토리 중 복원 대상 파일 버전의 정보 요청을 수신하는 수신부, 상기 단말에서 파일의 수정이 발생할 시 생성된 백워드 델타 파일을 수신하고, 상기 백워드 델타 파일을 파일 버전에 대응하여 저장하는 저장부, 상기 저장부에 저장된 백워드 델타 파일 중 현재 파일 버전에서부터 상기 수신한 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복이 존재하는지 판단하는 판단부 및 상기 판단 결과에 따라 델타 파일을 생성하여 상기 단말의 동기화를 수행하는 동기화부를 포함하여 구성될 수 있다.A server of a cloud system according to an exemplary embodiment of the present invention may include a receiver configured to receive a request for information on a restoration target file version from a file version history, and a backward delta file generated when a file is modified in the terminal. And a storage unit for storing the backward delta file corresponding to the file version and a portion modified for the file version from the current file version to the received restoration target file version among the backward delta files stored in the storage unit. It may include a determination unit for determining whether there is a and a synchronization unit for generating a delta file according to the determination result to perform synchronization of the terminal.

상기와 같은 본 발명에 따른 파일 복원 방법 및 이를 위한 시스템을 이용할 경우에는 클라우드 환경에서 적어도 하나의 단말에 의해 파일이 수정됨에 따라 다른 단말이 수정된 파일로 동기화되었지만, 서버에서 관리되는 파일 버전 히스토리를 기초하여 특정 파일 버전 복귀할 수 있다는 장점이 있다.In the case of using the method for restoring a file and the system therefor according to the present invention as described above, as the file is modified by at least one terminal in a cloud environment, another terminal is synchronized with the modified file, but the file version history managed by the server is The advantage is that you can revert to a specific file version based on that.

도 1은 본 발명의 제 1 실시예에 따른 파일 복원 과정을 설명하기 위한 흐름도이다.
도 2는 본 발명의 제 2 실시예에 따른 파일 복원 과정을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 파일 복원 시스템의 내부 구조를 개략적으로 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 파일 복원 과정을 설명하기 위한 예시도이다.
1 is a flowchart illustrating a file restoration process according to the first embodiment of the present invention.
2 is a flowchart illustrating a file restoration process according to the second embodiment of the present invention.
3 is a diagram schematically illustrating an internal structure of a file restoration system according to an embodiment of the present invention.
4 is an exemplary diagram for describing a file restoration process according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be. On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 제 1 실시예에 따른 파일 복원 과정을 설명하기 위한 흐름도이다. 1 is a flowchart illustrating a file restoration process according to the first embodiment of the present invention.

도 1에는 도시하지 않았지만, 서버(100)는 사용자의 제 1 단말(201) 및 제 2 단말(203) 중 적어도 하나의 단말에서 파일의 수정이 발생하면, 파일을 수정한 단말에서 파일 수정 전 및 후의 차이점만을 추출하여 생성한 델타 파일을 수신하여 저장하고 있다. Although not shown in FIG. 1, when the file is modified in at least one of the first terminal 201 and the second terminal 203 of the user, the server 100 may change the file in the terminal that modified the file, and The delta file created by extracting only the following differences is received and stored.

즉, 서버(100)는 적어도 하나의 단말에서 파일의 수정이 발생할 때마다 단말로부터 델타 파일을 수신하여 파일 버전에 대응하여 저장하고 있다. 이와 같이 서버(100)가 델타 파일을 파일 버전에 대응하여 저장하고 있기 때문에, 서버(100)는 파일 버전 히스토리를 저장하고 있다고 할 수 있다.That is, whenever the file modification occurs in at least one terminal, the server 100 receives the delta file from the terminal and stores the file in correspondence with the file version. As described above, since the server 100 stores the delta file in correspondence with the file version, the server 100 may store the file version history.

그리고, 서버(100)는 단말로부터 수신한 델타 파일을 패치하여 최근 파일 버전으로 동기화를 수행한 상태이며, 델타 파일을 파일의 수정이 발생하지 않은 다른 단말에게 전송하여 다른 단말의 파일 동기화를 수행한다.In addition, the server 100 is in a state in which the delta file received from the terminal is patched and synchronized to the latest file version, and the delta file is transmitted to another terminal that does not have a modification of the file to perform file synchronization of another terminal. .

도 1을 참조하면, 제 1 단말(201)은 현재 파일 버전을 특정 파일 버전으로 복원하기 위해서 서버(100)로 파일 버전 히스토리를 요청한다(S101). 서버(100)는 제 1 단말(201)로 파일 버전 히스토리를 전송한다(S102). 제 1 단말(201)은 파일 버전 히스토리 중 복원 대상 파일 버전을 선택하고, 복원 대상 파일의 정보를 서버(100)로 요청한다(S104).Referring to FIG. 1, the first terminal 201 requests the file version history from the server 100 to restore the current file version to a specific file version (S101). The server 100 transmits a file version history to the first terminal 201 (S102). The first terminal 201 selects a restoration target file version from the file version history, and requests the server 100 for information on the restoration target file (S104).

서버(100)는 제 1 단말(201)의 현재 파일 버전에서부터 복원 대상 파일 버전으로 복원하기 위한 백워드 델타 파일을 검색하고(S105), 검색한 백워드 델타 파일을 병합하여 새로운 델타 파일을 생성한다. 이와 같이, 서버(100)가 현재 파일 버전에서부터 복원 대상 파일 버전까지의 백워드 델타 파일을 병합하기 때문에 하나의 델타 파일만을 전송하면 되므로, 단말로 전송해야하는 데이터의 량을 최소화할 수 있다.The server 100 searches for a backward delta file for restoring from the current file version of the first terminal 201 to the restoration target file version (S105), and merges the searched backward delta files to generate a new delta file. . As such, since the server 100 merges backward delta files from the current file version to the restoration target file version, only one delta file needs to be transmitted, thereby minimizing the amount of data to be transmitted to the terminal.

도 1의 실시예에서, 서버(100)는 제 1 단말(201)의 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일에 대해서 수정한 부분이 중복되지 않은 경우의 예시도이며, 중복되는 부분이 존재하는 경우는 후술될 도 2 에서 보다 구체적으로 설명하기로 한다.In the embodiment of FIG. 1, the server 100 is an exemplary view when a portion modified for a file from a current file version of the first terminal 201 to a file to be restored is not duplicated, and a duplicate portion exists. The case will be described in more detail in FIG.

서버(100)는 생성한 새로운 델타 파일을 제 1 단말(201)로 전송하고(S107), 제 1 단말(201)은 서버(100)로부터 수신한 새로운 델타 파일을 패치하여 복원 대상 파일 버전으로 복귀한다(S108). 그리고, 서버(100)는 제 1 단말(201)로 전송한 새로운 델타 파일을 이용하여 복원 대상 파일 버전으로 동기화를 수행하고(S109), 제 2 단말(203)로 새로운 델타 파일을 전송하여 복원 대상 파일 버전으로의 동기화를 요청한다(S110). 도 1에는 도시하지 않았으나, 제 2 단말(203)은 서버(100)로부터 수신한 새로운 델타 파일을 패치하여 복원 대상 파일 버전으로 동기화를 수행한다.
The server 100 transmits the generated new delta file to the first terminal 201 (S107), and the first terminal 201 patches the new delta file received from the server 100 and returns to the restoration target file version. (S108). Then, the server 100 performs synchronization with the restoration target file version using the new delta file transmitted to the first terminal 201 (S109), and transmits a new delta file to the second terminal 203 to restore the target. Request for synchronization to the file version (S110). Although not shown in FIG. 1, the second terminal 203 may patch a new delta file received from the server 100 and perform synchronization with a file to be restored.

도 2는 본 발명의 제 2 실시예에 따른 파일 복원 과정을 설명하기 위한 흐름도이다. 2 is a flowchart illustrating a file restoration process according to the second embodiment of the present invention.

도 2는 도 1에서 상술한 제 1 단말(201)에서 파일 버전 히스토리 중 복원 대상 파일 버전을 선택하면, 서버(100)에서는 제 1 단말(201)의 현재 파일 버전에서부터 복원 대상 파일 버전까지의 백워드 델타 파일을 검색하는 과정(S201 내지 S205)까지 동일하다.FIG. 2 illustrates that when the restoration target file version is selected from the file version history in the first terminal 201 described above with reference to FIG. 1, the server 100 returns the file from the current file version of the first terminal 201 to the restoration target file version. The process is identical to the process of searching for a word delta file (S201 to S205).

따라서, 도 2에서는 도 1과 동일한 부분에 대한 설명은 생략하고, 서버(100)가 제 1 단말(201)의 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재한다고 판단한 경우에 델타 파일을 제 1 단말(201)로 전송하는 과정을 설명하기로 한다.Therefore, in FIG. 2, a description of the same parts as in FIG. 1 is omitted, and a part overlapped with a part modified by the server 100 for the file version from the current file version of the first terminal 201 to the file version to be restored. If it is determined that this exists, the process of transmitting the delta file to the first terminal 201 will be described.

도 2를 참조하면, 서버(100)는 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전 중 수정한 부분에 중복이 발생하기 전까지의 파일 버전에 대해서 해당 버전으로 복귀하기 위한 백워드 델타 파일을 병합하여 새로운 델타 파일을 생성한다(S206). 서버(100)는 생성한 새로운 델타 파일을 제 1 단말(201)로 전송하고, 제 1 단말(201)은 서버(100)로부터 수신한 새로운 델타 파일을 패치하여 임시로 백업 파일을 생성한다(S208). Referring to FIG. 2, the server 100 merges a backward delta file for returning to a file version until a duplication occurs in a modified portion of a file version from a current file version to a restore target file version. To generate a new delta file (S206). The server 100 transmits the generated new delta file to the first terminal 201, and the first terminal 201 temporarily generates a backup file by patching the new delta file received from the server 100 (S208). ).

그 후, 서버(100)는 수정한 부분에 중복이 발생한 파일 버전으로 복귀하기 위한 백워드 델타 파일을 제 1 단말(201)로 전송한다(S209). 그러면, 제 1 단말(201)은 백워드 델타 파일을 패치하여 복원 대상 파일 버전으로 복귀한다(S210). Thereafter, the server 100 transmits a backward delta file to the first terminal 201 for returning to the file version where duplication has occurred in the modified portion (S209). Then, the first terminal 201 returns the restoration target file version by patching the backward delta file (S210).

그런 다음, 서버(100)는 제 1 단말(201)이 복원하고자 하는 파일 버전으로 복원 되었는지 판단한다(S210). 서버(100)는 제 1 단말(201)이 복원하고자 하는 파일 버전으로 복원되지 않았으면, 나머지 복원 대상 파일 버전에 대해서 중복된 부분이 존재하는지 판단하는 단계(S206)로 되돌아가 복원하고자 하는 파일 버전으로 복원될 때까지 상기한 과정을 반복하여 수행한다. Then, the server 100 determines whether the first terminal 201 is restored to the file version to be restored (S210). If the first terminal 201 is not restored to the file version to be restored, the server 100 returns to step S206 of determining whether a duplicate part exists for the remaining file version to be restored, and then restore the file version to be restored. Repeat the above process until it is restored to.

그리고, 서버(100)는 제 1 단말(201)로 전송한 새로운 델타 파일을 및 백워드 델타 파일을 이용하여 복원 대상 파일 버전으로 동기화를 수행하고(S212), 제 2 단말(203)로 새로운 델타 파일 및 백워드 델타 파일을 전송하여 복원 대상 파일 버전으로의 동기화를 요청한다(S213). 도 2에는 도시하지 않았으나, 제 2 단말(203)은 서버(100)로부터 수신한 새로운 델타 파일을 패치하여 복원 대상 파일 버전으로 동기화를 수행한다.
Then, the server 100 synchronizes the new delta file transmitted to the first terminal 201 to the restoration target file version using the and the delta file (S212), and the new delta to the second terminal 203. The file and the backward delta file are transmitted to request synchronization to the restoration target file version (S213). Although not shown in FIG. 2, the second terminal 203 patches the new delta file received from the server 100 and performs synchronization with the restoration target file version.

도 3은 본 발명의 일 실시예에 따른 파일 복원 시스템의 내부 구조를 개략적으로 도시한 도면이다.3 is a diagram schematically illustrating an internal structure of a file restoration system according to an embodiment of the present invention.

도 3을 참조하면, 파일 복원 시스템은 클라우드 시스템의 서버(100), 제 1 단말(201) 및 제 2 단말(203)을 포함하여 구성될 수 있다. 도 3의 실시예에서, 제 1 단말(201) 및 제 2 단말(203)만을 도시하였지만, 사용자의 단말이 클라우드 시스템에 접속하는 경우, 서버(100)에 연결되는 단말의 개수가 증가할 수 있으며, 이에 따라 도 3에 도시된 블록도의 내부 구조가 변경될 수 있음에 유의해야 한다.Referring to FIG. 3, the file restoration system may include a server 100, a first terminal 201, and a second terminal 203 of a cloud system. In the embodiment of FIG. 3, only the first terminal 201 and the second terminal 203 are illustrated, but when the user's terminal accesses the cloud system, the number of terminals connected to the server 100 may increase. Therefore, it should be noted that the internal structure of the block diagram shown in FIG. 3 may be changed accordingly.

도 3의 실시예에서, 서버(100)는 사용자의 제 1 단말(201) 및 제 2 단말(203) 중 적어도 하나의 단말에서 파일의 수정이 발생하면, 파일을 수정한 단말에서 파일 수정 전 및 후의 차이점만을 추출하여 생성한 델타 파일을 수신한다. 그 후, 서버(100)는 수신한 델타 파일을 파일 버전에 대응하여 저장부에 저장한다. 즉, 서버(100)는 파일 버전 히스토리를 저장하고 있다고 할 수 있다.In the embodiment of FIG. 3, when the file modification occurs in at least one of the first terminal 201 and the second terminal 203 of the user, the server 100 before and after the file modification in the terminal that modified the file; Receive the delta file created by extracting only the following differences. Thereafter, the server 100 stores the received delta file in the storage unit corresponding to the file version. In other words, the server 100 may store a file version history.

도 3을 참조하면, 제 1 단말(201) 및 제 2 단말(203)중 적어도 하나의 단말이 서버(100)로 파일 버전 히스토리의 전송을 요청한다. 이하에서, 제 1 단말(201)이 서버(100)로 파일 버전 히스토리의 전송을 요청하는 경우를 예를 들어 설명할 것이며, 제 2 단말(203) 또한 서버(100)로 파일 버전 히스토리의 전송을 요청할 수도 있다.Referring to FIG. 3, at least one of the first terminal 201 and the second terminal 203 requests the server 100 to transmit a file version history. Hereinafter, a case in which the first terminal 201 requests transmission of the file version history to the server 100 will be described by way of example, and the second terminal 203 also transmits the file version history to the server 100. You may ask.

제 1 단말(201)은 현재 파일 버전을 특정 파일 버전으로 복원하기 위해서 서버(100)로 파일 버전 히스토리를 요청한다. 제 1 단말(201)은 서버(100)로부터 복원 대상 파일을 복원하기 위한 델타 파일을 수신하고, 수신한 델타 파일을 이용하여 복원 대상 파일 버전으로 복원한다.The first terminal 201 requests the file version history from the server 100 to restore the current file version to the specific file version. The first terminal 201 receives a delta file for restoring a restoration target file from the server 100, and restores the delta file to a restoration target file version using the received delta file.

서버(100)는 송/수신부(101), 판단부(131), 저장부(151) 및 동기화부(171)를 포함하여 구성될 수 있다. 송/수신부(101)는 제 1 단말(201)로 파일 버전 히스토리를 전송하고, 제 1 단말(201)이 파일 버전 히스토리에서 선택한 복원 대상 파일 버전을 수신한다.The server 100 may include a transmitter / receiver 101, a determiner 131, a storage 151, and a synchronizer 171. The transmitting / receiving unit 101 transmits the file version history to the first terminal 201, and receives the restoration target file version selected by the first terminal 201 from the file version history.

판단부(131)는 이전 버전으로 복귀하기 위한 델타 파일 중 현재 파일 버전에서부터 복원 대상 파일 버전으로 복귀하기 위한 백워드 델파 파일을 저장부(153)에서 검색하고, 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재하는지 판단한다. The determination unit 131 searches the storage unit 153 for a backward delta file for returning to the restoration target file version from the current file version among the delta files for returning to the previous version, and from the current file version to the restoration target file version. It is determined whether there is a duplicate part in the modified part of the file version of the.

또한, 판단부(131)는 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재하는 경우, 복원 대상 파일 버전으로 파일이 복원되었는지 판단한다.In addition, the determination unit 131 determines whether a file is restored to the restoration target file version when there is a duplicate portion in the modified portion of the file version from the current file version to the restoration target file version.

동기화부(171)는 판단부(131)의 판단 결과에 따라 델타 파일을 생성하고, 생성한 델타 파일을 송/수신부(101)를 통해 제 1 단말(201)로 전송한다. 먼저, 판단부(131)가 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재하지 않는다고 판단하는 경우를 설명하기로 한다. The synchronization unit 171 generates a delta file according to the determination result of the determination unit 131, and transmits the generated delta file to the first terminal 201 through the transmission / reception unit 101. First, the case in which the determination unit 131 determines that there is no overlapping portion in the modified portion of the file version from the current file version to the restoration target file version will be described.

동기화부(171)는 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 파일 버전으로 복원하기 위한 백워드 델타 파일을 병합하여 새로운 델타 파일을 생성하고, 생성한 새로운 델타 파일을 송/수신부(101)를 통해 제 1 단말(201)로 전송한다.The synchronization unit 171 merges backward delta files for restoring the file versions of the file versions from the current file version to the restore target file version, and creates a new delta file, and transmits / receives the generated new delta file. It transmits to the first terminal 201 through 101.

둘째, 판단부(131)가 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재한다고 판단한 경우를 설명한다. 동기화부(171)는 현재 파일 버전에서부터 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복이 발생되기 전까지의 파일 버전에 대해서 해당 버전의 백워드 델타 파일을 병합하여 새로운 델타 파일을 생성하고, 생성한 새로운 델타 파일을 송/수신부(101)를 통해 제 1 단말(201)로 전송한다. Secondly, the case where the determination unit 131 determines that there is a duplicate part in the modified part of the file version from the current file version to the restoration target file version will be described. The synchronizer 171 generates a new delta file by merging the backward delta files of the corresponding version of the file version until the duplication occurs in the modified portion of the file version from the current file version to the target file version to restore. The new delta file is transmitted to the first terminal 201 through the transmitter / receiver 101.

그 후, 동기화부(171)는 수정한 부분에 중복이 발생한 파일 버전으로 복귀하기 위한 백워드 델타 파일을 송/수신부(101)를 통해 제 1 단말(201)로 전송한다. 동기화부(171)는 판단부(131)의 판단 결과 제 1 단말(201)이 복원하고자 하는 파일 버전으로 복원되지 않았으면, 나머지 복원 대상 파일 버전에 대해서 중복된 부분이 존재하는지의 판단 결과에 따라 복원하고자 하는 파일 버전으로 복원될 때까지 상기한 과정을 반복하여 수행한다.Thereafter, the synchronizer 171 transmits the backward delta file to the first terminal 201 through the transmitter / receiver 101 for returning to the file version in which the duplicated part has occurred. If the first terminal 201 is not restored to the file version to be restored, the synchronization unit 171 determines whether there is a duplicate part with respect to the remaining file version to be restored. The above process is repeated until the file version to be restored is restored.

저장부(151)는 적어도 하나의 단말에서 파일이 수정될 시 수신한 델타 파일을 파일 버전에 대응하여 저장하고 있다.
The storage unit 151 stores the delta file received when the file is modified in at least one terminal corresponding to the file version.

도 4는 본 발명의 일 실시예에 따른 파일 복원 과정을 설명하기 위한 예시도이다.4 is an exemplary diagram for describing a file restoration process according to an embodiment of the present invention.

도 4에는 도시하지 않았지만, 서버(100)는 사용자의 제 1 단말(201) 및 제 2 단말(203) 중 적어도 하나의 단말에서 파일의 수정이 발생하여 현재 서버(100), 제 1 단말(201) 및 제 2 단말(203)은 파일 버전 6으로 동기화된 상태이다. Although not shown in FIG. 4, the server 100 may modify a file in at least one of the first terminal 201 and the second terminal 203 of the user so that the current server 100 and the first terminal 201 are generated. ) And the second terminal 203 are in sync with file version 6. FIG.

서버(100)는 적어도 하나의 단말에서 파일의 수정이 발생할 때마다 단말로부터 델타 파일을 수신하여 파일 버전에 대응하여 저장하고 있다. 예를 들어, 서버(100)는 파일 버전 1와 파일 버전 2의 차이점인 제 1 블록 수정 내용을 포함하는 제 1 델타 파일, 파일 버전 2 와 파일 버전 3의 차이점인 제 2 블록 수정 내용을 포함하는 제 2 델타 파일, 파일 버전 3과 파일 버전 4의 차이점인 제 3 블록 수정 내용을 포함하는 제 3 델타 파일, 파일 버전 4와 파일 버전 5의 차이점인 제 3 블록 및 제 4 블록 수정 내용을 포함하는 제 4 델타 파일 및 파일 버전 5와 파일 버전 6의 차이점인 제 5 블록 수정 내용을 포함하는 제 5 델파 파일을 파일 버전에 대응하여 저장하고 있다.The server 100 receives a delta file from the terminal whenever a file is modified in at least one terminal and stores the file in correspondence with the file version. For example, server 100 may include a first delta file that includes a first block modification that is a difference between file version 1 and a file version 2, and a second block modification that is a difference between file version 2 and file version 3 Third delta file, which contains the third block modification that is the difference between file version 3 and file version 4 Third delta file, which contains the third block and fourth block modification that is the difference between file version 4 and file version 5 A fifth delta file including the fourth delta file and the fifth block modification that is a difference between the file version 5 and the file version 6 is stored corresponding to the file version.

여기서, 델타 파일 현재 파일 버전에서 이전 파일 버전으로 복귀할 수 있는 파일로, 예를 들어 제 1 델타 파일은 파일 버전 2에서 파일 버전 1로 복귀할 수 있는 파일이다.Here, the delta file is a file that can return to the previous file version from the current file version, for example, the first delta file is a file that can return to file version 1 from the file version 2.

도 4를 참조하면, 제 1 단말(201)은 현재 파일 버전을 특정 파일 버전으로 복원하기 위해서 서버(100)로 파일 버전 히스토리를 요청한다(S401). 서버(100)는 제 1 단말(201)로 파일 버전 히스토리를 전송한다(S402). 제 1 단말(201)은 파일 버전 히스토리 중 복원 대상 파일 버전인 파일 버전 1을 선택하고(S403), 파일 버전 1로 복원하기 위한 백워드 델타 파일을 서버(100)로 요청한다(S404).Referring to FIG. 4, the first terminal 201 requests the file version history from the server 100 to restore the current file version to a specific file version (S401). The server 100 transmits a file version history to the first terminal 201 (S402). The first terminal 201 selects a file version 1, which is a restoration target file version, from the file version history (S403), and requests the server 100 for a backward delta file for restoring to file version 1 (S404).

서버(100)는 현재 파일 버전인 파일 버전 6에서부터 복원 대상 파일 버전인 파일 버전 1까지의 백워드 델타 파일을 검색한다(S405). 그 후, 서버(100)는 현재 파일 버전인 파일 버전 6에서부터 복원 대상 파일 버전인 파일 버전 1까지의 파일에 대해서 수정한 부분에 중복되는 부분이 존재하는지 판단한다(S406). The server 100 searches for backward delta files from file version 6, which is the current file version, to file version 1, which is a file version to be restored (S405). Thereafter, the server 100 determines whether there is a duplicate part in the modified part of the file from the file version 6 which is the current file version to the file version 1 which is the file version to be restored (S406).

서버(100)는 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재하지 않는다고 판단하면 현재 파일 버전인 파일 버전 6에서부터 복원 대상 파일 버전인 파일 버전 1까지의 파일 버전에 대해서 파일 버전 1로 복귀할 수 있는 백워드 델타 파일인 제 1 델타 파일 내지 제 5 델타 파일을 병합하여 새로운 델타 파일을 생성한다(S411). If the server 100 determines that there is no duplicate part in the modified portion of the file version, the server 100 returns to the file version 1 for the file versions from the current file version file version 6 to the restore target file version file version 1. A new delta file is generated by merging the first to fifth delta files which are backward delta files.

한편, 서버(100)는 파일 버전에 대해서 수정한 부분에 중복되는 부분이 존재한다고 판단하면, 예를 들어, 도 4의 실시예에서는 파일 버전 3에서 제 3 블록이 수정되어 파일 버전 4가 생성되었고, 파일 버전 4에서 제 3 블록 및 제 4 블록이 수정되어 파일 버전 5가 생성되었으므로 서버(100)는 파일 버전 4 및 파일 버전 5에 수정한 부분이 중복된다고 판단한다. On the other hand, if the server 100 determines that there is a duplicate part in the modified part for the file version, for example, in the embodiment of FIG. 4, the third block is modified in the file version 3 to generate the file version 4. Since the third block and the fourth block are modified in the file version 4 and the file version 5 is generated, the server 100 determines that the modified portions of the file version 4 and the file version 5 are duplicated.

먼저, 서버(100)는 현재 파일 버전인 파일 버전 6에서부터 복원 대상 파일 버전인 파일 버전 1까지의 파일 버전에 대해서 중복된 부분이 존재하기 전까지의 파일 버전으로 복귀하기 위한 백워드 델타 파일인 제 5 델타 파일 및 제 4 델타 파일을 병합하여 파일 버전 6에서 파일 버전 4로 복귀할 수 있는 델타 파일을 생성하여(S407) 제 1 단말(201)로 전송한다(S408).First, the server 100 is a fifth delta file, which is a backward delta file for returning to a file version until a duplicate part exists for a file version from a file version 6 that is a current file version to a file version 1 that is a file to be restored. The delta file and the fourth delta file are merged to generate a delta file capable of returning from the file version 6 to the file version 4 (S407) and transmitted to the first terminal 201 (S408).

다음으로, 서버(100)는 수정한 부분에 중복된 부분이 존재하는 파일 버전에 대해서, 파일 버전으로 복귀하기 위한 백워드 델타 파일인 제 3 델타 파일을 제 1 단말(201)로 전송하여, 파일 버전 4에서 파일 버전 3으로 복귀할 수 있도록 한다(S409). Next, the server 100 transmits, to the first terminal 201, the third delta file, which is a backward delta file for returning to the file version, for the file version in which the duplicated part exists in the modified part. It is possible to return to file version 3 from version 4 (S409).

그런 다음, 서버(100)는 제 1 단말(201)이 복원하고자 하는 파일 버전으로 복원 되었는지 판단한다(S410). 서버(100)는 제 1 단말(201)이 복원하고자 하는 파일 버전으로 복원되지 않았으면, 나머지 복원 대상 파일 버전에 대해서 중복된 부분이 존재하는지 판단하는 단계(S406)로 되돌아가 복원하고자 하는 파일 버전으로 복원될 때까지 상기한 과정을 반복하여 수행한다. Then, the server 100 determines whether the first terminal 201 is restored to the file version to be restored (S410). If the first terminal 201 is not restored to the file version to be restored, the server 100 returns to step S406 of determining whether a duplicate part exists for the remaining file version to be restored (S406). Repeat the above process until it is restored to.

여기서, 서버(100)는 나머지 복원 대상 파일 버전까지의 파일 버전으로 복귀하기 위한 제 1 델타 파일 및 제 2 델타 파일을 병합하여 파일 버전 3에서 파일 버전 1로 복귀할 수 있는 델타 파일을 생성하여 제 1 단말(201)로 전송한다.Here, the server 100 merges the first delta file and the second delta file for returning to the file version up to the restoring target file version, and generates a delta file for returning from the file version 3 to the file version 1. 1 is transmitted to the terminal 201.

그리고, 서버(100)는 제 1 단말(201)로 전송한 새로운 델타 파일을 및 백워드 델타 파일을 이용하여 복원 대상 파일 버전으로 동기화를 수행하고(S412), 제 2 단말(203)로 새로운 델타 파일 및 백워드 델타 파일을 전송하여 복원 대상 파일 버전으로의 동기화를 요청한다(S413). Then, the server 100 synchronizes the new delta file transmitted to the first terminal 201 to the restoration target file version using the and the delta file (S412), and the new delta to the second terminal 203. The file and the backward delta file are transmitted to request synchronization of the restored target file version (S413).

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

100: 서버 201: 제 1 단말
203: 제 2 단말
100: server 201: first terminal
203: second terminal

Claims (10)

클라우드 시스템의 서버에서 실행되는 파일 복원 방법에 있어서,
단말로부터 파일 버전 히스토리 중 복원 대상 파일 버전의 정보를 수신하는 단계;
상기 복원 대상 파일 버전의 정보에 기반하여 현재 파일 버전에서부터 상기 복원 대상 파일 버전까지의 파일 버전에 대해서 수정한 부분에 중복이 존재하는지 판단하는 단계;
상기 판단 결과에 따라 상기 현재 파일 버전에서 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 생성하는 단계; 및
상기 생성한 하나의 델타 파일을 상기 단말로 전송하여 상기 현재 파일 버전에서 상기 복원 대상 파일 버전이 되도록 상기 단말의 동기화를 수행하는 단계를 포함하는 것을 특징으로 하는 파일 복원 방법.
In the file restoration method running on a server of a cloud system,
Receiving information of a restoration target file version of the file version history from the terminal;
Determining whether duplication exists in a portion modified for the file version from the current file version to the restore target file version based on the information of the restore target file version;
Generating one delta file for returning from the current file version to the restoration target file version according to the determination result; And
And transmitting the generated one delta file to the terminal and synchronizing the terminal to become the restoration target file version from the current file version.
제 1 항에 있어서, 상기 하나의 델타 파일을 생성하는 단계는,
상기 판단 결과 상기 수정한 부분에 중복된 부분이 존재하지 않는 경우, 상기 복원 대상 파일 버전으로 복귀하기 위한 복수 개의 델타 파일을 병합하여 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 생성하는 것을 특징으로 하는 파일 복원 방법.
The method of claim 1, wherein generating the one delta file comprises:
If the duplicated portion does not exist in the modified portion as a result of the determination, merging a plurality of delta files for returning to the restoration target file version and generating one delta file for returning to the restoration target file version File restore method.
제 1 항에 있어서, 상기 하나의 델타 파일을 생성하는 단계는,
상기 판단 결과 상기 수정한 부분에 중복된 부분이 존재하는 경우, 상기 현재 파일 버전에서부터 상기 중복된 부분이 존재하기 전까지의 파일 버전에 대해서 해당 버전으로 복귀하기 위한 복수 개의 델타 파일을 병합하여 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 생성하는 것을 특징으로 하는 파일 복원 방법.
The method of claim 1, wherein generating the one delta file comprises:
If there is a duplicate part in the modified part as a result of the determination, a plurality of delta files for returning to the version of the file version from the current file version until the duplicate part exists are merged to restore the target object. A method for restoring a file, characterized by generating one delta file for returning to the file version.
제 3 항에 있어서, 상기 하나의 델타 파일을 생성하는 단계는,
상기 중복된 부분이 존재하는 파일 버전에 대해서, 해당 버전으로 복귀하기 위해 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 상기 단말로 전송하여 상기 단말의 동기화를 수행하는 것을 특징으로 하는 파일 복원 방법.
The method of claim 3, wherein generating the one delta file comprises:
For a file version in which the duplicated part exists, one delta file for returning to the restoration target file version is transmitted to the terminal so as to perform synchronization of the terminal. Way.
제 1 항에 있어서, 상기 하나의 델타 파일은,
상기 현재 파일 버전에서 이전 파일 버전으로 복귀하기 위한 파일인 것을 특징으로 하는 파일 복원 방법.
The method of claim 1, wherein the one delta file,
And a file for returning from the current file version to a previous file version.
단말로부터 파일 버전 히스토리 중 복원 대상 파일 버전의 정보 요청을 수신하는 수신부;
상기 단말에서 파일의 수정이 발생할 시 생성된 백워드 델타 파일을 수신하고, 상기 백워드 델타 파일을 파일 버전에 대응하여 저장하는 저장부;
상기 저장부에 저장된 백워드 델타 파일 중 현재 파일 버전에서부터 상기 수신한 복원 대상 파일 버전의 정보 요청에 상응하는 파일 버전까지 수정한 부분에 중복이 존재하는지 판단하는 판단부; 및
상기 판단 결과에 따라 하나의 델타 파일을 생성하여 상기 현재 파일 버전에서 상기 복원 대상 파일 버전이 되도록 상기 단말의 동기화를 수행하는 동기화부를 포함하는 것을 특징으로 하는 서버.
A receiving unit for receiving an information request of a file version to be restored from the file version history from the terminal;
A storage unit which receives a backward delta file generated when a file is modified in the terminal and stores the backward delta file corresponding to a file version;
A determination unit for determining whether a duplicate exists in a portion of a backward delta file stored in the storage unit, from a current file version to a file version corresponding to the received request information of the restoration target file version; And
And a synchronization unit generating one delta file according to the determination result and performing synchronization of the terminal to become the restoration target file version from the current file version.
제 6 항에 있어서, 상기 동기화부는,
상기 판단 결과 상기 수정한 부분에 중복된 부분이 존재하지 않는 경우, 상기 복원 대상 파일 버전으로 복귀하기 위한 복수 개의 델타 파일을 병합하여 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 상기 단말로 전송하여 상기 단말의 동기화를 수행하는 것을 특징으로 하는 서버.
The method of claim 6, wherein the synchronization unit,
If there is no duplicate part in the modified portion as a result of the determination, a delta file for merging a plurality of delta files for returning to the restoration target file version and returning to the restoration target file version is returned to the terminal. The server, characterized in that for performing the synchronization of the terminal.
제 6 항에 있어서, 상기 동기화부는,
상기 판단 결과 상기 수정한 부분에 중복된 부분이 존재하는 경우, 상기 현재 파일 버전에서부터 상기 중복된 부분이 존재하기 전까지의 파일 버전에 대해서 해당 버전으로 복귀하기 위한 복수 개의 델타 파일을 병합하여 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 생성하고, 상기 복원 대상 파일 버전으로 복귀하기 위한 하나의 델타 파일을 상기 단말로 전송하여 상기 단말의 동기화를 수행하는 것을 특징으로 하는 서버.
The method of claim 6, wherein the synchronization unit,
If there is a duplicated portion in the modified portion as a result of the determination, the restoration target by merging a plurality of delta files for returning to the corresponding version of the file version from the current file version until the duplicated portion exists And generating one delta file for returning to the file version, and transmitting one delta file for returning to the restoration target file version to the terminal to perform synchronization of the terminal.
삭제delete 제 8 항에 있어서, 상기 하나의 델타 파일은,
상기 현재 파일 버전에서 이전 파일 버전으로 복귀하기 위한 파일인 것을 특징으로 하는 서버.
The method of claim 8, wherein the one delta file,
And a file for returning from the current file version to a previous file version.
KR1020110087528A 2011-08-31 2011-08-31 Method of restoring file and system for the same KR101298852B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110087528A KR101298852B1 (en) 2011-08-31 2011-08-31 Method of restoring file and system for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110087528A KR101298852B1 (en) 2011-08-31 2011-08-31 Method of restoring file and system for the same

Publications (2)

Publication Number Publication Date
KR20130024221A KR20130024221A (en) 2013-03-08
KR101298852B1 true KR101298852B1 (en) 2013-08-23

Family

ID=48176328

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110087528A KR101298852B1 (en) 2011-08-31 2011-08-31 Method of restoring file and system for the same

Country Status (1)

Country Link
KR (1) KR101298852B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101893950B1 (en) * 2018-02-06 2018-08-31 주식회사 이스트시큐리티 Apparatus for centralization and security of file based on Wake-on-LAN, method thereof and computer recordable medium storing program to perform the method
CN110764951B (en) * 2018-07-26 2023-04-07 宏碁股份有限公司 Computer system and fault-tolerant processing method of mapping file

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050089551A (en) * 2004-03-05 2005-09-08 삼성전자주식회사 System for syncronizing data and method for syncronizing data between server and client using the same
KR20070059948A (en) * 2005-12-07 2007-06-12 한국전자통신연구원 Structure and method of in-vehicle sync manager for telematics data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050089551A (en) * 2004-03-05 2005-09-08 삼성전자주식회사 System for syncronizing data and method for syncronizing data between server and client using the same
KR20070059948A (en) * 2005-12-07 2007-06-12 한국전자통신연구원 Structure and method of in-vehicle sync manager for telematics data

Also Published As

Publication number Publication date
KR20130024221A (en) 2013-03-08

Similar Documents

Publication Publication Date Title
CN108111331B (en) Method, device, storage medium, processor and system for acquiring update data packet
CN108121782B (en) Distribution method of query request, database middleware system and electronic equipment
CN107181686B (en) Method, device and system for synchronizing routing table
CN103019960B (en) Distributed caching method and system
CN105677675B (en) Method for processing business and device
CN104488248A (en) File synchronization method, server and terminal
CN105205143A (en) File storage and processing method, device and system
CN110704376A (en) Log file saving method and device
CN111651424B (en) Data processing method, device, data node and storage medium
CN104111957A (en) Method and system for synchronizing distributed transaction
WO2019162830A1 (en) Chronologically ordered out-of-place update key-value storage system
CN104580428A (en) Data routing method, data management device and distributed storage system
US11128622B2 (en) Method for processing data request and system therefor, access device, and storage device
CN104517067A (en) Method, device and system for data access
KR101298852B1 (en) Method of restoring file and system for the same
CN104063377A (en) Information processing method and electronic equipment using same
CN107623705B (en) Storage mode upgrading method, device and system based on video cloud storage system
CN110798358B (en) Distributed service identification method and device, computer readable medium and electronic equipment
KR101286434B1 (en) Method of synchronizing file and system for the same
CN103220336B (en) The implementation method of vector clock and system in a kind of file synchronization
CN115189931A (en) Distributed key management method, device, equipment and storage medium
CN112685613B (en) Resource package query method and device and information processing system
CN109325057B (en) Middleware management method, device, computer equipment and storage medium
CN109857719B (en) Distributed file processing method, device, computer equipment and storage medium
CN113742376A (en) Data synchronization method, first server and data synchronization system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160812

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170808

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190812

Year of fee payment: 7