KR100467627B1 - Method of synchronizing data, and the apparatus therefor - Google Patents

Method of synchronizing data, and the apparatus therefor Download PDF

Info

Publication number
KR100467627B1
KR100467627B1 KR10-2003-0010381A KR20030010381A KR100467627B1 KR 100467627 B1 KR100467627 B1 KR 100467627B1 KR 20030010381 A KR20030010381 A KR 20030010381A KR 100467627 B1 KR100467627 B1 KR 100467627B1
Authority
KR
South Korea
Prior art keywords
data
terminal
synchronization
data table
stored
Prior art date
Application number
KR10-2003-0010381A
Other languages
Korean (ko)
Other versions
KR20040074490A (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 KR10-2003-0010381A priority Critical patent/KR100467627B1/en
Publication of KR20040074490A publication Critical patent/KR20040074490A/en
Application granted granted Critical
Publication of KR100467627B1 publication Critical patent/KR100467627B1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B53/00Golf clubs
    • A63B53/14Handles
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B60/00Details or accessories of golf clubs, bats, rackets or the like
    • A63B60/06Handles
    • A63B60/20Handles with two handgrips

Landscapes

  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 데이터 동기화 방법 및 그 장치에 관한 것으로, 그 데이터 동기화 방법은, 데이터 동기화 장치 내의 데이터 테이블에 저장된 동기화 대상 데이터와 단말기의 데이터를 동기화하기 위한 데이터 동기화 방법에 있어서, (a) 상기 단말기가 최초로 동기화가 수행되는 단말기인지 여부를 판단하는 단계; (b) 최초로 동기화가 수행되는 단말기이면, 상기 단말기의 데이터 구조를 파악하는 단계; (c) 상기 데이터 테이블의 데이터 구조를 확장하여 상기 단말기의 데이터 구조를 수용하는 단계; 및 (d) 상기 데이터 테이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 단계를 포함한다. 본 발명에 따른 데이터 동기화 방법 및 그 장치는 동기화 대상 단말기의 데이터 구조가 상이하여도 용이하게 데이터 동기화를 수행하고, 동기화 플래그를 생성하는 기능이 없는 단말기에 대하여도 동기화를 수행할 수 있는 효과를 제공한다.The present invention relates to a data synchronization method and apparatus thereof, wherein the data synchronization method comprises: (a) a data synchronization method for synchronizing data of a terminal with data to be synchronized stored in a data table in a data synchronization device; Determining whether the first terminal is synchronized; (b) identifying a data structure of the terminal if the first synchronization is performed; (c) expanding the data structure of the data table to accommodate the data structure of the terminal; And (d) synchronizing the terminal data with data stored in the data table. The data synchronization method and apparatus according to the present invention provide an effect of easily synchronizing data even when the data structure of the terminal to be synchronized is different, and synchronizing with a terminal having no function of generating a synchronization flag. do.

Description

데이터 동기화 방법 및 그 장치{Method of synchronizing data, and the apparatus therefor}Method of synchronizing data, and the apparatus therefor}

본 발명은 단말기의 데이터를 동기화하는 데이터 동기화 방법 및 그 장치에 관한 것이다.The present invention relates to a data synchronization method and apparatus for synchronizing data of a terminal.

휴대용 개인 통신 장치로서 PDA(Personal Digital Assistant), PCS(Personal Communications Services) 및 휴대용 컴퓨터 등의 다양한 단말기들이 보급되었다. 이러한 단말기들은 데이터 통신이 가능함은 물론 주소록, 전화번호, 일정관리 등과 같은 개인정보를 저장하여 사용자에게 편의를 제공하기도 한다. 한편, 이러한 단말기들이 널리 보급됨에 따라 각 개인은 다수의 단말기들을 보유하기도 한다.As portable personal communication devices, various terminals such as PDA (Personal Digital Assistant), PCS (Personal Communications Services), and portable computers have been popularized. These terminals are not only capable of data communication, but also provide convenience to users by storing personal information such as address books, telephone numbers, and schedule management. On the other hand, as these terminals become widespread, each individual may have a plurality of terminals.

그러나 하나의 단말기에 저장된 정보, 예컨대 저장된 전화번호 중 일부가 변경된 경우에 사용자가 자기의 다른 단말기에 저장된 전화번호 역시 각 단말기를 조작하여 전화번호를 변경하여야 한다. 전화번호를 변경할 단말기의 수가 적을 때는 별 문제가 되지 않으나 그 수가 많을 때는 사용자의 불편이 커진다. 따라서 사용자가 보유하는 다수의 단말기들간의 데이터의 통일화, 즉 데이터의 동기화(data synchronization)가 필요하며 이를 위한 여러 가지 데이터 동기화 기술이 개발되고 있다.However, when some of the information stored in one terminal, for example, the stored telephone number, is changed, the user must also change the telephone number by operating each terminal. It is not a problem when the number of terminals to change the telephone number is small, but when the number is large, inconvenience of the user becomes large. Therefore, there is a need for unification of data among a plurality of terminals owned by a user, that is, data synchronization, and various data synchronization technologies have been developed for this purpose.

그러나 데이터 동기화는 각 단말기들이 저장하는 데이터의 구조가 달라 용이하게 이루어질 수 없는 문제가 있다.However, data synchronization has a problem that cannot be easily achieved due to the different structure of data stored by each terminal.

또한, 종래에는 데이터에 동기화 플래그를 두어 동기화 플래그의 값에 따라 데이터 동기화를 수행하나, 단말기에 동기화 플래그를 생성하는 기능이 없는 경우에는 동기화를 수행할 수 없는 문제가 있다.In addition, conventionally, data synchronization is performed by putting a synchronization flag on data, but there is a problem that synchronization cannot be performed when the terminal does not have a function of generating a synchronization flag.

따라서 본 발명이 이루고자 하는 기술적 과제는, 각 단말기의 데이터 구조가 상이하여도 보다 용이하게 데이터 동기화를 수행하고, 동기화 플래그를 생성하는 기능이 없는 단말기에 대하여도 동기화를 수행할 수 있는 데이터 동기화 방법 및 그 장치를 제공하는데 있다.Therefore, the technical problem to be achieved by the present invention is a data synchronization method that can easily perform data synchronization even if the data structure of each terminal is different, and can also be performed for a terminal that does not have a function for generating a synchronization flag and To provide the device.

도 1은 본 발명에 따른 데이터 동기화 시스템의 개략도,1 is a schematic diagram of a data synchronization system according to the present invention;

도 2는 본 발명에 따른 데이터 동기화 장치를 설명하기 위한 블록도,2 is a block diagram illustrating a data synchronization device according to the present invention;

도 3은 본 발명에 따른 데이터 동기화 방법을 설명하기 위한 흐름도,3 is a flowchart illustrating a data synchronization method according to the present invention;

도 4는 도 3에 도시된 제 46단계의 세부단계들을 설명하기 위한 일 실시예를 나타내는 흐름도,4 is a flowchart illustrating an exemplary embodiment for describing the detailed steps of the forty-seventh step illustrated in FIG. 3;

도 5는 도 3에 도시된 제 46단계의 세부단계들을 설명하기 위한 다른 실시예를 나타내는 흐름도FIG. 5 is a flowchart illustrating another embodiment for describing the detailed steps of the forty-seventh step illustrated in FIG. 3.

도 6a 내지 도 6c는 데이터 데이블의 구조가 확장된 일 예를 설명하기 위한 도면,6A to 6C are diagrams for describing an example in which a structure of a data table is expanded;

도 7a 내지 도 7c는 XML로 작성된 데이터 테이블 및 확장된 데이터 테이블의 일 예를 나타내는 도면,7A to 7C are diagrams illustrating examples of a data table and an extended data table written in XML;

도 8a 및 도 8b는 데이터 동기화 장치의 각 버퍼에 저장된 데이터의 일 예를 나타내는 도면이다.8A and 8B are diagrams illustrating an example of data stored in each buffer of the data synchronization device.

상기 과제를 이루기 위해, 본 발명에 의한 데이터 동기화 방법은,In order to achieve the above object, the data synchronization method according to the present invention,

데이터 동기화 장치 내의 데이터 테이블에 저장된 동기화 대상 데이터와 단말기의 데이터를 동기화하기 위한 데이터 동기화 방법에 있어서, (a) 상기 단말기가 최초로 동기화가 수행되는 단말기인지 여부를 판단하는 단계; (b) 최초로 동기화가 수행되는 단말기이면, 상기 단말기의 데이터 구조를 파악하는 단계; (c) 상기 데이터 테이블의 데이터 구조를 확장하여 상기 단말기의 데이터 구조를 수용하는 단계; 및 (d) 상기 데이터 테이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 단계를 포함한다.A data synchronization method for synchronizing data of a terminal with data to be synchronized stored in a data table in a data synchronization device, the method comprising: (a) determining whether the terminal is the first terminal to be synchronized; (b) identifying a data structure of the terminal if the first synchronization is performed; (c) expanding the data structure of the data table to accommodate the data structure of the terminal; And (d) synchronizing the terminal data with data stored in the data table.

또한, 상기 상기 데이터 테이블은 마크업 문서로 작성되어, 다수의 데이터 유닛을 포함하여 이루어진 상기 데이터 테이블의 데이터 구조가 콘텐츠화된 것이며,In addition, the data table is created as a markup document, the data structure of the data table including a plurality of data units is a contentized,

상기 (c)단계는 마크업 문서로 작성된 상기 데이터 테이블을 이용하여 상기 데이터 테이블의 데이터 구조를 확장하는 단계인 것이 바람직하다.Step (c) is preferably a step of extending the data structure of the data table by using the data table created as a markup document.

또한, 상기 (d3)단계는, (d3-1) 상기 데이터 테이블의 데이터 및 상기 단말기의 데이터 중에서 동기화를 수행할 서로 대응하는 각각의 데이터 유닛들을 검색하는 단계; (d3-2) 상기 단말기의 데이터와 상기 동기화 장치 내에 미리 저장된 상기 단말기의 이전 데이터를 비교하여, 상기 단말기의 각 데이터 유닛별로 데이터의 변화를 나타내는 동기화 플래그를 생성하는 단계; 및 (d3-3) 상기 데이터 테이블의 데이터 유닛들과 상기 단말기의 데이터 유닛들 각각에 포함된 동기화 플래그를 이용하여 상기 데이터 테이블의 데이터와 상기 단말기의 데이터를 동기화하는 단계를 포함하는 것이 바람직하다.In addition, step (d3) may include: (d3-1) searching each data unit corresponding to each other to perform synchronization among data of the data table and data of the terminal; (d3-2) generating a synchronization flag indicating a change of data for each data unit of the terminal by comparing the data of the terminal with previous data of the terminal previously stored in the synchronization device; And (d3-3) synchronizing the data of the data table with the data of the terminal using the synchronization flag included in each of the data units of the data table and the data units of the terminal.

상기 과제를 이루기 위해, 본 발명에 의한 데이터 동기화 장치는,In order to achieve the above object, the data synchronization device according to the present invention,

저장한 동기화 대상 데이터와 단말기의 데이터를 동기화하는 데이터 동기화 장치에 있어서, 상기 동기화 대상 데이터가 기록된 데이터 테이블을 저장하는 데이터베이스부; 상기 단말기와 접속하여 인터페이싱하는 인터페이스부; 및 상기 인터페이스부를 통해 상기 단말기로부터 동기화 대상 데이터를 포함한 소정 정보를 입력받아, 상기 단말기가 최초로 동기화가 수행되는 단말기인 것으로 판단되면, 미리 저장된 상기 단말기의 데이터 구조 정보를 포함하는 데이터 포맷 파일을 참조하여 상기 단말기의 데이터 구조를 파악하여, 상기 단말기의 데이터 구조를 수용하도록 상기 데이터 테이블의 데이터 구조를 확장한 후, 상기 데이터 테이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 제어부를 포함한다.A data synchronization device for synchronizing stored synchronization target data with data of a terminal, comprising: a database unit for storing a data table in which the synchronization target data is recorded; An interface unit for interfacing with the terminal; And receiving predetermined information including synchronization target data from the terminal through the interface unit, and if it is determined that the terminal is a terminal to be synchronized for the first time, referring to a data format file including data structure information of the terminal previously stored. And a controller for identifying the data structure of the terminal, extending the data structure of the data table to accommodate the data structure of the terminal, and then synchronizing the data stored in the data table with the terminal data.

또한, 상기 데이터 테이블은 마크업 문서로 작성되어, 다수의 데이터 유닛을 포함하여 이루어진 상기 데이터 테이블의 데이터 구조가 콘텐츠화된 것이며, 상기 제어부는 마크업 문서로 작성된 상기 데이터 테이블을 이용하여 상기 데이터 테이블의 데이터 구조를 확장하는 것이 바람직하다.In addition, the data table is created as a markup document, and the data structure of the data table including a plurality of data units is contentized, and the control unit uses the data table created as a markup document to form the data table. It is desirable to extend the data structure of.

또한 상기 데이터 동기화 장치는 상기 단말기로부터 입력된 동기화 대상 데이터를 저장하는 제1 버퍼; 및 상기 데이터 테이블에 기록된 데이터 중, 상기 단말기의 동기화 대상 데이터에 대응하는 데이터를 저장하는 제2 버퍼를 더 포함하고, 상기 데이터베이스부는 상기 단말기의 이전 데이터를 더 저장하고, 상기 제어부는 상기 제1 버퍼 및 상기 제2 버퍼에 각각 저장된 상기 단말기의 동기화 대상 데이터 및 상기 데이터 테이블의 데이터 중에서 동기화를 수행할 서로 대응하는 각각의 데이터 유닛들을 검색하고, 상기 단말기의 데이터와 상기 데이터베이스부에 미리 저장된 상기 단말기의 이전 데이터를 비교하여, 상기 단말기의 각 데이터 유닛별로 데이터의 변화를 나타내는 동기화 플래그를 생성하고, 상기 데이터 테이블의 데이터 유닛들과 상기 단말기의 데이터 유닛들 각각에 포함된 동기화 플래그를 이용하여 상기 데이터 테이블의 데이터와 상기 단말기의 데이터를 동기화하는 것을 특징으로 하는 것이 더 바람직하다.The data synchronization device may further include a first buffer configured to store synchronization target data input from the terminal; And a second buffer configured to store data corresponding to data to be synchronized of the terminal among the data recorded in the data table, wherein the database unit further stores previous data of the terminal, and the controller controls the first data. Search respective data units corresponding to each other to be synchronized among the synchronization target data of the terminal and data of the data table respectively stored in the buffer and the second buffer, and the terminal previously stored in the data of the terminal and the database unit. Comparing previous data of the terminal, generating a synchronization flag indicating a change of data for each data unit of the terminal, and using the synchronization flag included in each of the data units of the data table and each of the data units of the terminal; Table data and above It is more preferably characterized in that the synchronization of data in the end.

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

도 1은 본 발명에 따른 데이터 동기화 시스템의 개략도이다.1 is a schematic diagram of a data synchronization system according to the present invention.

도 1을 참조하면 데이터 동기화 시스템은 데이터 동기화 장치(1), 동기화 대상인 단말기(3) 및 데이터 동기화 장치(1)와 단말기(3)를 연결하는 케이블(2)을 포함한다.Referring to FIG. 1, the data synchronization system includes a data synchronization device 1, a terminal 3 to be synchronized, and a cable 2 connecting the data synchronization device 1 to the terminal 3.

도 1에 도시된 데이터 동기화 시스템에서 데이터 동기화 장치(1)와단말기(3)는 케이블(2)로 연결되어 있으나, 다른 접속 수단, 예컨대 인터넷 및 LAN 등의 네트워크를 통해 데이터 동기화 장치(1)와 단말기(3)가 상호 연결될 수도 있다.In the data synchronization system shown in FIG. 1, the data synchronization device 1 and the terminal 3 are connected by a cable 2, but the data synchronization device 1 is connected to other data through a network such as the Internet and a LAN. The terminals 3 may be interconnected.

도 2는 본 발명에 따른 데이터 동기화 장치(1)를 설명하기 위한 블록도이다. 도 2를 참조하면, 데이터 동기화 장치(1)는 제1 버퍼(11), 제2 버퍼(13), 데이터베이스부(15), 제어부(17) 및 인터페이스부(19)를 포함한다.2 is a block diagram for explaining a data synchronization device 1 according to the present invention. Referring to FIG. 2, the data synchronization device 1 includes a first buffer 11, a second buffer 13, a database unit 15, a controller 17, and an interface unit 19.

제1 버퍼(11)는 데이터 동기화시, 제어부(17)의 제어에 의해 데이터베이스부(15)에 저장된 동기화 대상 데이터를 저장하여, 데이터 동기화를 위한 메모리 공간을 제공한다.During data synchronization, the first buffer 11 stores synchronization target data stored in the database unit 15 under the control of the controller 17 to provide a memory space for data synchronization.

제2 버퍼(13)는 데이터 동기화시, 케이블(2)을 통해 전달받은 단말기(3)의 동기화 대상 데이터를 저장하여, 제어부(17)에 의해 데이터 동기화를 위한 메모리 공간을 제공한다.The second buffer 13 stores the synchronization target data of the terminal 3 received through the cable 2 during data synchronization, and provides the memory space for data synchronization by the controller 17.

데이터베이스부(15)는 다수의 사용자별, 동기화 대상인 다수의 단말기별 동기화 데이터가 기록된 데이터 테이블(도시되지 않음)을 저장한다.The database unit 15 stores a data table (not shown) in which synchronization data for each of a plurality of users and a plurality of terminals to be synchronized are recorded.

제어부(17)는 제1 버퍼(11), 제2 버퍼(13), 데이터베이스부(15) 및 인터페이스부(19)를 제어하여 본 발명에 따른 데이터 동기화를 수행한다.The controller 17 controls the first buffer 11, the second buffer 13, the database 15, and the interface 19 to perform data synchronization according to the present invention.

인터페이스부(19)는 케이블(2)을 통해 단말기(3)와 연결되어 단말기(3)와의 인터페이스를 담당한다.The interface unit 19 is connected to the terminal 3 via a cable 2 to perform an interface with the terminal 3.

이하에서는, 도 2에 도시된 본 발명에 따른 데이터 동기화 장치에 의해 수행되는 데이터 동기화 과정을 상세히 설명한다.Hereinafter, the data synchronization process performed by the data synchronization device shown in FIG. 2 will be described in detail.

도 3은 본 발명에 따른 데이터 동기화 방법을 설명하기 위한 흐름도이다.3 is a flowchart illustrating a data synchronization method according to the present invention.

데이터 동기화 장치(1)와 데이터 동기화가 수행될 단말기(3)가 케이블(2)을 통해 서로 접속한다(제41 단계).The data synchronization device 1 and the terminal 3 on which data synchronization is to be connected are connected to each other via a cable 2 (step 41).

데이터 동기화 장치(1)의 제어부(17)는 단말기(3)가 동기화를 위해 최초로 접속한 단말기인지 여부를 확인한다(제42 단계).The controller 17 of the data synchronization device 1 checks whether the terminal 3 is the first terminal connected for synchronization (step 42).

만약, 동기화를 위해 최초로 접속한 단말기이면 단말기(3)의 데이터 구조를 파악한다(제 43단계). 제어부(17)는 단말기(3)에 저장된 동기화 대상 데이터를 전달받아 데이터베이스부(15)에 저장한다. 저장된 단말기(3)의 데이터는 히스토리(history)라고도 부른다. 히스토리는 나중에 단말기(3)의 재동기화시에 단말기(3)의 동기화 대상 데이터에 동기화 플래그를 생성하는데 이용된다.If it is the first terminal connected for synchronization, the data structure of the terminal 3 is determined (step 43). The controller 17 receives the synchronization target data stored in the terminal 3 and stores the synchronization target data in the database unit 15. The data of the stored terminal 3 is also called history. The history is later used to generate a synchronization flag in the synchronization target data of the terminal 3 upon resynchronization of the terminal 3.

또한 제어부(17)는 데이터베이스부(15)에 미리 저장된 단말기(3)의 데이터 구조 정보 및 싱크 팩트(sync fact)를 포함하는 정보가 기록된 데이터 포맷 파일(도시되지 않음)을 검색하여 단말기(3)의 데이터 구조 정보 및 싱크 팩트를 전달받아 데이터베이스부(15)에 저장한다. 싱크 팩트는 데이터를 비교 할 때 데이터 필드에서 어떤 것들이 같으면 같은 데이터로 취급 할 수 있는지를 나타내는 항목이다.The controller 17 also searches for a data format file (not shown) in which information including data structure information and sync facts of the terminal 3 prestored in the database unit 15 is recorded and the terminal 3 is searched. Data structure information and sink facts are received and stored in the database unit 15. A sync fact is an item that indicates what data fields are the same when comparing data.

제어부(17)는 단말기(3)의 데이터 포맷 파일에 기록된 데이터 구조 정보에 따라 단말기(3)의 데이터 구조를 파악한다.The controller 17 grasps the data structure of the terminal 3 according to the data structure information recorded in the data format file of the terminal 3.

제어부(17)는 데이터 테이블의 데이터 구조를 확장하여 단말기(3)의 데이터 구조를 수용한다(제44 단계).The controller 17 expands the data structure of the data table to accommodate the data structure of the terminal 3 (step 44).

도 6a 내지 도 6c는 데이터 데이블의 구조가 확장되는 일 예를 설명하기 위한 도면이다.6A to 6C are diagrams for describing an example in which a structure of a data table is expanded.

도 6a는 제어부(17)에 의해 데이터 구조가 확장되기 전 데이터베이스부(15)내에 저장된 데이터 테이블(15a)을 나타내는 도면이다.FIG. 6A is a diagram showing a data table 15a stored in the database unit 15 before the data structure is expanded by the control unit 17. FIG.

데이터 테이블(15a)은 특정 사용자의 주소록의 일부를 나타낸다. 즉, 데이터 테이블(15a)에는 A, B 및 C라는 사람들의 집 전화, 핸드폰 번호 및 이메일 주소가 각각 기록되어 있다. 여기서 A, B 및 C 각각에 속하는 데이터를 데이터 유닛(unit)이라 하고, 각 데이터 유닛은 다수의 데이터 필드로 구성된다. 데이터 동기화는 데이터 유닛 단위로 수행된다. 도시되지는 않았으나 각 데이터 유닛은 데이터의 종류를 나타내는 분류(branch) 내에 포함된다. 분류는 예컨대, 해당 데이터 유닛이 주소록을 나타내는지 일정관리를 나타내는지를 나타낸다.The data table 15a represents a part of the address book of a specific user. That is, the data table 15a records home telephones, cell phone numbers, and e-mail addresses of people A, B, and C, respectively. Herein, data belonging to each of A, B, and C is called a data unit, and each data unit is composed of a plurality of data fields. Data synchronization is performed on a data unit basis. Although not shown, each data unit is included in a branch indicating the type of data. The classification indicates, for example, whether the data unit represents an address book or a schedule management.

도 6b는 단말기(3)에 저장된 동기화 대상 데이터를 나타내는 도면이다. 도 6b를 참조하면, 단말기(3)에는 상기 특정 사용자의 주소록으로서 D라는 사람의 집전화번호, 이메일 주소 및 주소가 저장되어 있다.6B is a diagram illustrating synchronization target data stored in the terminal 3. Referring to FIG. 6B, the terminal 3 stores a home telephone number, an e-mail address, and an address of a person D as an address book of the specific user.

도 6c는 제어부(17)에 의해 도 6b의 단말기(3)의 데이터 구조를 수용하기 위해 데이터 구조가 확장된 데이터 테이블(15b)을 나타내는 도면이다. A, B 및 C의 각 데이터 유닛에 새로이 주소를 나타내는 데이터 필드가 추가되었으며 데이터 값이 없으므로 공백상태이다. D의 데이터 유닛은 핸드폰을 나타내는 데이터 필드가 추가되었으며 역시 데이터 값이 없으므로 공백상태이다.FIG. 6C is a diagram showing a data table 15b in which the data structure is extended by the controller 17 to accommodate the data structure of the terminal 3 of FIG. 6B. Each data unit of A, B, and C has a new data field indicating its address and is empty because there is no data value. D's data unit is empty because it adds a data field to represent the mobile phone and also has no data values.

데이터베이스 구조가 고정된 경우에는, 도 6c에 도시한 바와 같이 새로운 단말기의 데이터 구조를 수용하도록 데이터 구조를 확장할 수 없다. 본 발명에서는데이터 구조를 확장하기 위해 데이터 테이블을 마크업 문서(mark-up document)를 이용해 생성한다. 데이터 구조 자체를 콘텐츠화하여 데이터 테이블을 마크업 문서를 이용해 생성함으로써 콘텐츠를 자유로이 변경하는 것과 마찬가지로 용이하게 데이터 구조를 확장할 수 있게 된다.If the database structure is fixed, the data structure cannot be extended to accommodate the data structure of the new terminal as shown in Fig. 6C. In the present invention, a data table is created using a mark-up document to extend the data structure. The content structure of the data structure itself can be used to create a data table using a markup document, so that the data structure can be easily extended as the content can be freely changed.

도 7a 내지 도 7c는 XML(eXtended Markup Language)로 작성된 데이터 테이블 및 확장된 데이터 테이블의 일 예를 나타내는 도면이다.7A to 7C are diagrams illustrating examples of a data table and an extended data table written in XML (eXtended Markup Language).

도 7a는 XML로 작성되어 데이터베이스부(15)에 저장된 데이터 테이블의 일 예이다.7A is an example of a data table written in XML and stored in the database unit 15.

도 7a의 데이터 테이블은 분류 식별자가 "contact" 즉 주소록이고 홍길동과 김갑돌에 관한 두 개의 데이터 유닛이 있으며, 각 데이터 유닛에는 "name", "mobilephone", "phone" 및 "email" 필드가 존재한다.In the data table of FIG. 7A, the classification identifier is "contact", that is, an address book, and there are two data units related to Hong Gil-dong and Kim Gap-dol, and each data unit has "name", "mobilephone", "phone", and "email" fields. .

도 7b는 단말기(3)에 저장된 데이터로서, 데이터 테이블에 추가할 데이터가 마크업 문서 형태로 기록된 일 예이다.FIG. 7B is an example of data stored in the terminal 3 in which data to be added to the data table is recorded in the form of a markup document.

데이터는 분류 식별자가 "contact" 즉 주소록이고 성춘향에 관한 데이터 유닛이 있으며, 데이터 유닛에는 "name", "phone", "email" 및 "address" 필드가 존재한다. 상기 데이터 테이블의 데이터 필드와 비교할 때 "mobilephone" 필드가 없고 대신 "address" 필드가 존재한다.The data has a classification identifier of "contact" or address book, and there is a data unit related to sexual orientation, and the data unit has "name", "phone", "email" and "address" fields. Compared with the data field of the data table, there is no "mobilephone" field and there is a "address" field instead.

도 7c는 도 7b의 단말기(3)에 저장된 데이터를 수용하기 위해 데이터 구조가 확장된 데이터 테이블을 나타내는 XML 문서이다.FIG. 7C is an XML document showing a data table whose data structure is extended to accommodate data stored in the terminal 3 of FIG. 7B.

도 6c에 도시된 데이터 구조가 확장된 데이터 테이블(15b)과 같이, 홍길동과김갑돌에 관한 각 데이터 유닛에 새로이 주소를 나타내는 "address" 필드가 추가되었으며 데이터 값은 없다. 성춘향에 관한 데이터 유닛은 핸드폰을 나타내는 "mobilephone" 필드가 추가되었으며 역시 데이터 값은 없다.Like the data table 15b in which the data structure shown in FIG. 6C is extended, a "address" field indicating a new address has been added to each data unit for Hong Gil-dong and Kim Gab-dol, and there is no data value. The data unit for sexual orientation has a "mobilephone" field indicating a mobile phone and no data value.

전술한 데이터 테이블의 확장 예에서는 새로운 데이터 필드가 추가된 경우를 설명하였으나, 단말기(3)에 데이터 데이블에 존재하지 않는 새로운 분류에 해당하는 데이터가 저장된 경우에는 새로운 분류를 생성하고 각 데이터 필드를 만든다. 예컨대, 데이터 테이블에는 주소록에 관한 데이터만 있었으나 단말기(3)에 일정관리에 관한 분류 식별자가 존재하는 경우를 예로 들 수 있다.In the above example of expanding the data table, a case where a new data field is added has been described. However, when data corresponding to a new classification that does not exist in the data table is stored in the terminal 3, a new classification is generated and each data field is created. . For example, in the data table, only data relating to an address book is present, but a classification identifier relating to schedule management is present in the terminal 3.

이와 같이, 마크업 문서를 이용해 데이터 테이블을 구축하기 때문에 데이터의 구조를 확장, 변경할 수 있어 전혀 새로운 데이터 구조를 가지는 단말기라 하더라도 본 발명에 따른 데이터 동기화 장치에 의하면 데이터 동기화가 가능해진다.In this way, since the data table is constructed using the markup document, the data structure can be extended and changed, so that even if the terminal has a completely new data structure, the data synchronization device according to the present invention enables data synchronization.

제 44단계에서 데이터 테이블의 구조가 확장되면, 제어부(17)는 저장된 싱크 팩트를 기준으로 데이터 테이블에 저장된 데이터와 단말기(3) 데이터를 비교하여 동일한 데이터 유닛을 검색하여, 동일한 데이터 유닛을 제외한 나머지 데이터 유닛들을 데이터 테이블에 저장시킨다(제 45단계).When the structure of the data table is expanded in step 44, the controller 17 compares the data stored in the data table with the data of the terminal 3 based on the stored sync facts, searches for the same data unit, and excludes the same data unit. The data units are stored in the data table (step 45).

동일한 데이터 유닛인지 판단을 위해 싱크 팩트와 동일항목 판단기준(validcount)을 이용한다. 즉, 분류 식별자가 주소록인 경우, 싱크 팩트를 이름, 핸드폰 번호 및 이메일로 하고, 동일항목 판단기준을 2로 한다. 따라서 싱크 팩트인 이름, 핸드폰 번호 및 이메일 중에 2개가 일치하면 동일한 데이터 유닛으로 판단한다. 왜냐하면 동명 이인이 있을 수 있기 때문에 세 가지 항목 중 2가지를 만족 하면 같은 데이터로 본다. 핸드폰 번화와 이메일이 같고 이름이 틀린 경우는 같은 데이터로 본다. 왜냐하면 핸드폰 번호와 이메일은 한 사람을 유일하게 식별 할 수 있는 키로 보기 때문에 다른 이름을 사용하는 같은 데이터로 취급한다.To determine whether the data unit is the same, a sync fact and an identical item validity count are used. That is, when the classification identifier is an address book, the sync fact is a name, a mobile phone number and an e-mail, and the same item criterion is set to 2. Therefore, if two of the sync fact name, mobile phone number and e-mail match, the same data unit is determined. Because there may be two persons with the same name, if two of three items are satisfied, they are regarded as the same data. If the phone number and e-mail are the same and the name is wrong, the same data is used. Because cell phone numbers and e-mails are viewed as one uniquely identifying key, they are treated as the same data using different names.

반면, 개인 일정의 경우 싱크 팩트가 일시, 장소 및 목적이 되고 동일항목 판단기준(vaildcount)은 3으로 한다. 일시와 장소가 같다고 하더라도 목적이 틀린 약속이 존재할 수 있기 때문이다.On the other hand, in the case of personal schedules, the sync fact is the date, time, place and purpose, and the same item's judgment count is set to three. Even if the date and time are the same, there may be a wrong purpose.

동일 데이터 유닛을 파악함으로써 데이터 테이블에 이미 존재하는 데이터 유닛은 새로 데이터 테이블에 추가시키지 않는다. 따라서 새로운 단말기가 데이터 동기화 장치에 접속하여 새로운 데이터가 입력되더라도 새로운 단말기에 저장된 데이터 유닛의 수만큼 데이터 테이블에 데이터 유닛의 수가 증가하는 것이 아니라, 새로운 단말기에 저장된 데이터 유닛의 수 이하로 데이터 테이블의 데이터 유닛의 수가 증가한다.By identifying the same data unit, data units already present in the data table are not newly added to the data table. Therefore, even if a new terminal is connected to the data synchronization device and new data is input, the number of data units is not increased in the data table by the number of data units stored in the new terminal, but the data in the data table is less than or equal to the number of data units stored in the new terminal. The number of units increases.

제45 단계 후, 제어부(17)의 제어에 따라 데이터 테이블의 데이터와 단말기(3)의 데이터 간에 동기화가 수행된다(제 46단계).After operation 45, synchronization between data of the data table and data of the terminal 3 is performed under the control of the controller 17 (step 46).

도 4는 도 3에 도시된 제 46단계의 세부단계들을 설명하기 위한 일 실시예를 나타내는 흐름도이다.4 is a flowchart illustrating an exemplary embodiment for describing the detailed steps of the forty-seventh step illustrated in FIG. 3.

도면에 별도로 도시되지는 않았으나 먼저, 제어부(17)는 데이터베이스부(15)의 데이터 테이블에서 단말기(3)의 데이터 구조에 부합하는 데이터를 읽어와 제1 버퍼(11)에 저장하고, 단말기(3)로부터 전달받은 단말기의 동기화 대상 데이터를 제2 버퍼(13)에 저장한다.Although not separately illustrated in the drawing, first, the controller 17 reads data corresponding to the data structure of the terminal 3 from the data table of the database unit 15, stores the data in the first buffer 11, and stores the data in the first buffer 11. The synchronization target data received from the terminal is stored in the second buffer 13.

도 8a 및 도 8b는 제1 버퍼(11) 및 제2 버퍼(13)에 저장된 데이터의 일 예를 나타내는 도면이다.8A and 8B illustrate an example of data stored in the first buffer 11 and the second buffer 13.

도 8a 는 도 6c와 같은 데이터 테이블로부터 도 6b와 같은 데이터 구조를 가지는 단말기의 데이터 구조에 부합하는 데이터를 제어부(17)가 읽어와 제1 버퍼(11)에 저장한 데이터를 나타낸다.FIG. 8A illustrates data stored in the first buffer 11 by the controller 17 reading data corresponding to the data structure of the terminal having the data structure of FIG. 6B from the data table of FIG. 6C.

도 8b는 도 6b와 같은 데이터 구조를 가지는 단말기의 데이터가 제2 버퍼(13)에 저장된 도면이다.FIG. 8B is a diagram in which data of a terminal having the same data structure as in FIG. 6B is stored in the second buffer 13.

제1 버퍼(11) 및 제2 버퍼(13)에 동일한 데이터 구조를 가지는 데이터 동기화 장치(1)의 데이터와 단말기(3)의 데이터를 각각 저장한 후, 제어부(17)는 동기화가 수행될 대응하는 데이터 유닛들을 검색한다(제 46a단계).After storing the data of the data synchronization device 1 and the data of the terminal 3 having the same data structure in the first buffer 11 and the second buffer 13, respectively, the controller 17 corresponds to the synchronization to be performed. Search for data units (step 46a).

단말기(3)에 저장된 데이터에 ID가 존재하지 않는다면 동기화 상태를 파악하기 위해서 동일 데이터 유닛을 찾아야 한다. 단말기의 데이터와 중앙 데이터 베이스의 데이터간의 정보 교환을 위해서는 양자의 어떠한 데이터 유닛이 서로 일치하는지를 알아야 하기 때문이다.If the ID does not exist in the data stored in the terminal 3, the same data unit must be found to determine the synchronization state. This is because in order to exchange information between the data of the terminal and the data of the central database, it is necessary to know which data units of both are coincident with each other.

동일 데이터 유닛을 찾을 때는 데이터 유닛의 필드가 모두 같은 것들을 우선해서 검색한다. 그 후에는 소정의 동기화시 동일항목 판단기준(comparevalidcount)와 소정의 동일항목 판단기준(vaildcount)을 이용하여 동일 항목을 찾는다. 동일항목 판단기준(vaildcount)은 전술한 바와 같다. 동기화시 동일항목 판단기준(comparevalidcount)은 동일항목 판단기준보다 그 수가 감소한 값이다. 예컨대 동일항목 판단기준이 2라면, 동기화시 동일항목 판단기준은 1로 하여 동일 여부 판단 기준을 완화한다. 왜냐하면 싱크 팩트를 구성하는 일부 데이터 필드의 값이 어떤 이유에서든 변경된 경우, 동일한 데이터 유닛으로 파악되지 않는 경우를 방지하기 위함이다.When searching for the same data unit, all fields of the data unit are searched first with the same. Thereafter, the same item is searched for using the same item criterion (comparevalidcount) and the predetermined same item criterion (vaildcount) during a predetermined synchronization. The same item judgment count is as described above. When synchronizing, the same criteria criterion (comparevalidcount) is a number that is smaller than the same criteria criterion. For example, if the same item criterion is 2, the same item criterion is 1 when synchronizing to ease the criterion of equality. This is to prevent the case in which the values of some data fields constituting the sync fact are changed for some reason and are not recognized as the same data unit.

제 46a단계 후, 제어부(17)는 제1 버퍼(11) 및 제2 버퍼(13)에 저장된 동기화 대상인 대응하는 각 데이터 유닛에 포함된 동기화 플래그를 이용하여 동기화 상태를 확인하여 동기화를 수행한다(제 46b단계).After operation 46a, the controller 17 performs synchronization by checking the synchronization state by using the synchronization flag included in each data unit corresponding to the synchronization target stored in the first buffer 11 and the second buffer 13 ( Step 46b).

도 8a 및 도 8b의 각 데이터 유닛의 선두에는 동기화 플래그가 포함되어 있다. 양자의 동기화 플래그를 비교하여 양자 모두 "sync"이면 동기화가 완료된 데이터 유닛이라는 의미가 되고, 일측이라도 동기화 플래그가 "sync"가 아니면 동기화가 필요한 데이터 유닛이라는 의미가 된다.A synchronization flag is included in the head of each data unit in FIGS. 8A and 8B. Comparing the synchronization flags of both, if the "sync" both means that the data unit has completed the synchronization, even if one side of the synchronization flag is not "sync" means that the data unit that needs to be synchronized.

만약 데이터 동기화 장치의 데이터 테이블에 기록된 특정 데이터 유닛, 예컨대 도 8a에서 A에 관한 데이터 유닛을 보면, 동기화 플래그가 "change"이다. 동기화 플래그가 "change"이면 해당 데이터 유닛의 어떤 필드의 데이터 값이 변경된 것이거나 해당 데이터 유닛 자체가 추가된 것임을 나타낸다. 이 경우, 제어부(17)는 제2 버퍼(13)의 해당 데이터 유닛을 제1 버퍼(11)에 저장된 해당 데이터 유닛의 정보로 대체한다.If a particular data unit recorded in the data table of the data synchronization device, for example, a data unit relating to A in Fig. 8A, the synchronization flag is "change". When the synchronization flag is "change", it indicates that the data value of a field of the corresponding data unit is changed or the corresponding data unit itself is added. In this case, the controller 17 replaces the corresponding data unit of the second buffer 13 with the information of the corresponding data unit stored in the first buffer 11.

도 8a에서 C에 관한 데이터 유닛을 보면, 동기화 플래그가 "remove"이다. 동기화 플래그가 "remove"이면 해당 데이터 유닛이 삭제되어야 하는 것임을 나타낸다. 이 경우, 제어부(17)는 제2 버퍼(13)의 해당 데이터 유닛을 삭제한다. 제어부(17)는 제2 버퍼(13)의 해당 데이터 유닛을 삭제한 후, 제1 버퍼(11)에 저장된 C에 관한 데이터 유닛의 동기화 플래그를 "afterremoveaction"으로 변경한다. 제어부(17)는 데이터 테이블에 기록된, 동기화 대상인 모든 단말기의 동기화 플래그가 "remove"에서 "afterremoveaction"으로 변경되면, 해당 데이터 유닛들을 데이터 테이블에서 삭제한다.Looking at the data unit for C in FIG. 8A, the synchronization flag is "remove". A synchronization flag of "remove" indicates that the corresponding data unit should be deleted. In this case, the controller 17 deletes the corresponding data unit of the second buffer 13. The controller 17 deletes the corresponding data unit of the second buffer 13, and then changes the synchronization flag of the data unit related to C stored in the first buffer 11 to "afterremoveaction". The controller 17 deletes the corresponding data units from the data table when the synchronization flags of all the terminals to be synchronized, which are recorded in the data table, are changed from "remove" to "afterremoveaction".

도 5는 도 3에 도시된 제 46단계의 세부단계들을 설명하기 위한 다른 실시예를 나타내는 흐름도이다.FIG. 5 is a flowchart illustrating another embodiment for describing the detailed steps of the forty-seventh step illustrated in FIG. 3.

도 5에 도시된 세부단계들 중, 제46c 단계 및 제46e 단계는 도 4의 제46a 단계 및 제46b 단계와 각각 동일한 단계이다. 차이점은 단말기가 데이터 유닛에 동기화 플래그를 생성하는 기능이 없는 경우, 제46d 단계에서 단말기의 각 데이터 유닛에 동기화 플래그를 생성하는 단계가 추가된 점이 상이하다.Among the detailed steps illustrated in FIG. 5, steps 46c and 46e are the same as steps 46a and 46b of FIG. 4, respectively. The difference is that when the terminal does not have a function of generating a synchronization flag in the data unit, a step of generating a synchronization flag in each data unit of the terminal is added in step 46d.

제46d 단계를 보다 상세히 설명하면, 제어부(17)는 제2 버퍼에 저장된 단말기의 동기화 대상 데이터와 데이터베이스부(15)에 미리 저장된 단말기(3)의 이전 데이터(히스토리)를 비교함으로써 데이터의 변화가 생긴 데이터 유닛을 파악하여 각 데이터 유닛별 동기화 플래그를 생성하고, 제2 버퍼에 저장된 단말기의 각 데이터 유닛에 생성된 동기화 플래그를 포함시킨다.Referring to step 46d in more detail, the controller 17 compares the synchronization target data of the terminal stored in the second buffer with previous data (history) of the terminal 3 prestored in the database 15 to change the data. The generated data unit is identified to generate a synchronization flag for each data unit, and the generated synchronization flag is included in each data unit of the terminal stored in the second buffer.

도 5에 별도로 도시되지는 않았으나, 동기화 플래그를 이용하여 제1 버퍼(11) 및 제2 버퍼(13)간에 정보 교환을 하여 데이터 동기화한 후, 제1 버퍼(11)의 데이터는 데이터 테이블로 전달하여 데이터 테이블을 동기화된 데이터로 업데이트하고, 제2 버퍼(13)에 저장된 데이터는 단말기(3)로 전달되어 단말기(3)를 동기화한다.Although not separately illustrated in FIG. 5, after data is synchronized by exchanging information between the first buffer 11 and the second buffer 13 using a synchronization flag, the data of the first buffer 11 is transferred to the data table. The data table is updated with the synchronized data, and the data stored in the second buffer 13 is transferred to the terminal 3 to synchronize the terminal 3.

동기화가 완료된 후, 제어부(17)는 데이터베이스부(15)에 저장되어 있던 단말기(3)의 이전데이터 대신에 제2 버퍼(13)에 저장된 단말기 데이터를 저장시킴으로써 데이터베이스부(15)에 저장되는 단말기(3)의 이전데이터를 업데이트한다.After the synchronization is completed, the controller 17 stores the terminal data stored in the second buffer 13 instead of the previous data of the terminal 3 stored in the database 15 so that the terminal is stored in the database 15. Update the previous data of (3).

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disks, optical data storage devices, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). It includes being. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상에서 설명한 바와 같이, 본 발명에 따른 데이터 동기화 방법 및 그 장치는, 데이터 동기화가 수행될 단말기의 데이터 구조가 데이터 동기화 장치에 저장된 데이터의 구조와 상이하여도 데이터 구조를 확장함으로써 용이하게 데이터 동기화를 수행하고, 미리 저장된 단말기의 이전 데이터를 이용하여 동기화 플래그를 생성할 수 있어, 동기화 플래그 생성 기능이 없는 단말기에 대하여도 동기화를 수행할 수 있는 효과를 제공한다.As described above, the data synchronization method and apparatus according to the present invention can easily perform data synchronization by extending the data structure even if the data structure of the terminal on which the data synchronization is to be performed is different from that of the data stored in the data synchronization device. In addition, the synchronization flag may be generated by using the previous data of the terminal stored in advance, thereby providing an effect that synchronization can be performed even for a terminal having no synchronization flag generation function.

Claims (17)

데이터 동기화 장치 내의 데이터 테이블에 저장된 동기화 대상 데이터와 단말기의 데이터를 동기화하기 위한 데이터 동기화 방법에 있어서,A data synchronization method for synchronizing data of a terminal with data to be synchronized stored in a data table in a data synchronization device, (a) 상기 단말기가 최초로 동기화가 수행되는 단말기인지 여부를 판단하는 단계;(a) determining whether the terminal is the first terminal to be synchronized; (b) 최초로 동기화가 수행되는 단말기이면, 상기 단말기의 데이터 구조를 파악하는 단계;(b) identifying a data structure of the terminal if the first synchronization is performed; (c) 상기 데이터 테이블의 데이터 구조를 확장하여 상기 단말기의 데이터 구조를 수용하는 단계; 및(c) expanding the data structure of the data table to accommodate the data structure of the terminal; And (d) 상기 데이터 테이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 단계를 포함하는 것을 특징으로 하는 데이터 동기화 방법.(d) synchronizing the data stored in the data table with the terminal data. 제1 항에 있어서,According to claim 1, 상기 (c)단계는 상기 단말기의 데이터 구조와 상기 데이터 테이블의 데이터 구조를 비교하여 상기 단말기의 데이터 구조에는 존재하나, 상기 데이터 테이블에는 존재하지 않는 데이터 분류 및/또는 데이터 필드를 상기 데이터 테이블에 추가하여 상기 데이터 테이블의 데이터 구조를 확장하는 단계인 것을 특징으로 하는 데이터 동기화 방법.Step (c) compares the data structure of the terminal with the data structure of the data table and adds a data classification and / or data field present in the data structure of the terminal but not present in the data table. Extending the data structure of the data table. 제1 항에 있어서,According to claim 1, 상기 데이터 테이블은 마크업 문서로 작성되어, 다수의 데이터 유닛을 포함하여 이루어진 상기 데이터 테이블의 데이터 구조가 콘텐츠화된 것이며,The data table is created as a markup document, and the data structure of the data table including a plurality of data units is made into a content; 상기 (c)단계는 마크업 문서로 작성된 상기 데이터 테이블을 이용하여 상기 데이터 테이블의 데이터 구조를 확장하는 단계인 것을 특징으로 하는 데이터 동기화 방법.And (c) expanding the data structure of the data table using the data table created as a markup document. 제1 항에 있어서, 상기 (d)단계는The method of claim 1, wherein step (d) (d1) 상기 데이터 테이블에 저장된 데이터와 상기 단말기 데이터를 비교하여 동일한 데이터 유닛을 검색하는 단계; 및(d1) searching for the same data unit by comparing the data stored in the data table with the terminal data; And (d2) 동일한 데이터 유닛을 제외한 나머지 데이터 유닛들을 상기 데이터 테이블에 저장하는 단계; 및(d2) storing remaining data units except for the same data unit in the data table; And (d3) 상기 데이터 데이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 단계를 포함하는 것을 특징으로 하는 데이터 동기화 방법.(d3) synchronizing the data stored in the data table with the terminal data. 제4 항에 있어서,The method of claim 4, wherein 상기 (d1) 단계는 적어도 둘 이상의 동일 항목과 소정의 동일 항목 개수에 따라 동일한 데이터 유닛을 검색하는 단계인 것을 특징으로 하는 데이터 동기화 방법.The step (d1) is a step of retrieving the same data unit according to at least two or more identical items and a predetermined number of identical items. 제4 항에 있어서, 상기 (d3)단계는The method of claim 4, wherein step (d3) (d3-1) 상기 데이터 테이블의 데이터 및 상기 단말기의 데이터 중에서 동기화를 수행할 서로 대응하는 각각의 데이터 유닛들을 검색하는 단계; 및(d3-1) searching respective data units corresponding to each other to perform synchronization among data of the data table and data of the terminal; And (d3-2) 상기 데이터 테이블의 데이터 유닛들과 상기 단말기의 데이터 유닛들 각각에 포함된 동기화 플래그를 이용하여 상기 데이터 테이블의 데이터와 상기 단말기의 데이터를 동기화하는 단계를 포함하는 것을 특징으로 하는 데이터 동기화 방법.(d3-2) synchronizing data of the data table with data of the terminal by using synchronization flags included in each of the data units of the data table and the data units of the terminal; Synchronization method. 제4 항에 있어서, 상기 (d3)단계는The method of claim 4, wherein step (d3) (d3-1) 상기 데이터 테이블의 데이터 및 상기 단말기의 데이터 중에서 동기화를 수행할 서로 대응하는 각각의 데이터 유닛들을 검색하는 단계;(d3-1) searching respective data units corresponding to each other to perform synchronization among data of the data table and data of the terminal; (d3-2) 상기 단말기의 데이터와 상기 동기화 장치 내에 미리 저장된 상기 단말기의 이전 데이터를 비교하여, 상기 단말기의 각 데이터 유닛별로 데이터의 변화를 나타내는 동기화 플래그를 생성하는 단계; 및(d3-2) generating a synchronization flag indicating a change of data for each data unit of the terminal by comparing the data of the terminal with previous data of the terminal previously stored in the synchronization device; And (d3-3) 상기 데이터 테이블의 데이터 유닛들과 상기 단말기의 데이터 유닛들 각각에 포함된 동기화 플래그를 이용하여 상기 데이터 테이블의 데이터와 상기 단말기의 데이터를 동기화하는 단계를 포함하는 것을 특징으로 하는 데이터 동기화 방법.(d3-3) synchronizing data of the data table with data of the terminal by using synchronization flags included in each of the data units of the data table and the data units of the terminal; Synchronization method. 제7 항에 있어서, 상기 (d3)단계는The method of claim 7, wherein step (d3) (d3-4) 동기화된 상기 단말기의 데이터를 상기 동기화 장치 내에 저장하는단계를 더 포함하고,(d3-4) storing the synchronized data of the terminal in the synchronization device, 상기 동기화 장치 내에 저장된 상기 단말기의 데이터는 이 후, 상기 단말기의 동기화 시에 상기 (d3-2)단계에서 동기화 플래그 생성을 위해 사용되는 것을 특징으로 하는 데이터 동기화 방법.The data of the terminal stored in the synchronization device is then used to generate a synchronization flag in the step (d3-2) at the time of synchronization of the terminal. 저장한 동기화 대상 데이터와 단말기의 데이터를 동기화하는 데이터 동기화 장치에 있어서,In the data synchronization device for synchronizing the data of the terminal and the stored synchronization target data, 상기 동기화 대상 데이터가 기록된 데이터 테이블을 저장하는 데이터베이스부;A database unit for storing a data table in which the synchronization target data is recorded; 상기 단말기와 접속하여 인터페이싱하는 인터페이스부; 및An interface unit for interfacing with the terminal; And 상기 인터페이스부를 통해 상기 단말기로부터 동기화 대상 데이터를 포함한 소정 정보를 입력받아, 상기 단말기가 최초로 동기화가 수행되는 단말기인 것으로 판단되면, 미리 저장된 상기 단말기의 데이터 구조 정보를 포함하는 데이터 포맷 파일을 참조하여 상기 단말기의 데이터 구조를 파악하여, 상기 단말기의 데이터 구조를 수용하도록 상기 데이터 테이블의 데이터 구조를 확장한 후, 상기 데이터 테이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 제어부를 포함하는 것을 특징으로 하는 데이터 동기화 장치.If predetermined information including synchronization target data is received from the terminal through the interface unit, and the terminal is determined to be the first terminal to be synchronized, the data format file including the data structure information of the terminal is stored in advance. And a controller for identifying the data structure of the terminal, extending the data structure of the data table to accommodate the data structure of the terminal, and then synchronizing the data stored in the data table with the terminal data. Device. 제9 항에 있어서,The method of claim 9, 상기 제어부는 상기 단말기의 데이터 구조와 상기 데이터 테이블의 데이터구조를 비교하여 상기 단말기의 데이터 구조에는 존재하나, 상기 데이터 테이블에는 존재하지 않는 데이터 분류 및/또는 데이터 필드를 상기 데이터 테이블에 추가하여 상기 데이터 테이블의 데이터 구조를 확장하는 것을 특징으로 하는 데이터 동기화 장치.The controller compares the data structure of the terminal with the data structure of the data table and adds a data classification and / or data field present in the data structure of the terminal but not present in the data table to add the data table to the data table. And a data structure for extending the data structure of the table. 제9 항에 있어서,The method of claim 9, 상기 데이터 테이블은 마크업 문서로 작성되어, 다수의 데이터 유닛을 포함하여 이루어진 상기 데이터 테이블의 데이터 구조가 콘텐츠화된 것이며,The data table is created as a markup document, and the data structure of the data table including a plurality of data units is made into a content; 상기 제어부는 마크업 문서로 작성된 상기 데이터 테이블을 이용하여 상기 데이터 테이블의 데이터 구조를 확장하는 것을 특징으로 하는 데이터 동기화 장치.And the controller extends the data structure of the data table using the data table created as a markup document. 제9 항에 있어서,The method of claim 9, 상기 제어부는 상기 단말기의 데이터 및 상기 데이터 테이블에 기록된 데이터를 비교하여 동일한 데이터 유닛을 검색하고, 동일한 데이터 유닛을 제외한 나머지 데이터 유닛들을 상기 데이터 테이블에 저장하고, 상기 데이터 데이블에 저장된 데이터와 상기 단말기 데이터를 동기화하는 것을 특징으로 하는 데이터 동기화 장치.The controller compares the data of the terminal and the data recorded in the data table to search for the same data unit, stores the remaining data units except for the same data unit in the data table, and stores the data stored in the data table and the terminal. A data synchronization device, characterized in that for synchronizing data. 제12 항에 있어서,The method of claim 12, 상기 제어부는 적어도 둘 이상의 동일 항목과 소정의 동일 항목 개수에 따라동일한 데이터 유닛을 검색하는 것을 특징으로 하는 데이터 동기화 장치.And the control unit searches for the same data unit according to at least two or more identical items and a predetermined number of identical items. 제12 항에 있어서,The method of claim 12, 상기 단말기로부터 입력된 동기화 대상 데이터를 저장하는 제1 버퍼; 및A first buffer configured to store synchronization target data input from the terminal; And 상기 데이터 테이블에 기록된 데이터 중, 상기 단말기의 동기화 대상 데이터에 대응하는 데이터를 저장하는 제2 버퍼를 더 포함하고,A second buffer configured to store data corresponding to synchronization target data of the terminal among data recorded in the data table, 상기 제어부는 상기 제1 버퍼 및 상기 제2 버퍼에 각각 저장된 상기 단말기의 동기화 대상 데이터 및 상기 데이터 테이블의 데이터 중에서 동기화를 수행할 서로 대응하는 각각의 데이터 유닛들을 검색하고, 상기 데이터 테이블의 데이터 유닛들과 상기 단말기의 데이터 유닛들 각각에 포함된 동기화 플래그를 이용하여 상기 데이터 테이블의 데이터와 상기 단말기의 데이터를 동기화하는 것을 특징으로 하는 데이터 동기화 장치.The control unit searches for data units corresponding to each other to perform synchronization among the synchronization target data of the terminal and data of the data table respectively stored in the first buffer and the second buffer, and the data units of the data table. And synchronizing data of the data table with data of the terminal by using a synchronization flag included in each of the data units of the terminal. 제12 항에 있어서,The method of claim 12, 상기 단말기로부터 입력된 동기화 대상 데이터를 저장하는 제1 버퍼; 및A first buffer configured to store synchronization target data input from the terminal; And 상기 데이터 테이블에 기록된 데이터 중, 상기 단말기의 동기화 대상 데이터에 대응하는 데이터를 저장하는 제2 버퍼를 더 포함하고,A second buffer configured to store data corresponding to synchronization target data of the terminal among data recorded in the data table, 상기 데이터베이스부는 상기 단말기의 이전 데이터를 더 저장하고,The database unit further stores the previous data of the terminal, 상기 제어부는 상기 제1 버퍼 및 상기 제2 버퍼에 각각 저장된 상기 단말기의 동기화 대상 데이터 및 상기 데이터 테이블의 데이터 중에서 동기화를 수행할서로 대응하는 각각의 데이터 유닛들을 검색하고, 상기 단말기의 데이터와 상기 데이터베이스부에 미리 저장된 상기 단말기의 이전 데이터를 비교하여, 상기 단말기의 각 데이터 유닛별로 데이터의 변화를 나타내는 동기화 플래그를 생성하고, 상기 데이터 테이블의 데이터 유닛들과 상기 단말기의 데이터 유닛들 각각에 포함된 동기화 플래그를 이용하여 상기 데이터 테이블의 데이터와 상기 단말기의 데이터를 동기화하는 것을 특징으로 하는 데이터 동기화 장치.The control unit searches for data units corresponding to each other to perform synchronization among the synchronization target data of the terminal and data of the data table respectively stored in the first buffer and the second buffer, and the data of the terminal and the database. Comparing the previous data of the terminal previously stored in the unit, generating a synchronization flag indicating a change of data for each data unit of the terminal, and synchronizing the data units of the data table with each of the data units of the terminal And synchronizing data of the data table with data of the terminal using a flag. 제15 항에 있어서, 상기 제어부는 동기화된 상기 단말기의 데이터를 상기 데이터베이스부에 저장하여 상기 단말기의 이전 데이터를 갱신하는 것을 특징으로 하는 데이터 동기화 장치.The apparatus of claim 15, wherein the controller is configured to store the synchronized data of the terminal to the database unit to update previous data of the terminal. 제1 항 내지 제 8항 중 어느 한 항에 기재된 방법을 실현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing the method according to any one of claims 1 to 8.
KR10-2003-0010381A 2003-02-19 2003-02-19 Method of synchronizing data, and the apparatus therefor KR100467627B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0010381A KR100467627B1 (en) 2003-02-19 2003-02-19 Method of synchronizing data, and the apparatus therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0010381A KR100467627B1 (en) 2003-02-19 2003-02-19 Method of synchronizing data, and the apparatus therefor

Publications (2)

Publication Number Publication Date
KR20040074490A KR20040074490A (en) 2004-08-25
KR100467627B1 true KR100467627B1 (en) 2005-01-24

Family

ID=37361207

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0010381A KR100467627B1 (en) 2003-02-19 2003-02-19 Method of synchronizing data, and the apparatus therefor

Country Status (1)

Country Link
KR (1) KR100467627B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100840362B1 (en) * 2007-02-21 2008-06-20 삼성전자주식회사 User information back-up device of different kind terminal and method in ip terminal

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990000124A (en) * 1997-06-03 1999-01-15 윤종용 Data management method of mobile phone by computer
KR20000054371A (en) * 2000-04-04 2000-09-05 송승한 IMS using PDAs mobile telephone pagers wire and wireless internet and DBMS
KR20010075966A (en) * 2000-01-21 2001-08-11 정성자 System for network-based personal information management service
KR20020029890A (en) * 2002-03-30 2002-04-20 이정환 System and method for operating mobile storage center, and mobile service providing method based on information stored in mobile storage center
JP2002141998A (en) * 2000-10-30 2002-05-17 Kyocera Communication Systems Co Ltd Electronic phonebook management device, electronic phonebook management system and electronic phonebook management method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19990000124A (en) * 1997-06-03 1999-01-15 윤종용 Data management method of mobile phone by computer
KR20010075966A (en) * 2000-01-21 2001-08-11 정성자 System for network-based personal information management service
KR20000054371A (en) * 2000-04-04 2000-09-05 송승한 IMS using PDAs mobile telephone pagers wire and wireless internet and DBMS
JP2002141998A (en) * 2000-10-30 2002-05-17 Kyocera Communication Systems Co Ltd Electronic phonebook management device, electronic phonebook management system and electronic phonebook management method
KR20020029890A (en) * 2002-03-30 2002-04-20 이정환 System and method for operating mobile storage center, and mobile service providing method based on information stored in mobile storage center

Also Published As

Publication number Publication date
KR20040074490A (en) 2004-08-25

Similar Documents

Publication Publication Date Title
US6697458B1 (en) System and method for synchronizing voice mailbox with e-mail box
CN101080056B (en) A management method and system of network browser collection folder of mobile terminal
CN101911740B (en) Method and apparatus for synchronizing contacts stored on smart card with contacts stored in an internal memory
CN101061475B (en) Maintaining time-date information for syncing low fidelity devices
US9020983B2 (en) Address list system and method of implementing an address list
US20030028526A1 (en) Programmatic discovery of common contacts
KR20060045897A (en) Method and system for synchronizing data between electronic devices
WO2003083684A1 (en) Method and apparatus for synchronizing how data is stored in different data stores
JP2008500622A (en) Method, system, computer program and device for management of media items
CN101808046A (en) Method and system for managing name card information
CN102769640B (en) The update method of user profile, server and system
US7130871B2 (en) Method and apparatus for representing deleted data in a synchronizable database
CN100472523C (en) Synchronizing server and device data using device data schema
US7213039B2 (en) Synchronizing differing data formats
WO2012013008A1 (en) Method and device for managing terminal data records
CN101184123B (en) Method for obtaining linkman information in address list, system and communication terminal
US6631378B1 (en) Communication unit and communication method with profile management
WO2010146542A1 (en) Method and device for modifying a personal data repository in a network
JP3756349B2 (en) Database management apparatus and recording medium on which program is recorded
CN103036861A (en) Relationship match method, system, server-side and client-side of contacts in address book
KR20050099279A (en) An electronic business card service system and method by using presence information
KR100467627B1 (en) Method of synchronizing data, and the apparatus therefor
KR20020014888A (en) Method for synchronizing an address book between mobile phone and personal information management server
CN101610225A (en) A kind of synchronization processing method, system and device
KR101104700B1 (en) Method for synchronizing the address book of mobile terminal

Legal Events

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

Payment date: 20121228

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee