KR101274553B1 - Classification and synchronization method of sync data - Google Patents

Classification and synchronization method of sync data Download PDF

Info

Publication number
KR101274553B1
KR101274553B1 KR1020110021740A KR20110021740A KR101274553B1 KR 101274553 B1 KR101274553 B1 KR 101274553B1 KR 1020110021740 A KR1020110021740 A KR 1020110021740A KR 20110021740 A KR20110021740 A KR 20110021740A KR 101274553 B1 KR101274553 B1 KR 101274553B1
Authority
KR
South Korea
Prior art keywords
data
server
client
synchronization
side data
Prior art date
Application number
KR1020110021740A
Other languages
Korean (ko)
Other versions
KR20120103847A (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 KR1020110021740A priority Critical patent/KR101274553B1/en
Publication of KR20120103847A publication Critical patent/KR20120103847A/en
Application granted granted Critical
Publication of KR101274553B1 publication Critical patent/KR101274553B1/en

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems

Abstract

본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은 자료의 맵핑 상태를 확인하여 확인된 맵핑 상태에 따라 자료를 분류하고, 맵핑되지 않은 자료의 상태 속성이 '삭제'인지의 여부를 확인하여 맵핑되지 않고 상태 속성이 '삭제'가 아닌 자료에 대해서만 트윈이 존재하는지의 여부를 확인하고, 맵핑되지 않았으며 상태 속성이 '삭제'인 자료에 대해서는 동기화 처리를 수행하지 않고 자료의 내용을 제외한 자료의 식별자(ID)만을 포함시킨다. 따라서, 동기화 처리 과정에서 트윈 확인 범위를 줄이고 트윈 확인시 내부적 지문을 생성 사용함으로써 정확한 트윈 검색이 이루어질 수 있으며 동기화가 불필요한 자료에 대하여 식별자((D)만을 포함시키므로 패킷량이 감소될 수 있다. 이를 통해 동기화 처리의 속도를 개선하고, 동기화 처리 과정에서의 오류를 방지할 수 있다.The classification and synchronization processing method of the synchronization data according to the present invention checks the mapping status of the data and classifies the data according to the confirmed mapping status, and checks whether or not the status attribute of the unmapped data is mapped. Checks whether a tween exists only for data whose status attribute is not 'delete', and does not perform synchronization processing on data that is not mapped and whose status attribute is 'delete' Include only (ID). Therefore, by reducing the twin identification range in the synchronization process and generating an internal fingerprint during the twin identification, an accurate twin search can be performed, and the packet amount can be reduced because only the identifier (D) is included for the data that is not synchronized. It is possible to improve the speed of the synchronization process and to prevent errors in the synchronization process.

Description

동기화 데이터의 분류 및 동기화 처리 방법{CLASSIFICATION AND SYNCHRONIZATION METHOD OF SYNC DATA}CLASSIFICATION AND SYNCHRONIZATION METHOD OF SYNC DATA}

본 발명은 유무선 네트워크를 통한 클라이언트-서버 시스템에서 클라이언트(유무선 디바이스)와 서버간 동기화가 필요한 동기화 데이터(예컨대, 주소록, 일정, 이메일 등)의 분류 및 동기화 처리 방법에 관한 것이다.The present invention relates to a method for classifying and synchronizing synchronization data (eg, address book, calendar, email, etc.) requiring synchronization between a client (wireless device) and a server in a client-server system via a wired or wireless network.

유무선 네트워크를 통한 클라이언트-서버 시스템에 있어서, 모바일 디바이스 또는 PC 장치에서 주소록, 일정, 이메일 등의 동기화가 가능한 자료를 서버와 동기화시키는 과정에서 같은 자료임을 인지시키는 지문(Finger Print)과, 같은 자료임을 확인하는 맵핑 데이터(Mapping Data)를 생성하여 사용하게 된다. 이 맵핑 테이터를 기준으로 클라이언트에서의 변경 사항과 서버에서의 변경 사항을 확인하여 클라이언트나 서버에서 자료를 생성/수정/변경하게 된다.In the client-server system through a wired / wireless network, a fingerprint (Finger Print) that recognizes the same data in the process of synchronizing the synchronization data of the address book, calendar, email, etc. with the server in the mobile device or PC device It creates and uses mapping data to check. Based on this mapping data, changes on the client and changes on the server are checked to create, modify, and change data on the client or server.

이와 같이 맵핑 데이터가 존재하는 경우에 이를 이용하여 작업이 가능하지만 맵핑 데이터가 존재하지 않는 자료에 대하여 중복적으로 처리하는 과정에서 사용자의 의도와 다르게 맵핑되거나 불완전한 처리가 될 수 있다.As such, when mapping data exists, work can be performed by using it, but in the process of overlapping the data for which mapping data does not exist, the mapping data may be mapped or incompletely processed according to the user's intention.

이것을 개선하기 위해 자료를 확인함에 있어 맵핑 데이터가 존재하는 자료와 맵핑 데이터가 존재하지 않는 자료로 구분하고, 이에 대하여 사용자의 의도를 감안하여 별도 처리를 할 필요가 있다.In order to improve this, it is necessary to classify the data into data in which mapping data exists and data in which mapping data does not exist, and process them separately in consideration of the user's intention.

예컨대, 동기화 자료가 주소록인 경우에 있어서 사용자가 서버에 자료를 생성하고 아직 동기화하지 않은 상황에서 동일 자료를 클라이언트에도 생성한 후 사용자가 서버에 자료가 있음을 알고 해당 자료를 클라이언트에서 삭제하고 동기화를 진행할 수 있다. 이러한 상황에서 동기화를 진행하게 되면 상태 속성이 '삭제'인 클라이언트측 자료와 상태 속성이 '생성'인 서버측 자료는 상태 속성에 있어서 상충된 자료이므로 일반적인 동기화 처리 과정에 의하면 서버의 자료가 삭제되거나 클라이언트의 삭제된 자료가 재 생성되어 동기화가 이루어지게 된다. 일단 서버에서 생성된 자료를 삭제할 경우 이를 동기화하지 않은 클라이언트에서는 새로 생성해도 지문이 같다면 동기화 처리의 기준이 '서버측 우선'인 경우에 클라이언트측 자료가 다시 삭제되는 현상을 발생시킬 수도 있다.For example, if the synchronization data is an address book, the user creates the data on the server and generates the same data on the client, but the user deletes the data from the client and realizes the synchronization. You can proceed. In this situation, if the synchronization proceeds, client-side data with a status attribute of 'delete' and server-side data with a status attribute of 'creation' are conflicting data in the status attribute. Deleted data from the client is regenerated and synchronized. Once the data generated by the server is deleted, if the fingerprint is the same even if a new one is generated from the client which has not synchronized, the client-side data may be deleted again when the synchronization process is 'server-side priority'.

이러한 결과가 발생되는 것을 방지하기 위한 일반적인 방법은 맵핑 데이터가 없는 자료는 모두 독립된 자료로 취급하고, 지문에 대한 검사 없이 서로 다른 자료로 간주하여 2개의 중복된 자료가 존재하게 되기 때문에 사용자의 의도에 부합하는 동기화 처리라고 보기 어렵다.The general way to prevent this from happening is to treat all data without mapping data as independent data, and to consider two different data without checking fingerprints. It is hard to think of a matching synchronization process.

본 발명의 상기 문제점을 감안하여 이루어진 것으로서 동기화 처리의 속도를 개선하고, 동기화 처리 과정에서의 오류를 방지할 수 있는 동기화 데이터의 분류 및 동기화 처리 방법을 제공하는 것을 목적으로 한다.The present invention has been made in view of the above problems, and an object thereof is to provide a method of classifying and synchronizing synchronization data which can improve the speed of synchronization processing and prevent errors in the synchronization processing.

상기 목적을 달성하기 위해 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은,In order to achieve the above object, the classification and synchronization processing method of the synchronization data according to the present invention,

클라이언트로부터 클라이언트측 자료를 전송받아 자료의 상태 속성에 따라 분류하고, 상기 클라이언트측 자료를 서버측 자료와 맵핑된 자료와 맵핑되지 않은 자료로 분류하는 제 1 스텝;Receiving client-side data from a client and classifying the client-side data into data mapped to server-side data and unmapped data according to a state attribute of the data;

서버측 자료를 자료의 상태 속성에 따라 분류하고, 상기 서버측 자료를 상기 클라이언트측 자료와 맵핑된 자료와 맵핑되지 않은 자료로 분류하는 제 2 스텝;A second step of classifying server-side data according to a state attribute of data, and classifying the server-side data into data mapped to the client-side data and unmapped data;

상기 제 1 , 제 2 스텝을 통해 분류된 자료를 취합하여 맵핑되어 있는 자료는 하나의 쌍으로 합하고, 맵핑되지 않은 자료는 독립적인 자료로 해당 자료의 상태 속성 그대로 동기화 처리 리스트에 포함시켜서 동기화 처리 리스트를 생성하는 제 3 스텝;The data classified through the first and second steps are collected and the mapped data are combined into a pair, and the unmapped data are independent data and included in the synchronization processing list as the state attribute of the corresponding data. Generating a third step;

상기 제 3 스텝에서 생성된 동기화 처리 리스트에 의해 동기화 처리를 시작할 첫번째 자료를 검색하여 처리 대상 자료로 지정하는 제 4 스텝;A fourth step of retrieving the first material to start the synchronization process from the synchronization process list generated in the third step and designating it as processing target material;

상기 동기화 처리 리스트에서 처리 대상으로 지정된 자료에 대하여 상기 클라이언트측 자료와 상기 서버측 자료가 서로 맵핑된 자료인지의 여부를 확인하는 제 5 스텝;A fifth step of checking whether or not the client-side data and the server-side data are data mapped to each other with respect to the material designated for processing in the synchronization processing list;

상기 제 5 스텝에서 맵핑되지 않은 자료로 판단된 클라이언트측 자료 및/또는 서버측 자료에 대하여 그 상태 속성이 '삭제'인지의 여부를 확인하는 제 6 스텝;A sixth step of checking whether the state attribute is 'delete' for the client-side data and / or server-side data determined as the unmapped data in the fifth step;

상기 제 6 스텝에서 상태 속성이 '삭제'가 아닌 것으로 판단된 클라이언트측 자료 및/또는 서버측 자료에 대하여 상대방측 자료에 트윈(동일 자료)이 존재하는지의 여부를 확인하는 제 7 스텝;A seventh step of checking whether a tween (same data) exists in the other party's data with respect to the client-side data and / or the server-side data determined that the state attribute is not 'deleted' in the sixth step;

상기 제 7 스텝에서 트윈이 존재하지 않으면 클라이언트측 자료 또는 서버측 자료에 대하여 일반적인 동기화 처리를 위한 설정을 추가하는 제 8 스텝; 및An eighth step of adding a setting for general synchronization processing to the client-side data or the server-side data if the tween does not exist in the seventh step; And

상기 제 8 스텝에서 각 자료에 설정된 지시 내용에 따라 상기 각 자료를 처리하고, 상기 동기화 처리 리스트에 처리할 다음 자료가 있는지의 여부를 확인하여 처리할 다음 자료가 있는 경우에 상기 제 5 스텝으로 진행시키는 한편, 처리할 다음 자료가 없는 경우에 동기화 처리가 완료된 자료를 상기 클라이언트로 전송함과 아울러 서버 자체적으로 업데이트시키는 제 9 스텝을 포함하는 것을 특징으로 한다.The eighth step is to process the respective data according to the instruction set in each data, check whether there is the next data to be processed in the synchronization processing list, and proceed to the fifth step if there is the next data to be processed. On the other hand, if there is no next data to be processed, it is characterized in that it comprises a ninth step of transmitting to the client the data that has completed the synchronization process and updates itself by the server.

또한, 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은,In addition, the classification and synchronization processing method of the synchronization data according to the present invention,

상기 제 5 스텝에서 처리 대상으로 지정된 자료가 맵핑된 자료라고 판단되면 맵핑된 것으로 판단된 클라이언트측 자료와 서버측 자료를 비교하여 상충이 존재하는지의 여부를 확인하는 제 10 스텝; 및A tenth step of checking whether or not there is a conflict by comparing the client-side data and the server-side data determined to be mapped when the data designated for processing in the fifth step is mapped data; And

상기 제 10 스텝에서 상충이 존재하지 않으면 상기 제 8 스텝으로 진행되는 한편, 상기 제 10 스텝에서 상충이 존재하면 해당 클라이언트측 자료와 서버측 자료에 대하여 상충을 해소하는 처리를 위한 설정을 추가하여 상기 제 9 스텝으로 진행시키는 스텝을 더 포함하는 것을 특징으로 한다.If there is no conflict in the tenth step, the process proceeds to the eighth step, and if there is a conflict in the tenth step, adding a setting for processing to resolve the conflict for the client-side data and the server-side data; And further comprising the step of proceeding to the ninth step.

또한, 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은,In addition, the classification and synchronization processing method of the synchronization data according to the present invention,

상기 제 6 스텝에서 해당 자료의 상태 속성이 '삭제'이면 동기화 처리가 불필요하다는 내용의 미처리 설정을 추가하여 상기 제 9 스텝으로 진행시키는 스텝을 더 포함하는 것을 특징으로 한다.The method further includes the step of proceeding to the ninth step by adding an unprocessed setting indicating that synchronization processing is unnecessary when the state attribute of the corresponding data is 'deleted' in the sixth step.

또한, 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은,In addition, the classification and synchronization processing method of the synchronization data according to the present invention,

상기 제 7 스텝에서 해당 자료에 대하여 상대방측 자료에 트윈이 존재하면 상기 제 10 스텝으로 진행되는 스텝을 더 포함하는 것을 특징으로 한다.The method may further include the step proceeding to the tenth step if the tween exists in the counterpart side data for the corresponding data in the seventh step.

또한, 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은,In addition, the classification and synchronization processing method of the synchronization data according to the present invention,

상기 제 7 스텝에서 트윈 검색시 상기 클라이언트측 자료에 대하여 서버의 내부적 처리에 의해 새로 생성된 지문과 상기 서버측 자료에 대하여 이전 동기화 처리에서 이미 생성된 지문을 비교하여 트윈을 검색하는 것을 특징으로 한다.In the seventh step, the tween is searched by comparing a fingerprint newly generated by an internal processing of a server with respect to the client-side data and a fingerprint already generated by a previous synchronization process with respect to the server-side data. .

또한, 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은,In addition, the classification and synchronization processing method of the synchronization data according to the present invention,

상기 제 9 스텝에서 동기화 처리가 완료된 자료를 상기 클라이언트로 전송할 때 상기 제 6 스텝에서 상태 속성이 '삭제'인 것으로 판단된 자료에 대해서는 상기 자료의 실제 내용을 제외한 자료의 식별자(ID)만을 포함시켜서 전송하는 것을 특징으로 한다.When transmitting the data whose synchronization process is completed in the ninth step to the client, only the identifier (ID) of the data excluding the actual contents of the data is included in the data determined that the state attribute is 'Deleted' in the sixth step. Characterized in that the transmission.

본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법은 자료의 맵핑 상태를 확인하여 확인된 맵핑 상태에 따라 자료를 분류하고, 맵핑되지 않은 자료의 상태 속성이 '삭제'인지의 여부를 확인하여 맵핑되지 않고 상태 속성이 '삭제'가 아닌 자료에 대해서만 트윈이 존재하는지의 여부를 확인하고, 맵핑되지 않았으며 상태 속성이 '삭제'인 자료에 대해서는 동기화 처리를 수행하지 않고 자료의 내용을 제외한 자료의 식별자(ID)만을 포함시킨다. 따라서, 동기화 처리 과정에서 트윈 확인 범위를 줄이고 트윈 확인시 내부적 지문을 생성 사용함으로써 정확한 트윈 검색이 이루어질 수 있으며 동기화가 불필요한 자료에 대하여 식별자((D)만을 포함시키므로 패킷량이 감소될 수 있다. 이를 통해 동기화 처리의 속도를 개선하고, 동기화 처리 과정에서의 오류를 방지할 수 있다.The classification and synchronization processing method of the synchronization data according to the present invention checks the mapping status of the data and classifies the data according to the confirmed mapping status, and checks whether or not the status attribute of the unmapped data is mapped. Checks whether a tween exists only for data whose status attribute is not 'delete', and does not perform synchronization processing on data that is not mapped and whose status attribute is 'delete' Include only (ID). Therefore, by reducing the twin identification range in the synchronization process and generating an internal fingerprint during the twin identification, an accurate twin search can be performed, and the packet amount can be reduced because only the identifier (D) is included for the data that is not synchronized. It is possible to improve the speed of the synchronization process and to prevent errors in the synchronization process.

도 1은 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법이 구현되는 유무선 네트워크를 통한 클라이언트-서버 시스템의 구성도이다.
도 2는 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법을 나타낸 처리 흐름도이다.
도 3은 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법에 의해 상태 속성과 맵핑 여부에 따라 분류된 동기화 대상 자료에 대하여 동기화 처리 순번을 지정한 동기화 처리 리스트의 일례와 각 자료에 대한 설명이 포함된 표이다.
1 is a configuration diagram of a client-server system via a wired or wireless network in which a method of classifying and synchronizing synchronization data according to the present invention is implemented.
2 is a flowchart illustrating a method of classifying and synchronizing synchronization data according to the present invention.
FIG. 3 includes an example of a synchronization processing list specifying synchronization processing sequence numbers for synchronization target materials classified according to status attributes and mapping according to the classification and synchronization processing method of synchronization data according to the present invention, and description of each data. Table.

이하, 본 발명을 실시하기 위한 바람직한 실시형태에 대하여 첨부 도면을 참조하여 상세히 설명한다.EMBODIMENT OF THE INVENTION Hereinafter, preferred embodiment for implementing this invention is described in detail with reference to an accompanying drawing.

도 1은 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법이 구현되는 유무선 네트워크를 통한 클라이언트-서버 시스템의 구성도이다. 도 1에 도시된 바와 같이 유무선 네트워크를 통한 클라이언트-서버 시스템은 유무선 네트워크를 통해 서버(200)와 접속되어 서버측 자료와의 동기화를 요청하게 되는 클라이언트(휴대폰, PC, PDA 등의 유선 또는 무선 디바이스)(100)와, 클라이언트(100)와 유무선 네트워크를 통해 접속되어 있는 서버(200)로 구성되며, 상기 서버(200)는 클라이언트 자료와 콘텐트 서버 자료를 서로 연결하는 맵핑 리스트를 생성/유지/관리하고 클라이언트(100)의 동기화 요청에 따라 동기화 작업을 관리/처리하는 동기화 서버(201)와, 클라이언트(100)와 동기화될 주소록, 일정, 이메일 등의 실제 동기화 자료를 저장/관리하는 콘텐트 서버(203)와, 실제 동기화 자료가 상기 콘텐트 서버(203)와 상기 동기화 서버(201) 사이에서 전송될 수 있도록 두 서버의 연결을 담당하는 커넥터 서버(202)를 포함한다.1 is a configuration diagram of a client-server system via a wired or wireless network in which a method of classifying and synchronizing synchronization data according to the present invention is implemented. As shown in FIG. 1, a client-server system through a wired or wireless network is connected to the server 200 via a wired or wireless network to request synchronization with server-side data (wired or wireless device such as a mobile phone, a PC, or a PDA). (100), and the server 200 is connected to the client 100 through a wired or wireless network, the server 200 generates / maintains / manages a mapping list that connects client data and content server data to each other And a synchronization server 201 that manages / processes a synchronization task according to a synchronization request of the client 100, and a content server 203 that stores / manages actual synchronization data such as an address book, a schedule, and an email to be synchronized with the client 100. And a connector server 202 responsible for connecting the two servers so that actual synchronization data can be transferred between the content server 203 and the synchronization server 201. It includes.

클라이언트(100)로부터 동기화 요청이 있으면 동기화 서버(201)는 클라이언트(100)로부터 클라이언트측 자료를 유.무선 네트워크를 통해 전송받고, 콘텐트 서버(203)로부터 서버측 자료를 커넥터 서버(202)를 통해 전송받아 동기화 처리를 진행하고, 동기화 처리가 완료되면 동기화 서버(201)는 동기화된 자료를 각각 유무선 네트워크와 커넥터 서버(202)를 통해 클라이언트(100)와 콘텐트 서버(203)로 전송하게 된다. 동기화 서버(201)는 동기화 처리 단계에서 동기화가 이루어지는 클라이언트측 자료 및 서버측 자료에 대하여 같은 자료임을 인지시키는데 사용되는 지문을 생성하고, 같은 자료임이 확인된 대응하는 클라이언트측 자료와 서버측 자료를 서로 연결하는 맵핑 리스트를 생성하는 역할도 담당하게 된다.If there is a synchronization request from the client 100, the synchronization server 201 receives the client-side data from the client 100 through a wired / wireless network, and the server-side data from the content server 203 through the connector server 202. When the synchronization process is received and the synchronization process is completed, the synchronization server 201 transmits the synchronized data to the client 100 and the content server 203 through the wired / wireless network and the connector server 202, respectively. The synchronization server 201 generates a fingerprint used for recognizing the same data for the client-side data and the server-side data to be synchronized in the synchronization processing step, and synchronizes the corresponding client-side data and the server-side data that are identified as the same data. You will also be responsible for creating a list of mappings to connect to.

이어서, 지문과 맵핑 데이터에 대하여 상세히 설명한다.Next, the fingerprint and the mapping data will be described in detail.

지문은 각 동기화 자료의 고유성을 가질 수 있는 필드를 기준으로 해쉬 알고리즘(Hash Algorithm)을 사용하여 생성된 값(예컨대 22자리 정수)을 사용하며 고유성을 가지는 필드는 동기화 자료의 종류마다 다를 수 있다. 예를 들어, 주소록의 경우, 성명, 회사 및 부서, 전화번호가 동일하다면 동일인으로 판단할 수 있기 때문에 성명, 회사 및 부서, 전화번호를 이용해 중복되지 않는 특정 정수를 해쉬 알고리즘을 이용하여 생성하고, 이 값이 동일하다면 동일인의 주소록 자료로 인식하게 된다. 이와 같이 지문은 주소록의 경우에 동일인의 주소록 데이터임을 확인하는 수단이 된다.The fingerprint uses a value (eg, a 22-digit integer) generated using a hash algorithm based on a field that may have uniqueness of each sync data, and a field having uniqueness may be different for each kind of sync data. For example, in the case of the address book, if the name, company and department, and phone number are the same, the same person can be judged. Therefore, a specific integer that is not duplicated using the name, company, department, and phone number is generated using the hash algorithm. If this value is the same, it is recognized as the address book data of the same person. Thus, the fingerprint is a means for confirming that the address book data of the same person in the case of the address book.

서버(200)에 접속되어 동기화 처리를 요청하는 유.무선 디바이스(클라이언트)(100)는 복수일 수 있다. 이러한 경우를 감안하여 동기화 처리가 이루어진 자료에 대하여 전역적으로 유일한 한개의 키(전역키, Global ID)를 생성하고 이것을 각 디바이스(100)에 맵핑으로 연결해 둠으로써 디바이스(100)에서 생성된 자료의 디바이스 고유키(지역키, Local ID)가 콘텐트 서버(203)의 어떤 자료와 동일한 자료인지를 디바이스별로 미리 파악하여 둔 정보가 담겨있는 것이 맵핑 데이터이다. 예를 들면, 다음과 같다.There may be a plurality of wired and wireless devices (clients) 100 connected to the server 200 and requesting synchronization processing. In view of such a case, a globally unique single key (global key, Global ID) is generated for the synchronized data, and the mapping is performed to each device 100 to map the data generated by the device 100. Mapping data is information containing information that has been previously identified for each device as to which material of the content server 203 is the same as the device unique key (local key, Local ID). For example:

디바이스 지역 키 : L1Device Local Key: L1

콘텐트 서버 지역 키 : S12Content server local key: S12

동기화 서버 광역 키 : G200Synchronization server wide key: G200

이러한 경우에 다음과 같이 맵핑이 이루어져서 맵핑 데이터가 생성된다.In this case, mapping is performed as follows to generate mapping data.

표 1은 디바이스-동기화 서버 맵핑의 일례이다.Table 1 is an example of device-synchronization server mapping.


GUID

GUID

LUID

LUID

G200

G200

L1

L1

표 2는 동기화 서버-콘텐트 서버 맵핑의 일례이다.Table 2 is an example of a synchronization server-content server mapping.


GUID

GUID

콘텐트 ID

Content ID

G200

G200

S12

S12

상기 2개의 표(DB 테이블)에 의거하여 디바이스의 L1 자료는 콘텐트 서버의 S12와 맵핑되었다는 것을 알 수 있고 L1이 수정되면 콘텐트 서버의 S12 자료를 변경할 수 있다.Based on the two tables (DB table), it can be seen that the L1 data of the device is mapped to the S12 of the content server. When L1 is modified, the S12 data of the content server can be changed.

도 2는 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법을 나타낸 처리 흐름도이다. 이하, 도 2에 도시된 각 스텝에 대하여 상세히 설명한다.2 is a flowchart illustrating a method of classifying and synchronizing synchronization data according to the present invention. Hereinafter, each step shown in FIG. 2 will be described in detail.

스텝(S101)은 서버(200)가 클라이언트(100)로부터 동기화 처리가 필요한 클라이언트측 자료를 유무선 네트워크를 통해 전송받아 그 자료를 취합하고 그 자료의 상태 속성에 따라 분류하는 스텝이다. 스텝(S102)은 동기화 처리가 필요한 서버측 자료를 취합하고 그 자료의 상태 속성에 따라 분류하는 스텝이다.Step S101 is a step in which the server 200 receives the client-side data requiring synchronization processing from the client 100 through the wired / wireless network, collects the data, and classifies the data according to the state attribute of the data. Step S102 is a step of collecting server-side data requiring synchronization processing and classifying the data according to the state attribute of the data.

스텝(S201)은 스텝(S101)을 통해 취합된 클라이언트측 자료를 맵핑된 자료와 맵핑되지 않은 자료, 즉 맵핑 데이터가 있는 자료와 맵핑 데이터가 없는 자료로 분류하는 스텝이다. 스텝(202)은 스텝(S102)을 통해 취합된 서버측 자료를 맵핑된 자료와 맵핑되지 않은 자료, 즉 맵핑 데이터가 있는 자료와 맵핑 데이터가 없는 자료로 분류하는 스텝이다.Step S201 is a step of classifying the client-side data collected through step S101 into mapped data and unmapped data, that is, data with mapping data and data without mapping data. Step 202 is a step of classifying the server-side data collected through step S102 into mapped data and unmapped data, that is, data with mapping data and data without mapping data.

스텝(S301)은 상기 스텝(S101, S102, S201, S202)을 통해 상태 속성과 맵핑 상태에 따라 분류된 클라이언트측 자료와 서버측 자료를 취합하고, 맵핑된 자료에 대하여 클라이언트(100)와 서버(200)에서 모두 변경이 있는 자료, 클라이언트(100)에서만 변경이 있는 자료, 서버(200)에서만 변경이 있는 자료로 구분/정리하고, 맵핑되어 있는 자료는 하나의 쌍으로 합하고, 그 이외의 자료(즉, 맵핑 데이터가 없는 자료)는 그 자료의 상태 속성을 그대로 동기화 처리 리스트에 포함시켜서 스텝(S401)∼스텝(S1001)을 통해 전체 동기화 대상 자료가 서버(200)에서 한번씩만 처리되게 하기 위한 동기화 처리 리스트를 생성하는 스텝이다.In step S301, the client-side data and the server-side data classified according to the state attribute and the mapping state are collected through the steps S101, S102, S201, and S202, and the client 100 and the server ( 200) All of the data that has changed, the data that has changed only in the client 100, the data that has changed only in the server (200) is divided / organized, and the data that is mapped is combined in one pair, other data ( That is, the data without mapping data) includes the state attribute of the data as it is in the synchronization processing list as it is so that the entire synchronization target data is processed only once in the server 200 through steps S401 to S1001. This step generates a processing list.

스텝(S401)은 상기 스텝(S301)에서 생성된 처리 리스트에 의해 동기화 처리를 시작할 첫번째 자료를 검색하여 처리 대상 자료로 지정하는 스텝이다.Step S401 is a step of retrieving the first material to start the synchronization process from the processing list generated in step S301 and designating it as processing target data.

스텝(S501)은 동기화 처리 리스트중 스텝(S401) 또는 스텝(S1001)(후술함)에서 처리 대상으로 지정된 자료에 대하여 상기 클라이언트측 자료와 상기 서버측 자료가 서로 맵핑된 자료인지의 여부를 확인하는 스텝이다.Step S501 checks whether or not the client-side data and the server-side data are data mapped to each other with respect to the data designated for processing in step S401 or step S1001 (to be described later) in the synchronization processing list. It's a step.

스텝(S601)은 상기 스텝(S501)에서 맵핑되지 않은 자료로 판단된 클라이언트측 자료 및/또는 서버측 자료에 대하여 그 상태 속성이 '삭제'인지를 확인하는 스텝이다.Step S601 is a step of checking whether the status attribute is 'delete' for the client-side data and / or server-side data determined as unmapped data in the step S501.

스텝(S701)은 상기 스텝(601)에서 상태 속성이 '삭제'가 아닌 것으로 판단된 클라이언트측 자료와 서버측 자료에 대하여 상대방측 자료에 트윈(동일 자료)이 있는지의 여부를 검색하는 스텝이다. 이때, 동기화 서버(201)는 트윈 검색시 상기 클라이언트측 자료에 대하여 동기화 서버(201)의 내부적 처리에 의해 내부적 지문을 새로 생성하고, 이 새로 생성된 클라이언트측 자료의 지문과 이전 동기화 처리에서 이미 생성된 (201) 서버측 자료의 지문을 비교하여 트윈을 검색한다. 지문 비교에 의한 트윈 검색의 결과로서 트윈이 존재하는 경우에는 트윈이 발견된 대응하는 클라이언트측 자료와 서버측 자료를 맵핑하는 새로운 맵핑 데이터를 생성하게 되고, 상세히 후술하는 스텝(S702)으로 진행된다. 트윈이 존재하지 않는 경우에는 클라이언트측에서만 새로 생성된 자료이거나 서버측에서만 새로 생성된 자료이므로 상세히 후술하는 스텝(S802)으로 진행된다. 이와 같이, 트윈 검색에 지문을 이용하기 때문에 검색 속도가 향상될 수 있다.Step S701 is a step of searching for whether there is a twin (same data) in the other party's data for the client-side data and the server-side data determined in step 601 that the status attribute is not 'delete'. At this time, the synchronization server 201 generates a new internal fingerprint by the internal processing of the synchronization server 201 with respect to the client-side data during the twin search, and has already generated the fingerprint of the newly generated client-side data and the previous synchronization process. The tween is searched by comparing the fingerprints of the (201) server-side data. If the tween exists as a result of the tween search by fingerprint comparison, new mapping data for mapping the corresponding client-side data and server-side data on which the tween is found is generated, and the flow proceeds to step S702 described later in detail. If the tween does not exist, the data is newly generated only on the client side or newly generated data only on the server side, and the flow proceeds to step S802 described in detail below. As such, since the fingerprint is used for the twin search, the search speed can be improved.

스텝(S702)은 스텝(S501)에서 맵핑된 것으로 판단된 클라이언트측 자료와 서버측 자료에, 또는 스텝(S701)에서 트윈이 검색되어 새롭게 맵핑된 클라이언트측 자료와 서버측 자료에 대하여 상충이 존재하는지 확인하는 스텝이다.In step S702, there is a conflict between the client-side data and the server-side data determined to be mapped in step S501, or the client-side data and the server-side data that the twin is searched for in step S701 and newly mapped. This step confirms.

상충이란 클라이언트측 자료와 서버측 자료 모두 이전 동기화 처리 이후에 동기화에 적용할 자료 변경 사항이 발생된 경우, 즉 클라이언트측 자료와 서버측 자료 모두 이전 동기화 처리 이후에 생성 및/또는 수정된 경우를 의미한다.A conflict is when both client-side and server-side data have data changes to apply to the synchronization since the previous synchronization process, that is, both client-side and server-side data have been created and / or modified since the previous synchronization process. do.

스텝(S801)은 스텝(S501)에서 맵핑되지 않은 것으로 판단되고, 스텝(S601)에서 상태 속성이 '삭제'인 것으로 판단된 클라이언트측 자료 또는 서버측 자료에 대하여 동기화 처리를 할 필요가 없다는 미처리 설정을 추가하는 스텝이다.Step S801 is determined as not mapped at step S501, and the unprocessed setting that there is no need to perform synchronization processing on the client-side data or server-side data determined at step S601 that the status attribute is 'Deleted'. It is a step to add.

스텝(S802)은 스텝(S501)->스텝(S702)을 통해 맵핑되었으며 상충이 존재하지 않는 것으로 판단된 자료, 그리고 스텝(S501)->스텝(S601)->스텝(S701)을 통해 맵핑되지 않았으며 상태 속성이 '삭제'가 아니고 트윈이 존재하지 않는 것으로 판단된 자료에 대하여 일반적인 동기화 처리가 이루어지도록 하기 위한 일반 동기화 처리 설정을 추가하는 스텝이다.Step S802 is mapped through step S501-> step S702 and it is determined that there is no conflict, and not mapped through step S501-> step S601-> step S701. Step that adds a general synchronization processing setting for general synchronization processing for data that is determined to have no status attribute and is not deleted and that the tween does not exist.

여기서, 일반적 동기화 처리는 여러 가지가 있을 수 있으나 대표적인 것을 예로 들어 설명하면 다음과 같다.Here, there may be a number of general synchronization processing, but will be described with a representative example as follows.

동기화 처리시 규칙은 서버 우선, 클라이언트 우선이 있을 수 있다. 서버 우선의 경우에는 서버측 자료의 내용을 기준으로 클라이언트측 자료를 서버측 자료와 동일한 내용으로 변경하여 동기화시키는 것이고, 클라이언트 우선의 경우에는 자료의 내용을 클라이언트측 자료의 내용을 기준으로 서버측 자료를 클라이언트측 자료와 동일한 내용으로 변경하여 동기화시키는 것을 말한다.In the synchronization process, rules may be server first and client first. In the server-first case, the client-side data is synchronized with the same content as the server-side data based on the contents of the server-side data. In the case of the client-first, the server-side data is based on the contents of the client-side data. To synchronize the data with the same content as client-side data.

스텝(S803)은 스텝(S501)->스텝(702)을 통해 맵핑되어 있으며 상충이 존재하는 것으로 판단된 자료에 대하여 소정의 상충 해소 정책에 따라 상충을 해소하는 처리가 이루어지도록 하기 위한 상충 해소 처리 설정을 추가하는 스텝이다.Step S803 is mapped through step S501 to step 702, and the conflict resolution processing is performed to resolve the conflict in accordance with a predetermined conflict resolution policy for the material determined to exist. This step adds a setting.

상충 해소 정책이란 예컨대, 서버측 자료와 클라이언트측 자료의 내용을 병합하여 동기화하는 것이 될 수 있다.The conflict resolution policy may be, for example, merging and synchronizing the contents of server-side data and client-side data.

스텝(S901)은 동기화 서버(201)가 스텝(S801), 스텝(S802), 스텝(S803)에서 각 자료에 설정된 지시 내용에 따라 각 자료를 처리하고 그 결과를 취합하는 스텝이다. 이 스텝에서는 동기화 처리의 결과로서 클라이언트 자료와 서버 자료를 연결하는 맵핑 리스트가 작성된다. 이때, 기존의 맵핑을 유지하는 경우에는 새로 맵핑할 필요가 없으며 새로 맵핑되는 자료에 대해서는 새로운 맵핑 정보가 맵핑 리스트에 포함된다. 또한, 동기화 처리가 완료되어 서버(200)에 저장될 서버측 자료 중 이전 동기화 과정에서 생성된 지문을 그대로 사용할 수 있는 자료를 제외한 새로운 지문 생성이 필요한 자료에 대해서는 상기한 바와 같이 동기화 자료의 고유성을 가질 수 있는 필드를 기준으로 해쉬 알고리즘을 사용하여 생성된 값을 사용하여 추후 동기화 과정에서 동일 자료임을 확인하기 위한 수단인 지문을 생성해 둔다.Step S901 is a step in which the synchronization server 201 processes each data in accordance with the instructions set for each data in steps S801, S802, and S803 and aggregates the results. In this step, as a result of the synchronization process, a mapping list for connecting the client data and the server data is created. In this case, if the existing mapping is maintained, there is no need for new mapping, and new mapping information is included in the mapping list for the newly mapped data. In addition, as described above, the uniqueness of the synchronization data is unique for the data requiring new fingerprint generation except for the data that can use the fingerprint generated in the previous synchronization process among the server-side data to be stored in the server 200 after completion of the synchronization process. Based on the fields that can have, a value generated using a hash algorithm is used to generate a fingerprint, which is a means for confirming that it is the same data in the later synchronization process.

스텝(S1001)은 스텝(S301)에서 생성된 처리 리스트에 의해 처리할 다음 자료가 있는지의 여부를 확인하여 처리할 다음 자료가 있는 경우에 그 자료를 처리 대상 자료로 지정하여 스텝(S501)으로 진행시키고 처리할 다음 자료가 없는 경우에 동기화 처리가 완료된 각 자료를 클라이언트(100)와 콘텐트 서버(203)로 전송하기 위한 스텝(S1002)으로 진행시키는 스텝이다.Step S1001 checks whether there is next data to be processed by the processing list generated in step S301, and if there is next data to be processed, designates the data as processing target data and proceeds to step S501. If there is no next data to be processed, the process proceeds to step S1002 for transmitting each material whose synchronization processing is completed to the client 100 and the content server 203.

스텝(S1002)은 스텝(S1001)에서 처리할 다음 자료가 없는 것으로 판단된 경우에 스텝(S901)에서 동기화 처리가 완료되어 그 결과가 취합된 자료를 각각 유무선 네트워크와 커넥터 서버(202)를 통해 각각 클라이언트(100)와 콘텐트 서버(203)로 전송하는 스텝이다.In step S1002, when it is determined that there is no next data to be processed in step S1001, the synchronization processing is completed in step S901, and the collected data is collected through the wired / wireless network and the connector server 202, respectively. This is a step of transmitting to the client 100 and the content server 203.

또한, 동기화 서버(201)가 스텝(S1002)에서 동기화 처리 완료 자료를 클라이언트(100)와 콘텐트 서버(203)로 전송할 때 스텝(S601)에서 상태 속성이 '삭제'인 것으로 판단되어 스텝(S801)에서 미처리 설정이 추가된 자료에 대해서는 자료의 실제 내용을 제외한 자료의 식별자(ID)만을 포함시킨다. 따라서, 전송 데이터의 패킷량이 감소되기 때문에 데이터 전송 속도가 향상될 수 있다.In addition, when the synchronization server 201 transmits the synchronization processing completed data to the client 100 and the content server 203 in step S1002, it is determined that the state attribute is 'delete' in step S601 and step S801. For data that has been added to the unprocessed configuration, only the identifier (ID) of the data is included, not the actual content of the data. Therefore, the data transmission speed can be improved because the packet amount of the transmission data is reduced.

도 3은 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법에 의해 스텝(S301)에서 생성되는 상태 속성과 맵핑 여부에 따라 분류된 동기화 대상 자료에 대하여 동기화 처리 순번을 지정한 동기화 처리 리스트의 일례와 각 자료에 대한 설명이 포함된 표이다. 이하, 도 3에 도시된 동기화 처리 리스트의 일례를 참조하여 각각의 자료가 어떻게 처리되는지 설명한다.Fig. 3 shows an example and each of the synchronization processing lists for which the synchronization processing sequence is specified for the synchronization target data classified according to the state attribute generated in step S301 and the mapping according to the synchronization data classification and synchronization processing method according to the present invention. This table contains a description of the data. Hereinafter, how each data is processed will be described with reference to an example of the synchronization processing list shown in FIG. 3.

도 3의 표에 있어서, '처리순번' 항목은 동기화 처리가 이루어지는 순번을 의미하고, '맵핑 여부' 항목은 클라이언트측 자료와 서버측 자료가 맵핑되어 있는지의 여부를 나타내는 것으로서 'YES'는 맵핑되어 있는 것을 의미하고, 'NO'는 맵핑되어 있지 않은 것을 의미한다.In the table of FIG. 3, the 'processing order' item means the order in which synchronization processing is performed, and the 'mapping status' item indicates whether or not client-side data and server-side data are mapped, and 'YES' is mapped. 'NO' means not mapped.

클라이언트 자료와 서버 자료의 하부 항목 중 '식별자(ID)' 항목은 각 자료의 고유 식별번호를 나타내고, '상태 속성' 항목에 있어서 '생성'은 이전 동기화 처리 이후 새로 생성된 자료라는 것을 의미하고, '수정'은 이전 동기화 처리 이후에 변경되었으며 변경이 이루어진 이후에 아직 동기화 처리가 이루어지지 않은 자료라는 것을 의미한다. '싱크'는 이전 동기화 처리에 의해 동기화되었으며 그후 아무런 변경이 없는 자료라는 것을 의미하고, '미존재'는 상태 속성이 '생성'인 자료와 맵핑되어 있는 상대측 자료가 존재하지 않는다는 것을 의미한다. '지문' 항목은 상기한 바와 같이 자료의 고유성을 가질 수 있는 필드를 기준으로 해쉬 알고리즘을 사용하여 생성된 값으로서 스텝(S701)에서 트윈 검색시에 사용된다. 서버측 자료는 동기화 처리 과정을 통해 스텝(S901)에서 생성되고 클라이언트측 자료의 경우에는 트윈 검색시에 필요에 따라 내부적으로 생성되므로 상기 스텝(S701)로 진행되지 않는 클라이언트측 자료는 지문이 생성되지 않는다.Among the sub-items of client data and server data, 'ID' item indicates unique identification number of each data and 'Generation' in 'status attribute' item means that data is newly generated after previous synchronization process. "Modified" means that the data has changed since the previous synchronization process and that has not yet been synchronized since the change was made. 'Sink' means that the data has been synchronized by the previous synchronization process and has not changed since then. 'None' means that there is no counterpart data mapped to the data whose status attribute is 'created'. The 'fingerprint' item is a value generated by using a hash algorithm based on a field which may have uniqueness of data as described above, and is used in the twin search in step S701. Since the server-side data is generated in step S901 through a synchronization process, and in the case of client-side data, it is generated internally as necessary during the twin search, so that fingerprints are not generated on the client-side data that does not proceed to step S701. Do not.

'동기화 처리 진행' 항목은 실제 스텝(S301)에서 생성되는 동기화 처리 리스트에는 포함되지 않지만 각 자료의 처리 과정에 대한 이해를 용이하게 하기 위한 부가 설명 항목으로서 각 자료가 전체 동기화 처리 과정에서 어떤 스텝을 거쳐서 동기화 처리가 이루어지는 지를 나타낸다. '비고' 항목도 실제 동기화 처리 리스트에는 포함되지 않지만 각 자료의 상태에 대한 용이한 이해를 도모하기 위해 부가적으로 기재된 내용이다.The 'synchronization processing progress' item is not included in the synchronization processing list generated in the actual step (S301), but is an additional description item to facilitate understanding of the processing of each data. It indicates whether or not synchronization processing is performed. 'Remarks' items are not included in the actual synchronization process list, but are additionally described for easy understanding of the state of each data.

도 3에 도시된 바와 같이, 처리 순번 1번 자료는 클라이언트측 자료(ID:C001)와 서버측 자료(ID:S1001)가 서로 맵핑되어 있으며 모두 이전 동기화 처리 이후 수정된 자료이므로 상태 속성이 '수정'으로 되어 있다. 이 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑된 자료로 판단되고(YES), 스텝(S702)에서 상충이 존재하는 것으로 판단되고(YES), 스텝(S803)에서 상충 해소 처리 설정이 이루어진다.As shown in FIG. 3, the processing sequence number 1 data has client-side data (ID: C001) and server-side data (ID: S1001) mapped to each other, and both have been modified since the previous synchronization process. ' This data is judged to be the data mapped in step S501 in the synchronization process shown in FIG. 2 (YES), it is determined that a conflict exists in step S702 (YES), and conflict in step S803. The resolution processing setting is made.

처리 순번 2번 자료는 클라이언트측 자료(ID:C002)와 서버측 자료(ID:S1002)가 서로 맵핑되어 있으며 클라이언트측 자료(ID:C002)만 이전 동기화 처리 이후 수정되었으며 서버측 자료(ID:S1002)는 이전 동기화 처리 이후 상태의 변경이 없는 자료이다. 이 처리 순번 2번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑된 자료로 판단되고(YES), 스텝(S702)에서 상충이 존재하지 않는 것으로 판단되고, 스텝(S802)에서 일반 동기화 처리 설정이 이루어진다.Data for Processing Sequence No. 2 is that client-side data (ID: C002) and server-side data (ID: S1002) are mapped to each other, only client-side data (ID: C002) has been modified since the previous synchronization process, and server-side data (ID: S1002). ) Is data that has not changed state since the previous synchronization process. This process number 2 data is determined to be the data mapped in step S501 in the synchronization process shown in FIG. 2 (YES), it is determined that there is no conflict in step S702, and step S802. General synchronization processing settings are made at.

처리 순번 3번 자료는 클라이언트측 자료(ID:C003)와 서버측 자료(ID:S1003)가 서로 맵핑되어 있으며 클라이언트측 자료(ID:C003)는 이전 동기화 처리 이후 상태의 변경이 없는 자료이고, 서버측 자료(ID:S1002)만 이전 동기화 처리 이후 수정된 자료이다. 이 처리 순번 3번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑된 자료로 판단되고(YES), 스텝(S702)에서 상충이 존재하지 않는 것으로 판단(NO)되고, 스텝(S802)에서 일반 동기화 처리 설정이 이루어진다.Data for Processing Sequence 3 is client-side data (ID: C003) and server-side data (ID: S1003) mapped to each other, and client-side data (ID: C003) is data that has not changed state since the previous synchronization process. Only the side data (ID: S1002) has been modified since the previous synchronization process. This process number 3 data is determined as the data mapped in step S501 in the synchronization process shown in FIG. 2 (YES), and it is determined that there is no conflict in step S702 (NO), and the step In step S802, general synchronization processing settings are made.

처리 순번 4번 자료는 클라이언트측 자료(ID:C004)와 서버측 자료(ID:S1004)가 서로 맵핑되어 있으며 클라이언트측 자료(ID:C004)는 이전 동기화 처리 이후 삭제된 자료이고, 서버측 자료(ID:S1004)는 이전 동기화 처리 이후 상태의 변경이 없는 자료이다. 이 처리 순번 4번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑된 자료로 판단되고(YES), 스텝(S702)에서 상충이 존재하지 않는 것으로 판단(NO)되고, 스텝(S802)에서 일반 동기화 처리 설정이 이루어진다.Processing number 4 data is client-side data (ID: C004) and server-side data (ID: S1004) mapped to each other, and client-side data (ID: C004) is data deleted after the previous synchronization processing. ID: S1004) is data which has not changed state since the previous synchronization process. This process number 4 data is determined as the data mapped in step S501 in the synchronization process shown in FIG. 2 (YES), and it is determined that there is no conflict in step S702 (NO), and the step In step S802, general synchronization processing settings are made.

처리 순번 5번 자료는 클라이언트측 자료(ID:C005)와 서버측 자료(ID:S1005)가 서로 맵핑되어 있으며 클라이언트측 자료(ID:C005)는 이전 동기화 처리 이후 상태의 변경이 없는 자료이고, 서버측 자료(ID:S1005)는 이전 동기화 처리 이후 삭제 자료이다. 이 처리 순번 5번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑된 자료로 판단되고(YES), 스텝(S702)에서 상충이 존재하지 않는 것으로 판단(NO)되고, 스텝(S802)에서 일반 동기화 처리 설정이 이루어진다.Data for processing sequence # 5 is client-side data (ID: C005) and server-side data (ID: S1005) mapped to each other, and client-side data (ID: C005) is data that has not changed state since the previous synchronization process. The side data (ID: S1005) is deleted data after the previous synchronization process. This process number 5 data is determined to be the data mapped in step S501 in the synchronization process shown in FIG. 2 (YES), and it is determined that there is no conflict in step S702 (NO), and the step In step S802, general synchronization processing settings are made.

처리 순번 6번 자료는 클라이언트측 자료(ID:C006)가 이전 동기화 처리 이후 생성되었으므로 맵핑된 서버측 자료가 존재하지 않는 자료이다. 따라서, 이 처리 순번 6번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑되지 않은 자료로 판단(NO)되고, 스텝(S601)에서 상태 속성이 '삭제'가 아닌 것으로 판단(NO)되고, 스텝(S701)에서 트윈 검색을 위해 서버(200)에 의해 내부적 지문(지문값=6)이 생성되어 동기화 처리 리스트내의 서버측 자료 중 지문이 동일한 트윈의 존재 여부에 대한 검색 결과 트윈이 존재하지 않는 것으로 판단(NO)되고, 스텝(S802)에서 일반 동기화 처리 설정이 이루어진다.Process No. 6 data does not exist in the server-side mapped data because client-side data (ID: C006) has been generated since the previous synchronization process. Therefore, this processing sequence 6 data is determined as NO data that is not mapped in step S501 in the synchronization process shown in FIG. 2, and it is determined that the state attribute is not 'deleted' in step S601. (NO), an internal fingerprint (fingerprint value = 6) is generated by the server 200 for the twin search in step S701, and a search result for the presence of a twin of identical fingerprints among server-side data in the synchronization processing list. It is determined that the tween does not exist (NO), and the general synchronization processing setting is made in step S802.

처리 순번 7번 자료는 서버측 자료(ID:S1007)가 이전 동기화 처리 이후 생성되었으므로 맵핑된 클라이언트측 자료가 존재하지 않는 자료이다. 따라서, 이 처리 순번 7번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑되지 않은 자료로 판단(NO)되고, 스텝(S601)에서 상태 속성이 '삭제'가 아닌 것으로 판단(NO)되고, 스텝(S701)에서 이전 동기화 처리 과정에서 생성된 지문(지문값=7)에 의해 동기화 처리 리스트내의 클라이언트측 자료 중 지문이 동일한 트윈의 존재 여부에 대한 검색 결과 트윈이 존재하지 않는 것으로 판단(NO)되고, 스텝(S802)에서 일반 동기화 처리 설정이 이루어진다.The data of processing No. 7 is the data on which the client-side data does not exist because the server-side data (ID: S1007) was generated after the previous synchronization processing. Therefore, this processing sequence 7 data is determined as NO data that is not mapped in step S501 in the synchronization process shown in FIG. 2, and it is determined that the state attribute is not 'deleted' in step S601. (NO), and the search result tween does not exist in the client-side data in the synchronization processing list according to the fingerprint (fingerprint value = 7) generated in the previous synchronization processing in step S701. It is determined as NO, and the general synchronization processing setting is made in step S802.

처리 순번 8번 자료는 클라이언트측 자료(ID:C008)가 이전 동기화 처리 이후 생성되었다가 삭제된 자료이므로 맵핑된 서버측 자료가 존재하지 않는 자료이다. 따라서, 이 처리 순번 8번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑되지 않은 자료로 판단(NO)되고, 스텝(S601)에서 상태 속성이 '삭제'인 것으로 판단(YES)되고, 스텝(S801)에서 미처리 설정이 이루어진다.The processing data 8 is the data that the client-side data (ID: C008) is generated and deleted after the previous synchronization process, and thus the mapped server-side data does not exist. Therefore, this processing sequence 8 data is determined as NO data that is not mapped in step S501 in the synchronization process shown in FIG. 2, and it is determined that the state attribute is 'delete' in step S601 ( YES) and the unprocessed setting is made in step S801.

처리 순번 9번 자료는 서버측 자료(ID:S1009)가 이전 동기화 처리 이후 생성되었다가 삭제된 자료이므로 맵핑된 클라이언트측 자료가 존재하지 않는 자료이다. 따라서, 이 처리 순번 8번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑되지 않은 자료로 판단(NO)되고, 스텝(S601)에서 상태 속성이 '삭제'인 것으로 판단(YES)되고, 스텝(S801)에서 미처리 설정이 이루어진다.Process No.9 data is data that has not been mapped since the server-side data (ID: S1009) is generated and deleted after the previous synchronization process. Therefore, this processing sequence 8 data is determined as NO data that is not mapped in step S501 in the synchronization process shown in FIG. 2, and it is determined that the state attribute is 'delete' in step S601 ( YES) and the unprocessed setting is made in step S801.

처리 순번 10번 자료는 클라이언트측 자료(ID:C010)가 이전 동기화 처리 이후 생성된 자료이므로 맵핑된 서버측 자료가 존재하지 않는 자료이다. 따라서, 이 처리 순번 10번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑되지 않은 자료로 판단(NO)되고, 스텝(S601)에서 상태 속성이 '삭제'가 아닌 것으로 판단(NO)된다. 이어서, 스텝(S701)에서 트윈 검색을 위해 서버(200)에 의해 내부적 지문(지문값=10)이 생성되어 동기화 처리 리스트 내의 서버측 자료 중 지문이 동일한 트윈의 존재 여부에 대한 검색이 이루어진다. 이 검색에 의해 지문이 동일한 서버측 자료(ID:S1011)(지문값=10, 처리 순번 11번 자료, 이 자료는 이전 동기화 처리 이후에 서버측에서 새로 생성된 자료임)가 검색되어 트윈이 존재하는 것으로 판단(YES)되고, 이에 따라 처리 순번 11번 자료[즉, 서버측 자료(ID:S1011)]와 처리 순번 10번 자료[즉, 클라이언트측 자료(ID:C010)]의 새로운 맵핑이 이루어져서 동기화 처리 리스트에서 처리 순번 11번 자료의 내용이 처리 순번 10번 자료의 서버측 자료 항목으로 병합되고 처리 순번 11번 자료는 동기화 처리 리스트에서 삭제된다. 이와 같이 병합된 상기 자료는 스텝(S702)에서 상충이 존재하는 것으로 판단되고(YES), 스텝(S803)에서 상충 해소 처리 설정이 이루어진다.The processing sequence number 10 data does not exist mapped server side data because the client side data (ID: C010) is generated after the previous synchronization process. Therefore, this processing sequence 10 data is determined as NO data that is not mapped in step S501 in the synchronization process shown in FIG. 2, and it is determined that the state attribute is not 'deleted' in step S601. (NO). Subsequently, an internal fingerprint (fingerprint value = 10) is generated by the server 200 for a twin search in step S701, and a search is made as to whether or not a twin has the same fingerprint among server-side data in the synchronization processing list. This search retrieves server-side data with the same fingerprint (ID: S1011) (fingerprint value = 10, processing sequence 11 data, this data is newly generated on the server side after the previous synchronization processing), and the tween exists. (YES), and accordingly, a new mapping of the processing sequence 11 data (ie, server side data (ID: S1011)) and the processing sequence 10 data (ie client side data (ID: C010)) is performed. In the synchronization processing list, the contents of the processing sequence 11 data are merged into the server-side data item of the processing sequence 10 data, and the processing sequence 11 data is deleted from the synchronization processing list. The data thus merged is determined to have a conflict in step S702 (YES), and a conflict resolution processing setting is made in step S803.

처리 순번 12번 자료는 클라이언트측 자료(ID:C012)가 이전 동기화 처리 이후 생성된 자료이므로 맵핑된 서버측 자료가 존재하지 않는 자료이다. 따라서, 이 처리 순번 12번 자료는 도 2에 도시된 동기화 처리 과정에 있어서 스텝(S501)에서 맵핑되지 않은 자료로 판단(NO)되고, 스텝(S601)에서 상태 속성이 '삭제'가 아닌 것으로 판단(NO)된다. 이어서, 스텝(S701)에서 트윈 검색을 위해 서버(200)에 의해 내부적 지문(지문값=12)이 생성되어 동기화 처리 리스트 내의 서버측 자료 중 지문이 동일한 트윈의 존재 여부에 대한 검색이 이루어진다. 이 검색에 의해 지문이 동일한 서버측 자료(ID:S1013)(지문값=12, 처리 순번 13번 자료, 이 자료는 이전 동기화 처리 이후에 서버측에서 새로 생성되었다가 수정된 자료임)가 검색되어 트윈이 존재하는 것으로 판단(YES)되고, 이에 따라 처리 순번 13번 자료[즉, 서버측 자료(ID:S1013)]와 처리 순번 12번 자료[즉, 클라이언트측 자료(ID:C012)]의 새로운 맵핑이 이루어져서 동기화 처리 리스트에서 처리 순번 13번 자료의 내용이 처리 순번 12번 자료의 서버측 자료 항목으로 병합되고 처리 순번 13번 자료는 동기화 처리 리스트에서 삭제된다. 이와 같이 병합된 상기 자료는 스텝(S702)에서 상충이 존재하는 것으로 판단되고(YES), 스텝(S803)에서 상충 해소 처리 설정이 이루어진다.Processing number 12 data does not exist mapped server-side data because client-side data (ID: C012) is generated after the previous synchronization processing. Therefore, this processing sequence 12 data is determined as NO data that is not mapped in step S501 in the synchronization process shown in FIG. 2, and it is determined that the state attribute is not 'deleted' in step S601. (NO). Subsequently, an internal fingerprint (fingerprint value = 12) is generated by the server 200 for a twin search in step S701, and a search is made as to whether a twin having the same fingerprint is present among server-side data in the synchronization processing list. This search retrieves server-side data with the same fingerprint (ID: S1013) (fingerprint value = 12, processing sequence 13 data, which is newly generated and modified on the server side after the previous synchronization processing). It is determined that the tween exists (YES), and accordingly new data of processing sequence number 13 (i.e. server-side data (ID: S1013)) and processing sequence number 12 data (i.e. client-side data (ID: C012)) The mapping is performed so that the contents of the processing sequence 13 data in the synchronization processing list are merged into the server side data item of the processing sequence 12 data and the processing sequence 13 data is deleted from the synchronization processing list. The data thus merged is determined to have a conflict in step S702 (YES), and a conflict resolution processing setting is made in step S803.

동기화 처리 리스트에 기재된 각 자료는 상기한 바와 같은 과정을 통해 스텝(S801), 스텝(S802), 및 스텝(S803)에서 이루어진 처리 설정에 따라 스텝(S901)에서 동기화 처리가 수행된다. 스텝(S901)에 대한 설명은 상기한 바와 동일하므로 생략한다.Each material described in the synchronization processing list is subjected to synchronization processing in step S901 according to the processing settings made in steps S801, S802, and S803 through the above-described process. Since the description of step S901 is the same as described above, it is omitted.

이와 같이, 본 발명은 자료의 맵핑 상태와 상태 속성에 따라 자료를 분류하여 맵핑 여부를 확인하고, 맵핑되지 않은 자료의 상태 속성이 '삭제'인지를 확인하고, 맵핑되지 않고 상태 속성이 '삭제'인 자료에 대하여 트윈이 존재하는지를 검색한다. 따라서, 동기화 처리 과정에서 트윈 확인 범위를 줄이고 내부적 지문을 생성 사용함으로써 정확한 트윈 검색이 이루어질 수 있으며, 이를 통해 동기화 처리의 속도를 개선하고, 동기화 처리 과정에서의 오류를 방지할 수 있다.As such, the present invention classifies the data according to the mapping state and the state attribute of the data to check whether it is mapped, checks whether the state attribute of the unmapped data is 'delete', and the state attribute is 'deleted' without being mapped. Finds whether a tween exists for the data. Therefore, the accurate twin search can be performed by reducing the twin confirmation range and generating and using an internal fingerprint in the synchronization process, thereby improving the speed of the synchronization process and preventing an error in the synchronization process.

이상으로 도면을 참조하여 본 발명에 의한 동기화 데이터의 분류 및 동기화 처리 방법의 바람직한 실시형태를 상세히 설명하였지만 본 발명은 상기 실시형태에 한정되는 것이 아니며, 청구범위에 기재된 본 발명의 사상과 범위로부터 벗어나지 않는 당업자에 의한 다양한 수정 및 변경이 가능하다.As mentioned above, although preferred embodiment of the method of classifying and synchronizing the synchronization data by this invention with reference to drawings was described in detail, this invention is not limited to the said embodiment, Comprising: It is not deviating from the thought and range of this invention described in the Claim. Many modifications and variations are possible to those skilled in the art.

Claims (6)

클라이언트로부터 클라이언트측 자료를 전송받아 자료의 상태 속성에 따라 분류하고, 상기 클라이언트측 자료를 서버측 자료와 맵핑된 자료와 맵핑되지 않은 자료로 분류하는 제 1 스텝;
서버측 자료를 자료의 상태 속성에 따라 분류하고, 상기 서버측 자료를 상기 클라이언트측 자료와 맵핑된 자료와 맵핑되지 않은 자료로 분류하는 제 2 스텝;
상기 제 1 , 제 2 스텝을 통해 분류된 자료를 취합하여 맵핑되어 있는 자료는 하나의 쌍으로 합하고, 맵핑되지 않은 자료는 독립적인 자료로 해당 자료의 상태 속성 그대로 동기화 처리 리스트에 포함시켜서 동기화 처리 리스트를 생성하는 제 3 스텝;
상기 제 3 스텝에서 생성된 동기화 처리 리스트에 의해 동기화 처리를 시작할 첫번째 자료를 검색하여 처리 대상 자료로 지정하는 제 4 스텝;
상기 동기화 처리 리스트에서 처리 대상으로 지정된 자료에 대하여 상기 클라이언트측 자료와 상기 서버측 자료가 서로 맵핑된 자료인지의 여부를 확인하는 제 5 스텝;
상기 제 5 스텝에서 맵핑되지 않은 자료로 판단된 클라이언트측 자료 또는 서버측 자료에 대하여 그 상태 속성이 '삭제'인지의 여부를 확인하는 제 6 스텝;
상기 제 6 스텝에서 상태 속성이 '삭제'가 아닌 것으로 판단된 클라이언트측 자료 또는 서버측 자료에 대하여 상대방측 자료에 트윈(동일 자료)이 존재하는지의 여부를 확인하는 제 7 스텝;
상기 제 7 스텝에서 트윈이 존재하지 않으면 클라이언트측 자료 또는 서버측 자료에 대하여 동기화 처리를 위한 설정을 추가하는 제 8 스텝; 및
상기 제 8 스텝에서 각 자료에 설정된 지시 내용에 따라 상기 각 자료를 처리하고, 상기 동기화 처리 리스트에 처리할 다음 자료가 있는지의 여부를 확인하여 처리할 다음 자료가 있는 경우에 상기 제 5 스텝으로 진행시키는 한편, 처리할 다음 자료가 없는 경우에 동기화 처리가 완료된 자료를 상기 클라이언트로 전송함과 아울러 서버 자체적으로 업데이트시키는 제 9 스텝을 포함하는 것을 특징으로 하는 동기화 데이터의 분류 및 동기화 처리 방법.
Receiving client-side data from a client and classifying the client-side data into data mapped to server-side data and unmapped data according to a state attribute of the data;
A second step of classifying server-side data according to a state attribute of data, and classifying the server-side data into data mapped to the client-side data and unmapped data;
The data classified through the first and second steps are collected and the mapped data are combined into a pair, and the unmapped data are independent data and included in the synchronization processing list as the state attribute of the corresponding data. Generating a third step;
A fourth step of retrieving the first material to start the synchronization process from the synchronization process list generated in the third step and designating it as processing target material;
A fifth step of checking whether or not the client-side data and the server-side data are data mapped to each other with respect to the material designated for processing in the synchronization processing list;
A sixth step of checking whether the state attribute is 'delete' for the client-side data or the server-side data determined as the unmapped data in the fifth step;
A seventh step of checking whether a tween (same data) exists in the counterpart data for the client-side data or the server-side data determined that the state attribute is not 'Delete' in the sixth step;
An eighth step of adding a setting for synchronization processing to the client-side data or the server-side data if the tween does not exist in the seventh step; And
The eighth step is to process the respective data according to the instruction set in each data, check whether there is the next data to be processed in the synchronization processing list, and proceed to the fifth step if there is the next data to be processed. And a ninth step of transmitting the completed data to the client and updating the server itself when there is no next data to be processed.
제 1 항에 있어서,
상기 제 5 스텝에서 처리 대상으로 지정된 자료가 맵핑된 자료라고 판단되면 맵핑된 것으로 판단된 클라이언트측 자료와 서버측 자료를 비교하여 상충이 존재하는지의 여부를 확인하는 제 10 스텝; 및
상기 제 10 스텝에서 상충이 존재하지 않으면 상기 제 8 스텝으로 진행되는 한편, 상기 제 10 스텝에서 상충이 존재하면 해당 클라이언트측 자료와 서버측 자료에 대하여 상충을 해소하는 처리를 위한 설정을 추가하여 상기 제 9 스텝으로 진행시키는 스텝을 더 포함하는 것을 특징으로 하는 동기화 데이터의 분류 및 동기화 처리 방법.
The method of claim 1,
A tenth step of checking whether or not there is a conflict by comparing the client-side data and the server-side data determined to be mapped when the data designated for processing in the fifth step is mapped data; And
If there is no conflict in the tenth step, the process proceeds to the eighth step, and if there is a conflict in the tenth step, adding a setting for processing to resolve the conflict for the client-side data and the server-side data; And further comprising the step of proceeding to the ninth step.
제 2 항에 있어서,
상기 제 6 스텝에서 해당 자료의 상태 속성이 '삭제'이면 동기화 처리가 불필요하다는 내용의 미처리 설정을 추가하여 상기 제 9 스텝으로 진행시키는 스텝을 더 포함하는 것을 특징으로 하는 동기화 데이터의 분류 및 동기화 처리 방법.
3. The method of claim 2,
And adding the unprocessed setting indicating that the synchronization process is unnecessary if the state attribute of the corresponding data is 'delete' in the sixth step, and proceeding to the ninth step. Way.
제 2 항 내지 제 3 항 중 어느 한 항에 있어서,
상기 제 7 스텝에서 해당 자료에 대하여 상대방측 자료에 트윈이 존재하면 상기 제 10 스텝으로 진행되는 스텝을 더 포함하는 것을 특징으로 하는 동기화 데이터의 분류 및 동기화 처리 방법.
The method according to any one of claims 2 to 3,
And a step of proceeding to the tenth step if there is a tween in the counterpart side data for the corresponding material in the seventh step.
제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
상기 제 7 스텝에서 트윈 검색시 상기 클라이언트측 자료에 대하여 서버의 내부적 처리에 의해 새로 생성된 지문과 상기 서버측 자료에 대하여 이전 동기화 처리에서 이미 생성된 지문을 비교하여 트윈을 검색하는 것을 특징으로 하는 동기화 데이터의 분류 및 동기화 처리 방법.
The method according to any one of claims 1 to 3,
In the seventh step, the tween is searched by comparing the fingerprint newly generated by the internal processing of the server with respect to the client-side data and the fingerprint already generated by the previous synchronization process with respect to the server-side data. How to classify and handle synchronization data.
제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
상기 제 9 스텝에서 동기화 처리가 완료된 자료를 상기 클라이언트로 전송할 때 상기 제 6 스텝에서 상태 속성이 '삭제'인 것으로 판단된 자료에 대해서는 상기 자료의 실제 내용을 제외한 자료의 식별자(ID)만을 포함시켜서 전송하는 것을 특징으로 하는 동기화 데이터의 분류 및 동기화 처리 방법.
The method according to any one of claims 1 to 3,
When transmitting the data whose synchronization process is completed in the ninth step to the client, only the identifier (ID) of the data excluding the actual contents of the data is included in the data determined that the state attribute is 'Deleted' in the sixth step. Method for classifying and synchronizing synchronization data, characterized in that for transmitting.
KR1020110021740A 2011-03-11 2011-03-11 Classification and synchronization method of sync data KR101274553B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110021740A KR101274553B1 (en) 2011-03-11 2011-03-11 Classification and synchronization method of sync data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110021740A KR101274553B1 (en) 2011-03-11 2011-03-11 Classification and synchronization method of sync data

Publications (2)

Publication Number Publication Date
KR20120103847A KR20120103847A (en) 2012-09-20
KR101274553B1 true KR101274553B1 (en) 2013-06-13

Family

ID=47111639

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110021740A KR101274553B1 (en) 2011-03-11 2011-03-11 Classification and synchronization method of sync data

Country Status (1)

Country Link
KR (1) KR101274553B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020003674A (en) * 2000-06-24 2002-01-15 정승채 Data synchronization system and method thereof
KR100640512B1 (en) 2004-03-12 2006-10-30 삼성전자주식회사 Method and system for synchronizing data between server and terminal using messenger service system
KR100884543B1 (en) 2007-06-04 2009-02-18 계명대학교 산학협력단 Data-Synchronization method and Gateway thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020003674A (en) * 2000-06-24 2002-01-15 정승채 Data synchronization system and method thereof
KR100640512B1 (en) 2004-03-12 2006-10-30 삼성전자주식회사 Method and system for synchronizing data between server and terminal using messenger service system
KR100884543B1 (en) 2007-06-04 2009-02-18 계명대학교 산학협력단 Data-Synchronization method and Gateway thereof

Also Published As

Publication number Publication date
KR20120103847A (en) 2012-09-20

Similar Documents

Publication Publication Date Title
CN108140031B (en) Peer-to-peer synchronizable storage system
EP2724517B1 (en) Method and apparatus for the preemptive creation of binary delta information within a computer network
US9465877B2 (en) Globally unique identifiers in an online content management system
US9660858B2 (en) Maintaining consistent globally unique identifiers via an asynchronous interface
US10270845B2 (en) Enriching contact data based on content sharing history in a content management system
US11914585B2 (en) Servicing queries of a hybrid event index
US20090063448A1 (en) Aggregated Search Results for Local and Remote Services
JP5008748B2 (en) Search method, integrated search server, and computer program
US9613044B2 (en) Maintaining concurrency and consistency of globally unique identifiers
US20120166518A1 (en) Providing state service for online application users
CN107004013A (en) System and method for providing distributed tree traversal using hardware based processing
WO2018036324A1 (en) Smart city information sharing method and device
US20170193039A1 (en) Servicing queries of an event log
US8930698B2 (en) Encrypting globally unique identifiers at communication boundaries
JP2012194989A (en) Retrieval method, integrated retrieval server and computer program
US9417796B2 (en) Method, a server, a system and a computer program product for copying data from a source server to a target server
CN113641686B (en) Data processing method, data processing apparatus, electronic device, storage medium, and program product
KR101274553B1 (en) Classification and synchronization method of sync data
US9286305B2 (en) Virtual storage gate system
US11157454B2 (en) Event-based synchronization in a file sharing environment
JP2019519034A (en) Method and apparatus for managing file attribute information {METHOD FOR MANAGING ATTRIBUTE INFORMATION OF FILE AND COMPUTING DEVICE USING THE SAME}
Pak et al. A Group Data Synchronization Protocol in Mobile Environments
Yanovsky et al. Distributed cloud system: security and keyword indexing issues with implementation strategy and business limitations

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: 20160519

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170607

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180605

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190605

Year of fee payment: 7