KR101221672B1 - 데이터 동기화 시스템 - Google Patents

데이터 동기화 시스템 Download PDF

Info

Publication number
KR101221672B1
KR101221672B1 KR1020060120044A KR20060120044A KR101221672B1 KR 101221672 B1 KR101221672 B1 KR 101221672B1 KR 1020060120044 A KR1020060120044 A KR 1020060120044A KR 20060120044 A KR20060120044 A KR 20060120044A KR 101221672 B1 KR101221672 B1 KR 101221672B1
Authority
KR
South Korea
Prior art keywords
synchronization
data
meta information
stored
synchronization message
Prior art date
Application number
KR1020060120044A
Other languages
English (en)
Other versions
KR20080049455A (ko
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 KR1020060120044A priority Critical patent/KR101221672B1/ko
Priority to US11/947,489 priority patent/US8874795B2/en
Publication of KR20080049455A publication Critical patent/KR20080049455A/ko
Application granted granted Critical
Publication of KR101221672B1 publication Critical patent/KR101221672B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/02Speed or phase control by the received code signals, the signals containing no special synchronisation information
    • H04L7/027Speed or phase control by the received code signals, the signals containing no special synchronisation information extracting the synchronising or clock signal from the received signal spectrum, e.g. by using a resonant or bandpass circuit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • 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/18File system types
    • G06F16/185Hierarchical storage management [HSM] systems, e.g. file migration or policies thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 데이터 동기화 시스템에 관한 것으로, 동기화 메시지 송신측이 동기화 메시지에 메타정보를 포함하여 전송하고, 동기화 메시지 수신측은 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 추후 처리를 수행하도록 구현함으로써 동기화 메시지 수신측에서 동기화 처리를 위한 무선 네트워크 접속을 최소화 할 수 있도록 한 것이다.
데이터 동기화, 동기화 메시지, 메타정보

Description

데이터 동기화 시스템{Data synchronization system}
도 1 은 통상적인 데이터 동기화 시스템의 개요도
도 2 는 본 발명에 따른 데이터 동기화 시스템의 일 실시예에 따른 블럭도
<도면의 주요 부분에 대한 부호의 설명>
10, 100 : 제1장치 11, 21, 110, 210 : 어플리케이션
12, 22, 120, 220 : 동기 에이전트 13, 23, 130, 230 : 데이터 저장소
14, 24, 140, 240 : 통신 인터페이스 20, 200 : 제2장치
150, 250 : 메타정보DB
본 발명은 데이터 동기화 시스템에 관한 것으로, 특히 무선 네트워크 연결 가능한 서버와 클라이언트 장치간의 무선 데이터 동기화 기술과 관련된다.
무선 인터넷 기술의 발전에 따라, 사용자는 회사나 가정 등의 이격된 장소에 있는 데이터를 장소와 시간에 구애받지 않고 이용할 수 있는 이동 컴퓨팅 시대가 도래하였다. 이에 따라, 요즘의 사용자들은 휴대폰, 개인 휴대용 정보 단말기(PDA), 휴대용 컴퓨터와 같은 모바일 기기나 데스크톱 컴퓨터를 사용하여 이메일 어플리케이션, 일정관리 어플리케이션, 동영상 및 음악 관련 어플리케이션, 그리고 주소록 어플리케이션 등 다양한 어플리케이션을 사용한다. 그리고, 각 장치의 저장장치에 여러 데이터를 분산 또는 복제하여 저장한다.
그런데, 모바일 기기는 그 특성상 분실 및 고장의 위험성이 크기 때문에 데이터 손실의 위험성을 갖고 있다. 따라서, 모바일 기기의 데이터를 개인용 데스크톱 컴퓨터나 특정 서버의 저장소에 백업해야 한다. 그러나, 사용자의 이동 단말기는 과금이나 네트워크 부하 등의 각종 문제 때문에 네트워크에 항상 연결되어 있지 않으므로, 데이터에 대한 동기화(Sync) 처리를 주기적 또는 비주기적으로 해주어야 한다.
이를 위해 사용자는 이동 단말기를 통해 주기적 또는 비주기적으로 네트워크에 접속하여 모바일 기기에서 변경된 데이터를 네트워크상의 저장소에 전송하고, 네트워크상의 저장소에서 갱신된 데이터를 전송받아 데이터 동기화(Sync)를 유지해야 한다. 이러한 동기화 기술의 대표적인 것이 모바일 국제 표준화 기구(OMA : Open Mobile Alliance)에서 제안된 SyncML이다.
도 1 에 통상적인 데이터 동기화 시스템을 도시하였다. 데이터 동기화 시스템은 제1장치(10)와, 제2장치(20)로 이루어지며, 상기 제1장치(10)와 제2장치(20)는 무선 네트워크를 통해 연결된다. 예컨대, 상기 제1장치(10)는 휴대폰, 개인 휴대용 정보 단말기(PDA), 휴대용 컴퓨터 등의 클라이언트 단말기, 상기 제2장치(20)는 서버 컴퓨터일 수 있으며, 이와는 반대로 상기 제1장치(10)가 서버 컴퓨터, 상기 제2장치(20)가 클라이언트 단말기일 수도 있다.
상기 제1장치(10)는 적어도 하나의 어플리케이션(11)과, 동기 에이전트(12)와, 데이터 저장소(13)와, 통신 인터페이스(14)를 포함하여 이루어진다. 상기 어플리케이션(11)은 상기 데이터 저장소(13)에 저장되는 동기화 데이터를 읽거나, 조작하거나, 저장하는 등의 각종 처리를 수행하는 소프트웨어이다. 상기 동기 에이전트(12)는 제2장치(20)로부터 전송된 동기화 메시지에 따라 상기 데이터 저장소(13)에 저장되는 동기화 데이터에 대한 동기화 처리를 수행한다. 상기 데이터 저장소(13)는 동기화 데이터를 저장한다. 상기 통신 인터페이스(14)는 제2장치(20)와의 무선 네트워크 연결을 처리한다.
상기 제2장치(20) 역시 상기 제1장치(10)와 동일한 형태이며, 적어도 하나의 어플리케이션(21)과, 동기 에이전트(22)와, 데이터 저장소(23)와, 통신 인터페이스(24)를 포함하여 이루어진다. 상기 어플리케이션(21)은 상기 데이터 저장소(23)에 저장되는 동기화 데이터를 읽거나, 조작하거나, 저장하는 등의 각종 처리를 수행하는 소프트웨어이다. 상기 동기 에이전트(22)는 제1장치(10)로부터 전송된 동기화 메시지에 따라 상기 데이터 저장소(23)에 저장되는 동기화 데이터에 대한 동기화 처리를 수행한다. 상기 데이터 저장소(23)는 동기화 데이터를 저장한다. 상기 통신 인터페이스(24)는 제1장치(10)와의 무선 네트워크 연결을 처리한다.
이와같은 구성을 갖는 통상적인 데이터 동기화 시스템의 데이터 동기화 동작을 알아본다. 편의상, 제1장치(10)가 클라이언트 단말기, 제2장치(20)가 서버 컴퓨터이고, 사용자가 제1장치(10)에서 주소록을 관리하는 어플리케이션(11)을 실행하여 주소록을 편집하여 데이터 저장소(13)에 저장하였다 가정한다. 이 때, 상기 데 이터 저장소는 모바일 기기의 플래쉬 메모리 등의 데이터 저장수단을 통칭한다.
주소록 편집이 완료되면, 동기 에이전트(12)가 실행되고, 상기 통신 인터페이스(14)를 통해 제2장치(20)와 네트워크 연결된다. 이 때, 상기 동기 에이전트(12)는 사용자에 의해 수동으로 실행될 수도 있고, 시스템에 의해 자동으로 실행될 수도 있다. 상기 동기 에이전트(12)는 동기화 메시지를 생성하여 이를 제2장치(20)로 전송하고, 이를 수신한 제2장치(20)는 동기 에이전트(22)를 통해 동기화 메시지를 해석하고, 데이터 저장소(23)에 저장된 동기화 데이터에 대한 동기화 처리를 수행한다.
상기 동기화 메시지는 동기화 대상이 되는 데이터 식별정보, 동기화 명령, 동기화 데이터를 포함한다. 위의 경우, 동기화 대상이 되는 데이터 식별정보는 주소록을 나타내는 정보, 동기화 명령은 주소록 갱신 명령, 동기화 데이터는 편집된 주소록 데이터이다. 상기 제2장치(20)는 동기 에이전트(22)를 통해 동기화 메시지를 해석하여 주소록 갱신 명령에 따라 데이터 저장소(23)에 저장된 주소록을 나타내는 정보에 의해 식별되는 위치에 편집된 주소록 데이터를 저장하여 갱신함으로써 데이터의 동기화 처리를 수행한다.
그러나, 필요에 따라 데이터 저장소에 저장된 일부의 데이터만 선택적으로 동기화할 필요가 있거나, 무선 네트워크 연결없이 동기화 데이터에 대한 처리가 이루어져야 할 필요가 있음에도 불구하고, 종래의 경우에는 데이터 동기화를 위해서는 매번 제1장치(10)와 제2장치(20)간에 무선 네트워크 연결되어야만 했기 때문에, 사용자의 과금 부담이 커질 수 밖에 없었다.
따라서, 본 발명자는 동기화 메시지 송신측에서 동기화 메시지에 메타정보를 포함하여 전송함으로써 동기화 메시지 수신측에서 동기화 처리를 위한 무선 네트워크 접속을 최소화 할 수 있어 사용자의 과금 부담을 줄 일 수 있으면서도 효율적인 동기화 처리가 가능한 기술에 대한 연구를 하게 되었다.
본 발명은 상기한 취지하에 발명된 것으로, 동기화 메시지 송신측에서 동기화 메시지에 메타정보를 포함하여 전송함으로써 동기화 메시지 수신측에서 동기화 처리를 위한 무선 네트워크 접속을 최소화 할 수 있어 사용자의 과금 부담을 줄 일 수 있으면서도 효율적인 동기화 처리가 가능한 데이터 동기화 시스템을 제공함을 그 목적으로 한다.
상기한 목적을 달성하기 위한 본 발명의 일 양상에 따르면, 본 발명에 따른 데이터 동기화 시스템이 동기화 메시지 송신측이 동기화 메시지에 메타정보를 포함하여 전송하고, 동기화 메시지 수신측은 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 추후 처리를 수행하는 것을 특징으로 한다.
따라서, 본 발명은 동기화 처리를 위한 무선 네트워크 접속을 최소화 할 수 있어 사용자의 과금 부담을 줄 일 수 있으면서도 효율적인 동기화 처리가 가능한 장점을 가진다.
이하, 첨부된 도면을 참조하여 기술되는 바람직한 실시예를 통하여 본 발명 을 당업자가 용이하게 이해하고 재현할 수 있도록 상세히 기술하기로 한다.
도 2 는 본 발명에 따른 데이터 동기화 시스템의 일 실시예에 따른 블럭도이다. 본 발명에 따른 데이터 동기화 시스템은 제1장치(100)와, 제2장치(200)를 포함하여 이루어지며, 상기 제1장치(100)와 제2장치(200)는 무선 네트워크를 통해 연결된다. 예컨대, 상기 제1장치(100)는 휴대폰, 개인 휴대용 정보 단말기(PDA), 휴대용 컴퓨터 등의 클라이언트 단말기, 상기 제2장치(200)는 서버 컴퓨터일 수 있으며, 이와는 반대로 상기 제1장치(100)가 서버 컴퓨터, 상기 제2장치(200)가 클라이언트 단말기일 수도 있다.
상기 제1장치(100)는 적어도 하나의 어플리케이션(110)과, 동기 에이전트(120)와, 데이터 저장소(130)와, 통신 인터페이스(140)와, 메타정보DB(150)를 포함하여 이루어진다. 상기 어플리케이션(110)은 상기 데이터 저장소(130)에 저장되는 동기화 데이터를 읽거나, 조작하거나, 저장하는 등의 각종 처리를 수행하는 소프트웨어이다. 상기 동기 에이전트(120)는 제2장치(200)로부터 전송된 동기화 메시지에 따라 상기 데이터 저장소(130)에 저장되는 동기화 데이터에 대한 동기화 처리를 수행하되, 상기 전송된 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 상기 데이터 저장소(130)에 저장되는 동기화 대상이 되는 데이터에 대한 추후 처리를 수행한다. 상기 데이터 저장소(130)는 동기화 데이터를 저장한다. 상기 통신 인터페이스(140)는 제2장치(200)와의 무선 네트워크 연결을 처리한다. 상기 메타정보DB(150)는 전송된 동기화 메시지에 포함된 메타정보를 저장한다.
상기 제2장치(200) 역시 상기 제1장치(100)와 동일한 형태이며, 적어도 하나의 어플리케이션(210)과, 동기 에이전트(220)와, 데이터 저장소(230)와, 통신 인터페이스(240)와, 메타정보DB(250)를 포함하여 이루어진다. 상기 어플리케이션(210)은 상기 데이터 저장소(230)에 저장되는 동기화 데이터를 읽거나, 조작하거나, 저장하는 등의 각종 처리를 수행하는 소프트웨어이다. 상기 동기 에이전트(220)는 제1장치(100)로부터 전송된 동기화 메시지에 따라 상기 데이터 저장소(230)에 저장되는 동기화 데이터에 대한 동기화 처리를 수행하되, 상기 전송된 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 상기 데이터 저장소(230)에 저장되는 동기화 대상이 되는 데이터에 대한 추후 처리를 수행한다. 상기 데이터 저장소(230)는 동기화 데이터를 저장한다. 상기 통신 인터페이스(240)는 제1장치(100)와의 무선 네트워크 연결을 처리한다. 상기 메타정보DB(250)는 전송된 동기화 메시지에 포함된 메타정보를 저장한다.
이와같은 구성을 갖는 본 발명에 따른 데이터 동기화 시스템의 구체적인 동작을 알아본다. 예컨대, 제1장치(100)가 클라이언트 단말기이고, 제2장치(200)가 서버 컴퓨터이며, 제1장치(100)에서 사용자에 의해 조작된 데이터를 제2장치(200)로 전송하여 제2장치(200)에 저장된 데이터를 동기화한다 가정하자.
사용자가 제1장치(100)의 어플리케이션(110)을 실행하여 변경한 데이터들은 데이터 저장소(130)에 저장되고, 이 데이터 저장소(130)에 저장된 변경된 데이터는 동기화 메시지에 포함되어 제1장치(100)로부터 제2장치(200)로 전송되어, 제2장치(200)의 데이터 저장소(230)에 저장된 데이터와 동기화된다. 이 때, 상기 제1장 치(100)와 제2장치(200)는 통신 인터페이스(140)(240)를 통해 네트워크 연결되며, 상기 제1장치(100)의 데이터 저장소(130)는 클라이어트 단말기(모바일 기기)의 플래쉬 메모리 등의 데이터 저장수단, 제2장치(200)의 데이터 저장소(230)는 서버 컴퓨터의 하드디스크 등의 데이터 저장수단을 통칭한다.
이를 위해, 먼저 동기화 메시지가 생성되어야 하는데, 이 동기화 메시지는 제1장치(100)의 어플리케이션(110) 또는 동기 에이전트(120)에 의해 생성될 수 있다. 동기화 메시지가 생성되면 상기 제1장치(100)의 동기 에이전트(120)가 실행되어 동기화 메시지를 제2장치(200)로 전송하는데, 상기 동기 에이전트(120)는 사용자에 의해 수동으로 실행될 수도 있고, 시스템에 의해 자동으로 실행될 수도 있다. 이 때, 상기 동기화 메시지는 동기화 대상이 되는 데이터 식별정보, 동기화 명령, 동기화 데이터 및 메타정보를 포함한다. 상기 동기화 메시지에 포함되는 메타정보는 동기화 대상이 되는 데이터에 대한 추후 처리 즉, 필요에 따라 데이터 저장소에 저장된 일부의 데이터만 선택적으로 동기화할 필요가 있거나, 무선 네트워크 연결없이 동기화 데이터에 대한 처리를 수행하기 위한 정보이다.
상기 제1장치(100)로부터 동기화 메시지를 수신한 제2장치(200)는 동기 에이전트(220)를 통해 동기화 메시지를 해석하고, 데이터 저장소(230)에 저장된 동기화 데이터에 대한 동기화 처리를 수행하되, 상기 제1장치(100)로부터 전송된 동기화 메시지에 포함된 메타정보를 해석하여 메타정보DB(250)에 저장하고, 추후 상기 메타정보DB(250)에 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 처리를 수행하게 된다.
상기 메타정보는 동기화 대상이 되는 데이터에 대한 추후 처리 즉, 필요에 따라 데이터 저장소에 저장된 일부의 데이터만 선택적으로 동기화할 필요가 있거나, 무선 네트워크 연결없이 동기화 데이터에 대한 처리를 수행하기 위한 정보이므로, 이 메타정보를 이용한 동기화 대상이 되는 데이터에 대한 추후 처리과정을 통해 동기화 메시지 수신측에서 동기화 처리를 위한 무선 네트워크 접속을 최소화 할 수 있게 되므로, 사용자의 과금 부담을 줄 일 수 있으면서도 효율적인 동기화 처리가 가능해진다. 종래의 경우 이 추후 처리과정을 수행하기 위해 제1장치와 제2장치가 네트워크 연결되어 데이타 동기화 절차가 수행되었으므로, 사용자의 과금부담이 늘어날 수 밖에 없었다.
예컨대, 상기 메타정보가 제2장치(200)에 저장되는 동기화 데이터의 보관 기간을 정의한 것일 수 있다. 한편, 상기 메타정보가 제2장치(200)에 저장되는 동기화 데이터의 크기를 정의한 것일 수 도 있다. 이 때, 상기 메타정보가 제2장치(200)에 저장되는 동기화 데이터의 크기가 정의된 크기에 도달했을 경우에 수행할 동작에 대한 정의를 더 포함할 수도 있다. 한편, 상기 메타정보가 제1장치(100)의 동기화 데이터 저장소를 제2장치(200)의 동기화 데이터 저장소에 대한 캐쉬(Cache)로 사용하도록 정의한 것일 수도 있다.
한편, 상기 메타정보가 제2장치(200)에 저장되는 동기화 데이터의 동기화 일정을 정의한 것일 수도 있다. 한편, 상기 메타정보가 제2장치(200)에 저장되는 동기화 데이터의 동기화중에 문제가 발생할 경우에 수행할 동작에 대해 정의한 것일 수도 있다. 한편, 상기 메타정보가 제2장치(200)에 저장되는 동기화 데이터의 조작 에 대해 정의한 것일 수 도 있다. 이 때, 상기 동기화 데이터의 조작이 압축 또는 암호화 또는 인덱싱 중 어느 하나인 것일 수 있다. 이러한 메타정보는 특정 파일에 대해서만 적용되도록 정의될 수 도 있고, 특정 폴더에 있는 파일들 혹은 그 폴더 하위에 있는 모든 데이터 아이템에 일괄적으로 적용되도록 정의될 수 도 있다.
다음에 설명하는 실시예들은 동기화 프로토콜인 SyncML을 확장하여 동기화 메시지에 메타정보를 포함하도록 한 실시예들로, SyncML의 Meta 태그를 활용하여 데이터 아이템의 메타정보를 첨부하는 다양한 방법을 보여준다. 이 실시예들에서 제시되는 태그들 ClientCache, Server Cache, TTL, LocalOnly, Quota, Policy, SyncPeriod, ConflictResolve 등은 본 발명을 구현하기 위해 정의한 태그들이다. ClientCache 태그는 해당 메타정보가 클라이언트 저장소를 위한 것임을 나타내는 것이고, ServerCache 태그는 서버 저장소를 위한 것임을 나타낸다. 이 외에도 TTL, LocalOnly, Quota, Policy, SyncPeriod, ConflictResolve 등 다양한 태그가 제시되고 있는데 필요에 따라 추가적인 태그가 정의될 수 있다. 이 태그 외에도 기간이나 시각을 나타내기 위한 1 Week, 1 Day, Every 00:00:00은 적절히 다른 것으로 정의되거나 확장 가능하다. True, 16MB, LRU 등과 같은 값들도 그러하다. 여기에 제시되는 태그 외에도 데이터 아이템에 대한 메타정보에 관한 것은 적절히 태그로 정의되고 그것의 값을 나타내는 양식이 정의된다면 본 발명의 적용이 가능하다.
(실시예 1)
제2장치(서버)로부터 데이터 아이템 “mms_001”을 가져와서 제1장치(클라이 언트)의 데이터 저장소에서 1주일간 보관하도록 한다. ClientCache 태그는 클라이언트의 데이터 저장소와 관련된 내용을 포함한다. 그 안에 TTL 태그를 삽입하여 해당 데이터 아이템이 클라이언트에서 얼마간 보관될 것인지를 정의할 수 있다. 기간과 관련한 정보는 초(Sec), 분(Min), 시(Hour), 일(Day), 주(Week), 년(Year) 단위로 정의할 수 있고, TTL 태그로 정의되지 않은 폴더나 데이터 아이템은 상위 폴더의 설정을 따르며 상위 폴더의 설정도 없다면 특별한 조치가 없는 경우 무기한적으로 유지된다. 이 SyncML 메시지는 클라이언트 어플리케이션이 생성하는 것이며, ClientCache 요소를 해석하여 관련 내용을 클라이언트의 메타정보DB에 보관한다. 아래의 예와 같이 1 Week으로 된 데이터 아이템들은 그 기간이 지나서 클라이언트의 데이터 저장소에서 제거되도록 한다. 제거될 때 클라이언트 메타정보DB에서도 이 아이템에 대한 내용은 삭제된다.
<SyncML>
<SyncHdr>
<VerDTD>1.0</VerDTD>
<VerProto>SyncML/1.0</VerProto>
<SessionID>1</SessionID>
<MsgID>2</MsgID>
<Target><LocURI>./Messaging/MMS</LocURI></Target>
<Source><LocURI>./MMS</LocURI></Source>
</SyncHdr>
<SyncBody>
<Get>
<CmdID>1</CmdID>
<Item>
<Target>
<LocURI>mms_001</LocURI>
</Target>
</Item>
<Meta>
<Type xmlns=’syncml:netinf’>application/wap.mms-messge</Type>
<ClientCache>
<TTL>1 Week</TTL>
</ClientCache>
</Meta>
</Get>
</SyncBody>
</SyncML>
(실시예 2)
아래의 SyncML 메시지의 일부는 제1장치(클라이언트)의 데이터 아이템 “ mms_010”을 제2장치(서버)로 보내어 1일간 보관하도록 하는 예이다. 이 메시지를 받은 제2장치의 동기 에이전트는 ServerCache 태그를 해석하여 그것의 내용을 파악하고 관련 내용을 제2장치의 메타정보DB에 저장한다. 그리고 정해진 기간이 경과한 후 이 데이터 아이템을 서버의 데이터 저장소에서 제거하고 관련 정보를 서버의 메타정보DB에서도 삭제한다.
<Put>
<CmdID>2</CmdID>
<Item>
<Target>
<LocURI>mms_010</LocURI>
</Target>
</Item>
<Meta>
<Type xmlns=’syncml:netinf’>application/wap.mms-messge</Type>
<ServerCache>
<TTL>1 Day</TTL>
</ServerCache>
</Meta>
</Put>
(실시예 3)
아래의 SyncML 메시지의 일부는 제1장치(클라이언트)의 “My Cache”를 캐쉬로 사용하고 최대 16MB까지 저장 가능하며 대체 기법은 LRU를 사용하도록 한다. 경우에 따라서 이 캐쉬는 제1장치(클라이언트)에서 단독으로 사용하고 제2장치(서버)와 동기화할 이유가 없을 수도 있다. 그러한 경우에 LocalOnly 태그를 이용하여 제1장치(클라이언트)의 데이터 저장소에만 해당 캐쉬를 생성하고, 제2장치(서버)측에는 적용하지 않도록 할 수 있다. Quota 태그를 이용하여 캐쉬의 크기를 정의하고 Policy 태그를 이용하여 캐쉬의 대체 정책을 정의할 수 있다. 아래 예에서는 캐쉬의 크기는 16MB로 하고 대체 정책은 LRU를 사용하도록 하고 있다.
<Add>
<CmdID>5</CmdID>
<Meta>
<ClientCache>
<LocalOnly>True</LocalOnly>
<Quota>16MB</Quota>
<Policy>LRU</Policy>
</ClientCache>
</Meta>
<Item>
<Source>
<LocURI>./102</LocURI>
<LocName>My Cache</LocName>
</Source>
</Item>
</Add>
(실시예 4)
아래의 SyncML 메시지의 일부는 제1장치(클라이언트)의 “Address Book”을 생성하고 매 자정마다 제2장치(서버)와 동기화하도록 하는 예이다. 그런데 만약 제1장치(클라이언트)에 저장된 동기화 데이터가 지난번에 제2장치(서버)로 동기화된 이후 다음 번 동기화 이전에 제1장치(클라이언트)와 제2장치(서버) 양쪽에서 수정이 일어날 수가 있다. 이러한 경우에 제1장치(클라이언트)의 데이터를 유지할 것인지 제2장치(서버)의 데이터를 유지할 것인지, 동기화를 포기하고 사용자의 조작을 기다릴 것인지 등의 다양한 대처법이 존재할 것이다. 다음 예는 그 중 제1장치(클라이언트)의 데이터로써 동기화하는 것을 보여준다.
<Add>
<CmdID>6</CmdID>
<Meta>
<ClientCache>
<SyncPeriod>Every 00:00:00</ SyncPeriod >
<ConflictResolve>ClientSide</ConflictResolve>
</ClientCache>
</Meta>
<Item>
<Source>
<LocURI>./478</LocURI>
<LocName>Address Book</LocName>
</Source>
</Item>
</Add>
이상에서 설명한 바와 같은 본 발명에 따른 데이터 동기화 시스템은 동기화 메시지 송신측에서 동기화 메시지에 메타정보를 포함하여 전송함으로써 동기화 메시지 수신측에서 동기화 처리를 위한 무선 네트워크 접속을 최소화 할 수 있어 사용자의 과금 부담을 줄 일 수 있으면서도 효율적인 동기화 처리가 가능한 유용한 효과를 가진다.
본 발명은 첨부된 도면에 의해 참조되는 바람직한 실시예를 중심으로 기술되었지만, 이러한 기재로부터 후술하는 특허청구범위에 의해 포괄되는 범위 내에서 본 발명의 범주를 벗어남이 없이 다양한 변형이 가능하다는 것은 명백하다.

Claims (9)

  1. 동기화 메시지에 메타정보를 포함하여 전송하는 제1장치와;
    상기 제1장치로부터 전송된 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 추후 처리를 수행하는 제2장치를;
    포함하는 데이터 동기화 시스템에 있어서,
    상기 메타정보가 제2장치에 저장되는 동기화 데이터의 보관 기간을 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 메타정보가:
    제2장치에 저장되는 동기화 데이터의 크기를 더 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  4. 동기화 메시지에 메타정보를 포함하여 전송하는 제1장치와;
    상기 제1장치로부터 전송된 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 추후 처리를 수행하는 제2장치를;
    포함하는 데이터 동기화 시스템에 있어서,
    상기 메타정보가 제2장치에 저장되는 동기화 데이터의 크기가 정의된 크기에 도달했을 경우에 수행할 동작에 대해 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  5. 제 1 항에 있어서,
    상기 메타정보가:
    제1장치의 동기화 데이터 저장소를 제2장치의 동기화 데이터 저장소에 대한 캐쉬(Cache)로 사용하도록 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  6. 동기화 메시지에 메타정보를 포함하여 전송하는 제1장치와;
    상기 제1장치로부터 전송된 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 추후 처리를 수행하는 제2장치를;
    포함하는 데이터 동기화 시스템에 있어서,
    상기 메타정보가 제2장치에 저장되는 동기화 데이터의 동기화 일정을 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  7. 제 1 항에 있어서,
    상기 메타정보가:
    제2장치에 저장되는 동기화 데이터의 동기화중에 문제가 발생할 경우에 수행할 동작에 대해 더 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  8. 제 1 항에 있어서,
    상기 메타정보가:
    제2장치에 저장되는 동기화 데이터의 조작에 대해 더 정의한 것을 특징으로 하는 데이터 동기화 시스템.
  9. 동기화 메시지에 메타정보를 포함하여 전송하는 제1장치와;
    상기 제1장치로부터 전송된 동기화 메시지에 포함된 메타정보를 해석하여 저장하고, 저장된 메타정보에 따라 동기화 대상이 되는 데이터에 대한 추후 처리를 수행하는 제2장치를;
    포함하는 데이터 동기화 시스템에 있어서,
    상기 메타정보는 제2장치에 저장되는 동기화 데이터의 조작에 대해 정의하고, 상기 동기화 데이터의 조작은 압축 또는 암호화 또는 인덱싱 중 어느 하나인 것을 특징으로 하는 데이터 동기화 시스템.
KR1020060120044A 2006-11-30 2006-11-30 데이터 동기화 시스템 KR101221672B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020060120044A KR101221672B1 (ko) 2006-11-30 2006-11-30 데이터 동기화 시스템
US11/947,489 US8874795B2 (en) 2006-11-30 2007-11-29 Data synchronization system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060120044A KR101221672B1 (ko) 2006-11-30 2006-11-30 데이터 동기화 시스템

Publications (2)

Publication Number Publication Date
KR20080049455A KR20080049455A (ko) 2008-06-04
KR101221672B1 true KR101221672B1 (ko) 2013-01-14

Family

ID=39475738

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060120044A KR101221672B1 (ko) 2006-11-30 2006-11-30 데이터 동기화 시스템

Country Status (2)

Country Link
US (1) US8874795B2 (ko)
KR (1) KR101221672B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140282786A1 (en) * 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
US10122630B1 (en) 2014-08-15 2018-11-06 F5 Networks, Inc. Methods for network traffic presteering and devices thereof
KR102062082B1 (ko) * 2015-07-29 2020-02-11 엘에스산전 주식회사 에너지 관리 시스템
KR101758558B1 (ko) * 2016-03-29 2017-07-26 엘에스산전 주식회사 에너지 관리 서버 및 그를 갖는 에너지 관리 시스템
US10791088B1 (en) 2016-06-17 2020-09-29 F5 Networks, Inc. Methods for disaggregating subscribers via DHCP address translation and devices thereof
US11122083B1 (en) 2017-09-08 2021-09-14 F5 Networks, Inc. Methods for managing network connections based on DNS data and network policies and devices thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030028554A1 (en) 2001-06-15 2003-02-06 Oskari Koskimies Selecting data for synchronization
US20040044799A1 (en) * 2002-09-03 2004-03-04 Nokia Corporation Method, device and system for synchronizing of data providing for the handling of an interrupted synchronization process
KR20050046974A (ko) * 2003-11-15 2005-05-19 한국전자통신연구원 클러스터링 환경에서의 모바일 비즈니스 응용 서버간콘텐츠 캐쉬 동기화 방법

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884323A (en) * 1995-10-13 1999-03-16 3Com Corporation Extendible method and apparatus for synchronizing files on two different computer systems
US5870765A (en) * 1996-10-09 1999-02-09 Oracle Corporation Database synchronizer
US6170005B1 (en) * 1997-11-04 2001-01-02 Motorola, Inc. Synchronization and information exchange between communication components using a network management operations and control paradigm
US7536524B2 (en) * 1998-07-31 2009-05-19 Kom Networks Inc. Method and system for providing restricted access to a storage medium
US6411991B1 (en) * 1998-09-25 2002-06-25 Sprint Communications Company L.P. Geographic data replication system and method for a network
US6725281B1 (en) * 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model
US6529921B1 (en) * 1999-06-29 2003-03-04 Microsoft Corporation Dynamic synchronization of tables
US7124204B2 (en) * 1999-11-18 2006-10-17 Amdocs (Israel) Ltd. Threshold-based database synchronization system and method
US6694336B1 (en) * 2000-01-25 2004-02-17 Fusionone, Inc. Data transfer and synchronization system
US6671757B1 (en) * 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US6854016B1 (en) * 2000-06-19 2005-02-08 International Business Machines Corporation System and method for a web based trust model governing delivery of services and programs
US20020059299A1 (en) * 2000-07-14 2002-05-16 Frederic Spaey System and method for synchronizing databases
US7430627B2 (en) * 2000-12-19 2008-09-30 International Business Machines Corporation Adaptive reader-writer lock
US7320011B2 (en) * 2001-06-15 2008-01-15 Nokia Corporation Selecting data for synchronization and for software configuration
US6993522B2 (en) * 2001-06-27 2006-01-31 Microsoft Corporation System and method for resolving conflicts detected during a synchronization session
JP3801014B2 (ja) * 2001-10-30 2006-07-26 日本電気株式会社 同期制御サーバ、チャネルドライバ及びプログラム
US6938042B2 (en) * 2002-04-03 2005-08-30 Laplink Software Inc. Peer-to-peer file sharing
AU2002251417A1 (en) * 2002-04-15 2003-10-27 Nokia Corporation Method and device for handling synchronization related information
US7779169B2 (en) * 2003-07-15 2010-08-17 International Business Machines Corporation System and method for mirroring data
US7409379B1 (en) * 2003-07-28 2008-08-05 Sprint Communications Company L.P. Application cache management
US20050216524A1 (en) * 2004-03-23 2005-09-29 Integrated Data Corporation Smart and selective synchronization between databases in a document management system
US7249229B2 (en) * 2004-03-31 2007-07-24 Gemini Mobile Technologies, Inc. Synchronous message queues
US20060026168A1 (en) * 2004-05-20 2006-02-02 Bea Systems, Inc. Data model for occasionally-connected application server
US7672978B2 (en) * 2004-08-20 2010-03-02 Nokia Corporation Handling of content in a data processing device
US7328222B2 (en) * 2004-08-26 2008-02-05 Oracle International Corporation Method and apparatus for preserving data coherency in a database by generating a command object that includes instructions for writing a data record to a local cache
US7933868B2 (en) * 2004-11-04 2011-04-26 Microsoft Corporation Method and system for partition level cleanup of replication conflict metadata
US7693888B2 (en) * 2005-05-10 2010-04-06 Siemens Communications, Inc. Data synchronizer with failover facility
US7415082B2 (en) * 2005-05-31 2008-08-19 Harris Corporation Receiver including synch pulse detection and associated method
US7716180B2 (en) * 2005-12-29 2010-05-11 Amazon Technologies, Inc. Distributed storage system with web services client interface
US7529780B1 (en) * 2005-12-30 2009-05-05 Google Inc. Conflict management during data object synchronization between client and server
US20070168671A1 (en) * 2006-01-16 2007-07-19 Fujitsu Limited Digital document management system, digital document management method, and digital document management program
US7792792B2 (en) * 2006-05-22 2010-09-07 Microsoft Corporation Synchronizing structured web site contents
US7831576B2 (en) * 2006-12-22 2010-11-09 International Business Machines Corporation File plan import and sync over multiple systems
US7945540B2 (en) * 2007-05-04 2011-05-17 Oracle International Corporation Method to create a partition-by time/tuple-based window in an event processing service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030028554A1 (en) 2001-06-15 2003-02-06 Oskari Koskimies Selecting data for synchronization
US20040044799A1 (en) * 2002-09-03 2004-03-04 Nokia Corporation Method, device and system for synchronizing of data providing for the handling of an interrupted synchronization process
KR20050046974A (ko) * 2003-11-15 2005-05-19 한국전자통신연구원 클러스터링 환경에서의 모바일 비즈니스 응용 서버간콘텐츠 캐쉬 동기화 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"SyncML - Getting the mobile Internet in sync", Ericsson Review No. 3, 2001 *

Also Published As

Publication number Publication date
KR20080049455A (ko) 2008-06-04
US20080130812A1 (en) 2008-06-05
US8874795B2 (en) 2014-10-28

Similar Documents

Publication Publication Date Title
US10079789B2 (en) Shared attachments
US8447801B1 (en) Content sharing with limited cloud storage
US20090177704A1 (en) Retention policy tags for data item expiration
US7720920B2 (en) Client side based data synchronization and storage
KR101037233B1 (ko) 클라이언트 디바이스에 동기화 통지를 제공하기 위한 방법
US7715444B2 (en) Resuming a previously interrupted peer-to-peer synchronization operation
AU2014213556B2 (en) Employing user-context in connection with backup or restore of data
US7783712B2 (en) System and method for bi-directional synchronized conversion of electronic mail data
US8880735B2 (en) Mail server based application record synchronization
KR101221672B1 (ko) 데이터 동기화 시스템
CN103716364A (zh) 从同步文件的多个修改版本中确定优选修改版本
CN109313634A (zh) 用于单个文件的文件同步暂停
US10021050B2 (en) Secure conversation and document binder
CN102769687A (zh) 信息群发系统及方法
CN102291453B (zh) 一种数据同步的方法及装置
CN103841180A (zh) 一种基于操作指令的网络数据同步方法、装置、终端设备和服务器
WO2012173799A2 (en) Query-based information hold
US20060074996A1 (en) System and method for synchronizing data
US20080059538A1 (en) Method and system for synchronizing offline records
CN104243654A (zh) 信息群发系统及方法
KR20130092501A (ko) 통신장치 및 원격장치에서 오브젝트의 그룹을 생성, 활용, 적용 및 전송하는 방법

Legal Events

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

Payment date: 20160104

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170627

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee