KR20140031451A - 클라우드 시스템의 컨텐츠 동기화장치 및 방법 - Google Patents

클라우드 시스템의 컨텐츠 동기화장치 및 방법 Download PDF

Info

Publication number
KR20140031451A
KR20140031451A KR1020120095881A KR20120095881A KR20140031451A KR 20140031451 A KR20140031451 A KR 20140031451A KR 1020120095881 A KR1020120095881 A KR 1020120095881A KR 20120095881 A KR20120095881 A KR 20120095881A KR 20140031451 A KR20140031451 A KR 20140031451A
Authority
KR
South Korea
Prior art keywords
data
server
time
synchronization
change
Prior art date
Application number
KR1020120095881A
Other languages
English (en)
Inventor
노국필
김덕규
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020120095881A priority Critical patent/KR20140031451A/ko
Priority to US14/014,687 priority patent/US20140068018A1/en
Publication of KR20140031451A publication Critical patent/KR20140031451A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Abstract

클라우드 서비스 시스템의 동기화 방법이, 디바이스가 데이터 변경시 변경 데이터를 서버에 업로드하고, 서버가 업로드되는 변경데이타를 연산처리하여 변경시간과 함께 저장하는 과정과, 디바이스가 설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하며, 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하고, 디바이스가 다운로드되는 로그데이터에 의해 동기화를 수행하며, 상기 최근서버접속시간을 갱신하는 과정으로 이루어지낟.

Description

클라우드 시스템의 컨텐츠 동기화장치 및 방법{APPARATUS AND METOHO FOR SYNCHRONIZING A CONTENTS IN CLOUD SERVICE SYSTEM}
본 발명은 클라우드 서비스 시스템의 컨텐츠 동기화 장치 및 방법에 관한 것으로, 특히 모바일 환경에 적합한 클라우드 서비스 시스템의 컨텐츠 동기화 방법에 관한 것이다.
일반적으로 클라우드 서비스(cloud service)라 함은 영화, 사진, 음악 등 미디어 파일 문서 주소록 등 사용자의 콘텐츠를 서버에 저장해 두고 스마트폰이나, 스마트TV를 포함한 어느 기기에서든 다운로드 후 사용 할 수 있는 서비스를 말한다. 또한 현재에는 개인형 클라우드 컴퓨팅(Personal Cloud Computing ; PCC) 서비스가 일반화되는 추세이다. 이는 OS나 기기 간의 장벽을 뛰어넘는 클라우드 서비스로, 사용자가 다양한 콘텐츠(사진, 동영상, 게임, 메일, 문서 등)를 하나의 인터넷 서버에 저장하고, 인터넷 통신이 가능한 다양한 IT 기기(즉, 클라이언트, 예를들면 스마트폰ㅇ태블릿PCㅇ전자책ㅇIPTV 등)가 컨텐츠를 억세스할 수 있는 서비스를 말한다.
상기와 같은 클라우드 서비스 시스템은 클라우드 서비스를 위하여 모든 클라이언트들과 서버간의 컨텐츠 동기화가 이루어져야 한다. 종래의 클라우드 서비스 시스템에서의 컨텐츠 동기화 방법은 클라우드 서버의 확장성의 극대화가 목적이었으며, 이를 위하여 클라우드 서버의 로드가 최소화되도록 설계되었다. 따라서 종래의 클라우드 서비스 시스템에서 컨텐츠 동기화를 위한 작업(CPU-driven 연산 작업)은 클라이언트에 의해 수행되었다. 따라서 종래의 클라이언트는 컨텐츠 동기화를 위하여 로컬 파일과 서버에 있는 파일의 버전을 비교한 후 어느 버전이 최신인지 계산하며, 이후 수정 내용을 서버로 업로드할지 서버로부터 다운로드할지 결정하였다. 또한 단말에서의 컨텐츠 변경 특성에 따라 생성, 수정 및 삭제의 이벤트 발생과 함께 모든 이벤트가 동일 사용자의 복수 기기에 반영되었다.
그러나 상기와 같은 종래의 컨텐츠 동기화 방법은 모바일 환경의 클라우드 서비스 시스템에서 사용하는데 어려움이 있다. 이는 모바일 환경에서 대부분의 디바이스들(즉, 클라이언트들)은 배터리를 사용하게 되므로, 컨텐츠 동기화를 수행하는데 배터리 용량 및 CPU Power에 제약이 있게 된다. 따라서 상기 CPU-driven 연산 작업을 클라이언트에서 하면, 클라이언트 디바이스의 배터리 소모가 증가하는 문제점이 있다.
또한 클라우드 시스템에서 모든 이벤트(생성, 수정, 삭제)를 반영함에 따라 때론 불필요한 동기화 작업이 이루어질 수 있다. 예를들면, 하나의 컨텐츠를 생성 또는 수정 후 바로 삭제를 한다면 해당 삭제 전 이벤트는 무시가 가능하다. 따라서 불필요한 트래픽 발생으로 인해 배터리 소모가 증가하는 문제점이 있다.
본 발명은 클라우드 서비스 시스템에서 클라우드 서버가 컨텐츠 동기화와 관련된 기능을 수행하여 클라이언트 디바이스의 연산을 줄일 수 있는 장치 및 방법을 제안한다. 또한 본 발명은 클라우드 서비스 시스템에서 서버와 클라이언트 간의 동기화 데이터의 히스토리를 관리 및 이용하고, 간결화(compaction)를 통해 전송 데이터 용량을 최소화할 수 있는 장치 및 방법을 제안한다.
본 발명의 실시예에 따른 클라우드 서비스 시스템의 동기화 방법이, 디바이스가 데이터 변경시 변경 데이터를 서버에 업로드하고, 상기 서버가 업로드되는 변경데이타를 연산처리하여 변경시간과 함께 저장하는 과정과, 상기 디바이스가 설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하며, 상기 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하고, 상기 디바이스가 다운로드되는 로그데이터에 의해 동기화를 수행하며, 상기 최근서버접속시간을 갱신하는 과정으로 이루어짐을 특징으로 한다.
또한 컨텐츠들을 저장하는 서버를 구비하는 클라우드 서비스 시스템에서 본 발명의 실시예에 따른 디바이스가 데이터 동기화를 수행하는 방법이, 데이터 변경시 변경 데이터를 업로드하고 최근서버접속시간을 갱신하는 과정과, 설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하는 과정과, 상기 동기화 요청에 의해 서버로부터 변경정보 다운로드시 데이터를 동기화를 수행하고, 상기 최근서버접속시간을 갱신하는 과정으로 이루어짐을 특징으로 한다.
또한 본 발명의 실시예에 따른 클라우드 서비스 시스템의 서버가가 데이터 동기화를 수행하는 방법이, 디바이스로부터 변경데이터 업로드시 변경데이타를 연산처리하여 변경시간과 함께 저장하는 과정과, 상기 디바이스로부터 동기화요청신호 수신시 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하는 과정으로 이루어짐을 특징으로 한다.
또한 본 발명의 실시예에 따른 클라우드 서비스 시스템이, 데이터 변경시 변경 데이터를 업로드하고, 설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하고 변경정보 다운로드시 데이터를 동기화를 수행하며, 상기 최근서버접속시간을 갱신하는 디바이스들과, 변경데이터 업로드시 변경데이타를 연산처리하여 변경시간과 함께 저장하며, 동기화요청신호 수신시 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하는 서버로 구성된 것을 특징으로 한다.
상술한 바와 같이 본 발명은 클라우드 서비스 시스템에서 클라우드 서버가 컨텐츠 동기화와 관련된 대부분의 연산을 처리하여 클라이언트 디바이스의 불필요한 CPU 연산을 줄이고, 동기화 데이터의 히스토리를 관리 및 이용하여 간결화(compaction)를 통해 전송 데이터 용량을 최소화 하여 네트워크 트래픽 감소로 인한 배터리 소모를 최소화할 수 있다. 즉, 본 발명은 클라우드 서비스 시스템에서 동기화 요청 시 CPU-driven 연산 처리를 서버에서 계산하고, 싱크 데이터 간결화(compaction)을 통해 네트워크 트래픽을 최소화할 수 있으며, 이로인해 디바이스 로드를 효과적으로 줄임으로서 배터리 전력소모를 최소화 하는 이점이 있다.
도 1은 클라우드 서비스 시스템의 구성을 도시하는 도면
도 2는 도 1에서 클라우드 서비스 시스템의 디바이스 구성을 도시하는 도면
도 3은 본 발명의 실시예에 따른 클라우드 서비스 시스템에서 서버와 디바이스들 간의 동기 절차를 도시하는 흐름도
도 4는 본 발명의 실시예에 따른 클라우드 서비스 시스템에서 디바이스의 동기화 절차를 도시하는 흐름도
도 5는 본 발명의 실시예에 따른 클라우드 서비스 시스템에서 서버의 동기화 절차를 도시하는 흐름도
이하, 본 발명의 바람직한 실시 예들의 상세한 설명이 첨부된 도면을 참조하여 상세히 설명한다. 도면들 중 동일한 구성들은 가능한 한 어느 곳에서든지 동일한 부호들을 나타내고 있음을 유의하여야 한다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 상세한 설명을 생략한다.
본 발명은 클라우드 서버와 적어도 하나의 클라이언트 디바이스 간의 컨텐츠를 동기화하는 장치 및 방법에 관한 것이다. 즉, 서버는 다양한 콘텐츠들을 구비하며, 클라이언트 디바이스들은 컨텐츠를 생성, 편집 또는 삭제시 해당 컨텐츠를 서버에 업로드하고, 서버는 업로드되는 컨텐츠들을 저장한다. 그리고 클라이언트 디바이스들은 일정 시간을 주기 또는 임의의 시간에 상기 서버에 접속하며, 서버는 접속된 클라이언트 디바이스들에 이전 접속시간에서 현 접속시간 사이에 갱신된 컨텐츠들의 식별정보를 다운로드한다. 따라서 클라우드 서버와 각 클라이언트 디바이스들 간에는 컨텐츠 동기화를 이룰 수 있게 된다.
상기와 같은 컨텐츠를 동기화시키는 본 발명의 실시예에 클라우드 서비스 시스템은 클라우드 서버에서 동기화와 관련된 대부분의 연산을 처리하므로써 클라이언트 디바이스의 불필요한 CPU 연산을 줄일 수 있다. 또한 본 발명의 실시예에 클라우드 서비스 시스템은 컨텐츠 동기화시 동기화 데이터의 히스토리를 관리 및 간결화(compaction)를 통해 클라우드 서버와 클라이언트 디바이스들 간의 전송 데이터 용량을 최소화할 수 있으며, 이로인해 네트워크 트래픽 감소로 인한 배터리 소모를 최소화시킬 수 있다.
이하의 설명에서 상기 클라우드서버는 서버라 칭하기로 하며, 상기 클라이언트 디바이스는 디바이스, 단말 또는 기기로 칭하기로 한다.
따라서 본 발명의 실시예에 따른 클라우드 서비스 시스템은 동일 사용자의 복수 기기에서 동기화 요청 시 단말 로드를 최소화할 수 있으며, 단말의 CPU-driven 연산을 최대한 서버에서 처리 할 수 있다. 또한 본 발명의 실시예에 따른 클라우드 서비스 시스템은 싱크 데이터 간결화 (compaction)을 통하여 네트워크 트래픽을 최소화할 수 있다.
도 1은 클라우드 서비스 시스템의 구성을 도시하는 도면이다.
상기 도 1을 참조하면, 클라우드 서비스 시스템은 서버100과 적어도 하나의 디바이스151-15N으로 구성될 수 있다. 여기서 상기 서버100과 디바이스 151-15N은 유선으로 접속될 수 있으며, 또한 무선으로 접속될 수 있다. 그리고 상기 서버100과 디바이스 151-15N은 인터넷 망을 통해 접속될 수 있으며, 또한 직접 접속될 수도 있다. 이하의 설명에서는 상기 서버100과 디바이스 151-15N은 인터넷 망을 통해 무선으로 접속되는 것으로 가정하여 설명하기로 한다.
이런 경우 상기 클라이어트151-15N은 도 2와 같은 구성을 가질 수 있다.
상기 도 2를 참조하면, 통신부220은 기지국 또는 다른 장치와 무선 통신 기능을 수행한다. 여기서 상기 통신부220은 송신신호의 주파수를 상승변환(frequency up converter) 및 전력증폭하는 송신부와, 수신신호를 저잡음 증폭 및 주파수를 하강변환(frequency down converter)하는 수신부 등으로 구성될 수 있다. 또한 상기 통신부220은 변조부 및 복조부를 구비할 수 있다. 여기서 변조부는 송신신호를 변조하여 송신부에 전달하며, 복조부는 수신부를 통해 수신되는 신호를 복조한다. 이런 경우, 상기 변복조부는 LTE, WCDMA, GSM 등이 될 수 있으며, 또한 WIFI, WIBRO 등이 될 수 있고, NFC, Bluetooth 등이 될 수 있다. 본 발명의 실시예에서는 상기 통신부220이 LTE, WIFI, bluetooh 통신부들을 구비한다고 가정한다.
제어부200은 디바이스 기기의 전반적인 동작을 제어하며, 본 발명의 실시예에 따라 컨텐츠 변경시 변경된 컨텐츠를 상기 서버100에 업로드하여 상기 서버100과 해당 디바이스 간의 컨텐츠를 동기화시킨다. 여기서 컨텐츠 변경은 컨텐츠의 생성, 편집 및/또는 삭제 등이 될 수 있다. 또한 일정 시간 주기로 상기 서버100과 접속하며 컨텐츠 변경 감지시 상기 서버100로부터 변경정보를 수신하여 상기 서버100과 해당 디바이스 간의 컨텐츠 동기화 동작을 수행한다.
메모리210은 단말기의 동작 프로그램 및 본 발명의 실시예에 따른 프로그램을 저장하는 프로그램 메모리와, 단말기의 동작을 위한 테이블들 및 프로그램 수행 중에 발생되는 데이터를 저장하는 데이터 메모리를 구비할 수 있다.
표시부230은 상기 제어부200의 제어하에 재생되는 컨텐츠를 표시한다. 상기 표시부230은 LCE 또는 OLED가 될 수 있다. 입력부240은 터치패널 및/또는 버튼(키) 등으로 구성될 수 있다. 그리고 여기서 상기 입력부240이 터치패널인 경우, 상기 입력부240과 표시부230은 터치스크린240이 될 수 있다.
상기 서버100도 상기 디바이스151-15N과 같이 통신부를 구비할 수 있으며, 상기 각 디바이스151-15N들로부터 업로드되는 컨텐츠들을 각 디바이스들에 전송하여 동기시키기 위한 데이터 베이스를 더 구비할 수 있다.
상기와 같은 구성을 가지는 클라우드 서비스 시스템에서 동일 사용자의 복수 기기인 디바이스151-15N은 신규 파일을 생성하거나, 파일을 갱신(수정)하거나 또는 삭제하는 경우, 상기 서버100에 해당 파일을 업로드(upload)한다. 그러면 상기 서버100은 해당 파일을 동기화시키며, 또한
또한 상기 디바이스151-15N은 최근 서버와 동기화한 시간을 서버로 보내 그 이후 변경된 내용이 있는지 확인한다. 서버100은 변경된 내용이 없으면 동기화 프로세스는 종료되며, 변경된 내용이 있으면 변경된 목록을 받아 각 목록의 내용을 다운로드 하여 동기화 및 간결화(compaction)시킨다. 또한 상기 디바이스151-15N은 설정된 시간 주기 또는 임의 시간에서 상기 서버100에 동기화 요청을 한다. 그러면 상기 서버100은 동기화 요청을 한 디바이스들에게 동기화된 로그데이타들을 다운로드한다.
예를들면 디바이스151이 신규파일을 생성한 경우, 상기 디바이스151은은 상기 서버100에 생성된 신규파일을 업로드한다. 그리고 디바이스152-15N은 설정된 주기 또는 임의의 시간에서 상기 서버100에 최근 서버100과 동기화한 시간을 전송하여 그 이후 변경된 내용이 있는지 확인한다. 이때 상기 서버100에 변경된 내용이 없으면, 동기화 프로세스는 종료되며 변경된 내용이 있으면 상기 디바이스152-15N은 변경된 목록을 받아 각 목록의 내용을 다운로드하여 동기화한다.
이때 상기 디바이스152-15N이 상기 서버100에 동기화 동기화 요청을 하기 전에 상기 디바이스151이 상기 생성된 파일에 추가적인 수정을 하면, 상기 서버100은 하기 <표 1> 및 <표 2>와 같은 방법으로 동기화 내용을 간결화 (compaction)시킨다. 하기 <표 1>은 본 발명의 실시예에 따른 동기화 내용 간결화 방법(log compaction rule)을 나타내고, <표 2>는 간결화 알고리듬(log compaction algorithm)을 나타내고 있다. 그리고 하기 <표 1>에서 W는 wrong operation sequence이다.
prev(t)
create update delete
next
(ti+1)
create W W W
update ti, ti+1
(append)
ti+1 W
delete delete ti+1 W
group-by Oid(object id), order by time
for each group, sliding window of size 2
apply compaction rule
이후 상기 디바이스152-15N에서 동기화 요청이 발생되면, 상기 서버100은 간결화시킨 결과만 다운로드하며, 따라서 디바이스 152-15N은 불필요한 데이터를 다운로드하지 않고 필요한 데이터만 다운로드하게 되며, 이로인해 서버 및 디바이스 간에 동기화 효율을 향상시킬 수 있다.
상기한 바와 같이 본 발명의 실시예에 따른 컨텐츠 동기화 기법은 클라우드에 저장되는 컨텐츠의 변경 이력을 기록한 로그데이터에 기반한다. 상기 로그데이터는 컨텐츠 변경의 특성에 따라 생성(create), 수정(update), 그리고 삭제(delete)의 세 가지 타입을 가질 수 있으며, 상기 컨텐츠 변경 타입이 더 다양하게 구분되어 있어도 본 발명의 실시예에 따른 동일한 동기화 기법을 적용할 수 있다. 서버100은 상기 로그 데이터를 저장하며, 동기화 연산 후 이를 디바이스151-15N에 알려주며, 이로인해 디바이스 151-15N의 로드를 최소화할 수 있다.
또한 본 발명의 실시예에서는 상기 서버100과 디바이스151-15N 간에 컨텐츠 동기화시 로그데이터를 간결화 (compaction)하는 방법을 제안한다. 상기 서버100에 저장된 로그데이터 중에는 디바이스 151-15N이 필요로하지 않는 데이터들이 존재할 수 있다. 이런 경우 상기 서버100이 디바이스151-15N에 불필요한 데이터를 불필요한 데이터를 여과없이 전송하는 것은 서버100의 전송효율을 저하시킬 수 있으며, 또한 디바이스151-15N도 이를 수신하여 처리하여야 하므로 로드를 증가시킬 수 있다. 또 동기화를 위해서 모든 로그데이터를 무한히 저장할 필요는 없다. 모든 디바이스151-15N은 새로운 디바이스의 추가 없으면 동기화된 로그데이터는 안전하게 지울 수 있다. 또한 일정 시간이 경과된 후에는 로그데이터를 이용해서 동기화를 하는 것 보다 전체 컨텐츠 목록을 받아 오는 것이 더 효율적일 수 있다. 예를들면 컨텐츠의 많은 수정이 발생하는 경우가 될 수 있다. 상기와 같은 이유로 서버100은 서비스 레벨에 따라서 로그데이터를 일정 시간 동안 저장하고, 디바이스151-15N에서 동기화 요청 시에 동기화가 필요한 구간을 계산하여 그 구간의 로그를 상기 <표 1> 및 <표 2>와 같이 간결화하여 단말에 전달한다.
도 3은 본 발명의 실시예에 따른 클라우드 서비스 시스템에서 서버와 디바이스들 간의 동기 절차를 도시하는 흐름도이다.
상기 도 3을 참조하면, 311단계에서 디바이스는 tL 시간에서 서버와 동기된 상태(getSyncState, last sync timeclient=tL)이다. 상기와 같은 상태에서 상기 디바이스는 설정된 시간 주기 또는 임의의 시간에서 상기 서버에 최근 서버와 접속한 시간(last sync timeclient=tL)을 전송하면서 동기화를 요청한다. 그러면 상기 서버100은 이를 수신한 후, 321단계에서 상기 디바이스가 서버와 접속한 시간 이후에 동기화 정보의 변경이 있는가(server change, last sync timeserver>tL)를 검사한다. 즉, 상기 서버는 321단계에서 동기화를 요청한 디바이스가 마지막으로 접속한 시간 이후에 다른 디바이스들에 의해 데이터의 변경이 있었는가 검사한다. 이때 데이터의 변경이 있었으면, 상기 서버는 변경 데이터들의 식별정보(Oid, object id)를 해당 디바이스에 다운로드한다. 그러면 상기 디바이스는 323단계에서 상기 다운로드되는 데이터 변경정보를 토대로 동기화 동작을 수행한다. (getSyncChunk, last sync timeclient=tL). 이때 상기 디바이스와 서버는 323단계 및 325단계를 수행하면서 데이터 동기화 작업을 수행하며, 이때 서버는 불필요한 데이터의 데이터를 간략화시키는 동시에 다운로드할 정보가 더 있으면 이를 디바이스에 전송한다.(compaction & synchronize more chunk).
즉, 상기 디바이스와 서버는 컨텐츠 동기화시 로그데이터를 간결화 (compaction)한다. 상기 간결화 방법은 상기한 바와 같이 저장된 로그데이터들 중에는 디바이스가 필요로하지 않는 데이터가 있으면 상기 서버는 이를 디바이스에 전송하지 않는다. 또한 디바이스는 동기화를 위해서 모든 로그데이터를 무한히 저장할 필요가 없으며, 따라서 새로운 디바이스의 추가 없으면 동기화된 로그데이터는 지울 수 있다. 그리고 상기 디바이스는 일정 시간이 경과된 후에 변경된 정보가 많으면 전체 컨텐츠 목록을 받아 오는 것이 더 효율적이다. 따라서 상기 323단계 및 325단계에서 상기 서버는 서비스 레벨에 따라서 로그데이터를 일정 시간 동안 저장하고, 디바이스에서 동기화 요청 시에 동기화가 필요한 구간을 계산하여 그 구간의 로그를 상기 <표 1> 및 <표 2>와 간결화시켜 디바이스에 전달하며, 디바이스는 이를 이용하여 데이터 동기화 기능을 수행한다.
또한 상기 디바이스는 데이터 변경 사항이 발생되면, 331단계에서에 이를 확인하고 상기 서버에 변경 데이터를 업로드한다. 이때 상기 변경은 신규 컨텐츠의 생성, 컨텐츠의 수정(편집) 또는 컨텐츠의 삭제 등이 될 수 있다. 그리고 상기 디바이스로부터 데이터를 업로드받으면, 상기 서버100은 333단계에서 이를 연산하고 연산 결과에 따른 데이터의 변경 사항을 데이터베이스에 저장한다. 그리고 데이터 변경에 따른 시간(를 저장한다. (upload changes, last sync timeserver=tU). 그리고 상기 디바이스는 상기 데이터 변경에 따른 업로드를 수행한 후, 또는 상기 서버와 동기화 요청을 하였으나 데이터의 변경이 없어 데이터 동기 동작을 수행하지 않은 경우, 331단계에서 이를 확인하고, 335단계에서 동기화 절차를 종료하고 상기 서버와 접속한 시간을 최근 접속시간으로 갱신하다.(updateSyncState, last sync timeclient=tserver)
도 4는 본 발명의 실시예에 따른 클라우드 서비스 시스템에서 디바이스의 동기화 절차를 도시하는 흐름도이다.
상기 도 4를 참조하면, 디바이스는 데이터 변경이 발생되어 상기 서버에 업로드하여야 하는 경우, 동기화 요청을 위해 일정시간 주기 또는 임의의 시간이 된 경우 또는 사용자의 요청에 의해 서버에 접속을 요청한다. 따라서 상기 데이터 변경(생성, 편집(수정), 삭제 등)이 발생되면, 상기 디바이스는 411단계에서 이를 감지하고, 413단계에서 변경된 데이터를 상기 서버에 업로드한다. 그리고 상기 디바이스는 415단계에서 상기 서버와 접속한 시간을 최근 서버접속시간으로 갱신한다.
또한 상기 동기화 요청 시간이 되면, 상기 디바이스는 417단계에서 이를 감지하고, 419단계에서 상기 서버에 접속한 최근접속시간을 전송하여 동기화를 요청한다. 이때 상기 서버로부터 변경정보가 수신되면, 상기 디바이스는 423단계에서 다운로드되는 변경된 컨텐츠의 정보(object id)를 수신하여 동기화 동작을 수행하며, 이후 425단계에서 상기 서버와 접속한 시간을 최근서버접속시간으로 저장한다. 그러나 상기 421단계에서 서버로부터 변경정보를 수신하지 못한 경우, 상기 디바이스는 동기화 작업을 수행하지 않으며 425단계에서 상기 서버와 접속한 시간을 최근서버접속시간으로 저장한다.
도 5는 본 발명의 실시예에 따른 클라우드 서비스 시스템에서 서버의 동기화 절차를 도시하는 흐름도이다.
상기 도 5를 참조하면, 서버는 511단계에서 디바이스로부터 변경된 데이터가 업로드되는가 검사한다. 이때 디바이스로부터 변경된 데이터가 업로드되면, 상기 서버는 513단계에서 업로드에 따른 데이터를 동기화한다. 이때 서버는 상기 데이터 동기화 과정에서 단말에게 전송할 필요가 없는 데이터들은 제거하는 간결화 동작을 수행한다. 즉, 상기 데이터의 변경이 발생된 상태에서 추가적인 수정에 대한 업로드이면, 상기 서버는 상기 <표 1> 및 <표 2>의 규칙에 따라 동기화 내용을 간결화시킨다. 이후 상기 서버는 515단계에서 상기 데이터 변경에 따른 시간을 갱신한다.
또한 디바이스로부터 동기화 요청이 수신되면, 상기 서버는 517단계에서 이를 감지하고, 519단계에서 해당 디바이스의 최근서버접속시간을 검사한다. 이후 상기 서버는 521단계에서 데이터 변경 시간을 검사한 후 상기 디바이스의 최근서버접속시간과 현재 시간 사이에서 데이터 변경이 있었는가 검사한다. 이때 데이터 변경이 있었으면, 상기 서버는 521단계에서 이를 감지하고, 523단계에서 해당 변경된 데이터들에 대한 로그데이터를 해당 디바이스에 다운로드하여 데이터 동기화 동작을 수행하도록 한다.
상기한 바와 같이 서버는 다양한 콘텐츠들을 구비하며, 디바이스들은 컨텐츠를 생성, 편집 또는 삭제시 해당 컨텐츠를 서버에 업로드하고, 서버는 업로드되는 컨텐츠들을 저장 및 연산한다. 또한 상기 디바이스들은 일정 시간 주기 또는 임의의 시간에서 상기 서버에 동기화를 요청하며, 이에 응답하여 상기 서버는 접속된 클라이언트 디바이스들에 이전 접속시간에서 현 접속시간 사이에 갱신된 컨텐츠들의 식별정보를 다운로드한다. 이로인해 상기 서버와 디바이스들은 컨텐츠 동기화를 이룰 수 있게 된다.
이때 상기 서버는 동기화와 관련된 연산을 처리하므로, 디바이스는 연산시간을 줄일 수 있어 전력소모 및 CPU 연산을 줄일 수 있다. 또한 상기 서버는 컨텐츠 동기화시 동기화 데이터의 히스토리를 관리 및 간결화(compaction)하며, 이로인해 상기 서버와 디바이스들 간에 동기를 위한 트래픽을 최적화할 수 있다.
본 명세서와 도면에 개시 된 본 발명의 실시예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다.

Claims (4)

  1. 클라우드 서비스 시스템의 동기화 방법에 있어서,
    디바이스가 데이터 변경시 변경 데이터를 서버에 업로드하고, 상기 서버가 업로드되는 변경데이타를 연산처리하여 변경시간과 함께 저장하는 과정과,
    상기 디바이스가 설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하며, 상기 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하고, 상기 디바이스가 다운로드되는 로그데이터에 의해 동기화를 수행하며, 상기 최근서버접속시간을 갱신하는 과정으로 이루어짐을 특징으로 하는 방법.
  2. 컨텐츠들을 저장하는 서버를 구비하는 클라우드 서비스 시스템의 디바이스가 데이터 동기화를 수행하는 방법에 있어서,
    데이터 변경시 변경 데이터를 업로드하고 최근서버접속시간을 갱신하는 과정과,
    설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하는 과정과,'
    상기 동기화 요청에 의해 서버로부터 변경정보 다운로드시 데이터를 동기화를 수행하고, 상기 최근서버접속시간을 갱신하는 과정으로 이루어짐을 특징으로 하는 방법.
  3. 클라우드 서비스 시스템의 서버가가 데이터 동기화를 수행하는 방법에 있어서,
    디바이스로부터 변경데이터 업로드시 변경데이타를 연산처리하여 변경시간과 함께 저장하는 과정과,
    상기 디바이스로부터 동기화요청신호 수신시 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하는 과정으로 이루어짐을 특징으로 하는 방법.
  4. 클라우드 서비스 시스템에 있어서,
    데이터 변경시 변경 데이터를 업로드하고, 설정시간에서 최근서버접속시간을 포함하는 동기화 요청신호를 전송하고 변경정보 다운로드시 데이터를 동기화를 수행하며, 상기 최근서버접속시간을 갱신하는 디바이스들과,
    변경데이터 업로드시 변경데이타를 연산처리하여 변경시간과 함께 저장하며, 동기화요청신호 수신시 디바이스의 최근서버접속시간과 현재 시간 사이의 변경 데이터들에 대한 로그데이타를 다운로드하는 서버로 구성된 것을 특징으로 하는 시스템.
KR1020120095881A 2012-08-30 2012-08-30 클라우드 시스템의 컨텐츠 동기화장치 및 방법 KR20140031451A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120095881A KR20140031451A (ko) 2012-08-30 2012-08-30 클라우드 시스템의 컨텐츠 동기화장치 및 방법
US14/014,687 US20140068018A1 (en) 2012-08-30 2013-08-30 Content synchronization apparatus and method for cloud service system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120095881A KR20140031451A (ko) 2012-08-30 2012-08-30 클라우드 시스템의 컨텐츠 동기화장치 및 방법

Publications (1)

Publication Number Publication Date
KR20140031451A true KR20140031451A (ko) 2014-03-13

Family

ID=50189022

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120095881A KR20140031451A (ko) 2012-08-30 2012-08-30 클라우드 시스템의 컨텐츠 동기화장치 및 방법

Country Status (2)

Country Link
US (1) US20140068018A1 (ko)
KR (1) KR20140031451A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674148A (zh) * 2019-08-30 2020-01-10 福建中信网安信息科技有限公司 数据库的数据更新同步方法和装置
CN107948220B (zh) * 2016-10-12 2021-01-08 百度在线网络技术(北京)有限公司 通讯录云服务的同步方法和装置

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9454541B2 (en) * 2013-09-24 2016-09-27 Cyberlink Corp. Systems and methods for storing compressed data in cloud storage
EP3179377B1 (en) * 2014-08-07 2020-07-29 Kyocera Corporation Management device, control method for management device, and control method for management system
CN105100191B (zh) 2015-05-22 2018-09-21 华为技术有限公司 一种云编译实现Java应用安装的方法、装置及系统
JP6727775B2 (ja) * 2015-08-31 2020-07-22 キヤノン株式会社 サーバ装置、制御システム、制御方法、及び、プログラム
US10681157B2 (en) 2015-09-11 2020-06-09 International Business Machines Corporation Adaptive event management framework for resource-constrained environments
US10440106B2 (en) 2015-09-14 2019-10-08 Microsoft Technology Licensing, Llc Hosted file sync with stateless sync nodes
CN105657473A (zh) * 2015-11-25 2016-06-08 乐视云计算有限公司 数据处理的方法和装置
CN105812469A (zh) * 2016-03-18 2016-07-27 周奇 一种通讯录同步方法及装置
CN106357808B (zh) * 2016-10-25 2019-09-24 Oppo广东移动通信有限公司 一种数据同步方法和装置
CN108111895B (zh) * 2017-12-12 2020-05-22 浙江视野环境艺术装饰工程有限公司 一种智能化家居控制系统、方法及其控制端
US11474880B2 (en) * 2020-10-19 2022-10-18 Pensando Systems Inc. Network state synchronization for workload migrations in edge devices

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1410202B1 (en) * 2001-03-16 2006-07-26 Novell, Inc. Client-server model for synchronization of files
US20060015545A1 (en) * 2004-06-24 2006-01-19 Josef Ezra Backup and sychronization of local data in a network
US7689713B2 (en) * 2006-01-23 2010-03-30 Funambol, Inc. System operator independent server alerted synchronization system and methods
US8706698B2 (en) * 2011-09-21 2014-04-22 International Business Machines Corporation Coordination of event logging operations and log management

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107948220B (zh) * 2016-10-12 2021-01-08 百度在线网络技术(北京)有限公司 通讯录云服务的同步方法和装置
CN110674148A (zh) * 2019-08-30 2020-01-10 福建中信网安信息科技有限公司 数据库的数据更新同步方法和装置

Also Published As

Publication number Publication date
US20140068018A1 (en) 2014-03-06

Similar Documents

Publication Publication Date Title
KR20140031451A (ko) 클라우드 시스템의 컨텐츠 동기화장치 및 방법
US11838352B2 (en) Data sharing apparatus and method of mobile terminal
CN107861686B (zh) 文件存储方法、服务端和计算机可读存储介质
CN104137587B (zh) 一种发送、接收用户数据的方法及终端设备
US11126590B2 (en) Data processing method and device
WO2014101889A1 (zh) 数据同步方法及设备
CN105812435B (zh) 应用升级数据包处理方法、装置、电子设备及系统
US9614893B2 (en) Method, apparatus and system for auto-synchronization of compressed content files
CN105100210A (zh) 一种客户端应用的文件缓存方法及装置
CN103841167A (zh) 一种用户数据同步方法及设备
CN108710547B (zh) 一种数据备份方法、装置、终端及存储介质
CN103368991A (zh) 云存储的即时同步系统
CN103634406A (zh) 文件同步方法及其终端
CN104156376A (zh) 一种文件的存储方法、装置及服务器
CN103605798A (zh) 一种直接操作云端存储文件的方法
CN103198100B (zh) 一种多设备间文件同步的重命名处理方法及系统
CN112104897A (zh) 视频获取方法、终端及存储介质
US20130179398A1 (en) Device for synchronously sharing files and method for synchronously sharing files
CN103368990A (zh) 云存储的即时同步方法
WO2016070655A1 (zh) 一种信息备份方法、装置、服务器和终端
CN101751421B (zh) 视频监控系统中数据库不对称同步方法、系统及装置
CN104702634A (zh) 数据操作请求处理方法、装置及系统
KR20160026138A (ko) 클라우드 데이터 시스템의 급속 동기화 방법 및 그를 이용한 클라우드 데이터 시스템
CN102916993B (zh) 一种网络硬盘数据更新方法以及装置
CN104602047A (zh) Epg数据的分享方法、服务器、终端及系统

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid