KR102457950B1 - 맵 수정 데이터를 공유하는 방법 및 장치 - Google Patents
맵 수정 데이터를 공유하는 방법 및 장치 Download PDFInfo
- Publication number
- KR102457950B1 KR102457950B1 KR1020210093061A KR20210093061A KR102457950B1 KR 102457950 B1 KR102457950 B1 KR 102457950B1 KR 1020210093061 A KR1020210093061 A KR 1020210093061A KR 20210093061 A KR20210093061 A KR 20210093061A KR 102457950 B1 KR102457950 B1 KR 102457950B1
- Authority
- KR
- South Korea
- Prior art keywords
- user terminal
- map
- key value
- details
- group
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 230000004048 modification Effects 0.000 claims abstract description 89
- 238000012986 modification Methods 0.000 claims abstract description 89
- 230000005540 biological transmission Effects 0.000 claims abstract description 8
- 238000012937 correction Methods 0.000 claims description 37
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000001737 promoting effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 13
- 238000004590 computer program Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3885—Transmission of map data to client devices; Reception of map data by client devices
- G01C21/3896—Transmission of map data from central databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/101—Collaborative creation, e.g. joint development of products or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/004—Map manufacture or repair; Tear or ink or water resistant maps; Long-life maps
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Entrepreneurship & Innovation (AREA)
- Remote Sensing (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Databases & Information Systems (AREA)
- Radar, Positioning & Navigation (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Operations Research (AREA)
- General Health & Medical Sciences (AREA)
- Quality & Reliability (AREA)
- Primary Health Care (AREA)
- General Engineering & Computer Science (AREA)
- Educational Administration (AREA)
- Automation & Control Theory (AREA)
- Development Economics (AREA)
- Information Transfer Between Computers (AREA)
- Instructional Devices (AREA)
- Educational Technology (AREA)
- Mathematical Physics (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 개시는 맵 수정 내역을 공유하는 방법 및 장치에 관한 것이다. 본 개시의 일 실시예에 따른 방법은, 제 1 사용자 단말로부터, 최초맵 및 최초맵을 수정한 제 1 수정맵에 기초하여 생성된 제 1 수정 내역을 수신하고, 제 2 사용자 단말로부터, 최초맵 및 최초맵을 수정한 제 2 수정맵에 기초하여 생성된 제 2 수정 내역을 수신하고, 제 1 사용자 단말에 제 2 수정 내역을 송신하고, 제 2 사용자 단말에 제 1 수정 내역을 송신하고, 송신 결과에 의해, 제 1 사용자 단말에 표시되는 제 1 수정맵에 제 2 수정 내역을 실시간으로 반영하고, 제 2 사용자 단말에 표시되는 제 2 수정맵에 제 1 수정 내역을 실시간으로 반영할 수 있다.
Description
본 개시는 맵 수정 데이터를 공유하는 방법 및 장치를 제공한다.
최근에는 네비게이션 장치 등에 활용하기 위해 맵 데이터를 생성하거나 기존에 생성된 맵 데이터를 지속적으로 수정해야 하는 업무가 증가하고 있다. 기존에 생성된 맵 데이터를 수정하는 경우에, 복수의 사용자들이 맵 데이터를 수정함에 따라 사용자들 각각이 수행한 맵 수정 내역이 유실될 가능성이 있다.
이에 따라, 맵 데이터를 복수의 사용자들이 동시에 수정하는 경우, 다른 사용자가 수행한 맵 수정 내역이 실시간으로 서로에게 반영될 수 있는 기술이 요구된다.
한국 등록 특허 제10-0557747호(2006.02.27 등록)
한국 등록 특허 제10-0508974호(2005.08.09 등록)
한국 등록 특허 제10-0508974호(2005.08.09 등록)
본 발명은 맵 수정 데이터를 공유하는 방법 및 장치를 제공하는데 있다. 본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제에 한정되지 않으며, 언급되지 않은 본 발명의 다른 과제 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 발명의 실시 예에 의해보다 분명하게 이해될 것이다. 또한, 본 발명이 해결하고자 하는 과제 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 알 수 있을 것이다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 개시의 제1 측면은, 맵 수정 내역을 공유하는 방법에 있어서, 제 1 사용자 단말로부터, 최초맵 및 상기 최초맵을 수정한 제 1 수정맵에 기초하여 생성된 제 1 수정 내역을 수신하는 단계; 제 2 사용자 단말로부터, 상기 최초맵 및 상기 최초맵을 수정한 제 2 수정맵에 기초하여 생성된 제 2 수정 내역을 수신하는 단계; 상기 제 1 사용자 단말에 상기 제 2 수정 내역을 송신하고, 상기 제 2 사용자 단말에 상기 제 1 수정 내역을 송신하는 단계; 및 상기 송신 결과에 의해, 상기 제 1 사용자 단말에 표시되는 상기 제 1 수정맵에 상기 제 2 수정 내역을 실시간으로 반영하고, 상기 제 2 사용자 단말에 표시되는 상기 제 2 수정맵에 상기 제 1 수정 내역을 실시간으로 반영하는 단계; 를 포함할 수 있다.
또한, 상기 제 1 사용자 단말에 표시되는 상기 제 1 수정맵에 상기 제 2 수정 내역이 실시간으로 반영되어, 제 1 최종 맵이 생성되고, 상기 제 2 사용자 단말에 표시되는 상기 제 2 수정맵에 상기 제 1 수정 내역이 실시간으로 반영되어, 제 2 최종 맵이 생성되고, 상기 제 1 사용자 단말에 표시되는 상기 제 1 최종 맵과 상기 제 2 사용자 단말에 표시되는 상기 제 2 최종 맵은 실시간으로 동기화될 수 있다.
또한, 상기 송신하는 단계는, 상기 제 1 수정 내역 및 상기 제 2 수정 내역을 각각 특정 문자열에 해당하는 제 1 키 값(key value) 및 제 2 키 값으로 변환하는 단계; 및 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하고, 상기 제 2 키 값을 상기 제 1 사용자 단말에 송신하는 단계;를 포함할 수 있다.
또한, 상기 송신하는 단계는, 상기 제 2 사용자 단말과 통신하는 제 1 중개 서버를 통해, 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하는 단계;를 포함할 수 있다.
또한, 상기 송신하는 단계는, 상기 제 1 키 값을 상기 제 1 사용자 단말과 통신하는 제 1 중개 서버를 통해 상기 제 1 사용자 단말에 송신하는 단계; 및 상기 제 1 사용자 단말로부터 상기 제 1 키 값을 전달받은 제 2 중개 서버를 통해 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하는 단계;를 포함할 수 있다.
또한, 상기 송신하는 단계는, 상기 제 1 수정 내역의 데이터 크기를 기 설정된 데이터 크기와 비교하는 단계; 및 상기 비교 결과에 기초하여 상기 제 1 수정 내역의 데이터 크기가 상기 기 설정된 데이터 크기보다 큰 경우, 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하는 단계;를 포함할 수 있다.
또한, 상기 송신하는 단계는, 상기 제 1 사용자 단말을 포함하는 복수의 사용자 단말들을 제 1 사용자 단말 그룹 및 제 2 사용자 단말 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하는 단계; 및 상기 제 2 사용자 단말이 상기 제 1 사용자 단말 그룹 및 상기 제 2 사용자 단말 그룹 중 어느 그룹에 포함되는 지 여부에 따라 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신할지 결정하는 단계;를 포함할 수 있다.
또한, 상기 송신하는 단계는, 상기 최초맵을 상기 최초맵의 종류에 따라 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하는 단계; 및 상기 최초맵이 상기 제 1 맵 그룹 및 상기 제 2 맵 그룹 중 어느 그룹에 포함되는 지 여부에 따라 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신할지 결정하는 단계;를 포함할 수 있다.
또한, 상기 송신하는 단계는, 상기 제 1 중개 서버를 포함한 복수의 중개 서버들을 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하는 단계; 및 상기 제 1 중개 서버가 상기 제 1 중개 서버 그룹 및 상기 제 2 중개 서버 그룹 중 어느 그룹에 포함되는 지 여부에 따라 상기 수정 내역을 제 1 키 값을 상기 제 1 중개 서버를 통해 상기 제 2 사용자 단말에 송신할지 결정하는 단계;를 포함할 수 있다.
전술한 본 개시의 과제 해결 수단에 의하면, 복수의 사용자 단말의 사용자들 각각이 수행한 수정 내역이 실시간으로 서로 공유될 수 있도록 할 수 있다. 이에 따라, 사용자들 각각이 수행한 수정 내역이 유실될 가능성을 방지할 수 있다.
전술한 본 개시의 과제 해결 수단에 의하면, 실시간으로 복수의 사용자 단말의 사용자들이 맵 데이터를 수정할 수 있으므로, 업무의 효율성을 도모할 수 있다.
도 1은 일 실시예에 따른 맵 수정 내역을 공유하는 시스템를 나타내는 도면이다.
도 2는 일 실시예에 따른 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 3은 일 실시예에 따른 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 4는 일 실시예에 따른 맵 수정 내역을 포함하는 데이터의 크기에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 5는 일 실시예에 따른 제 1 사용자 단말이 속한 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 6는 일 실시예에 따른 최초맵이 포함된 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 7은 일 실시예에 따른 중개 서버가 속한 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 8은 일 실시예에 따른 맵 수정 내역을 공유하는 방법의 흐름도이다.
도 9는 일 실시예에 따른 키 값 생성 서버의 블록도이다.
도 2는 일 실시예에 따른 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 3은 일 실시예에 따른 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 4는 일 실시예에 따른 맵 수정 내역을 포함하는 데이터의 크기에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 5는 일 실시예에 따른 제 1 사용자 단말이 속한 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 6는 일 실시예에 따른 최초맵이 포함된 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 7은 일 실시예에 따른 중개 서버가 속한 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
도 8은 일 실시예에 따른 맵 수정 내역을 공유하는 방법의 흐름도이다.
도 9는 일 실시예에 따른 키 값 생성 서버의 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 설명되는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 아래에서 제시되는 실시 예들로 한정되는 것이 아니라, 서로 다른 다양한 형태로 구현될 수 있고, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 아래에 제시되는 실시 예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, “포함하다” 또는 “가지다” 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시의 일부 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들의 일부 또는 전부는, 특정 기능들을 실행하는 다양한 개수의 하드웨어 및/또는 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 개시의 기능 블록들은 하나 이상의 마이크로프로세서들에 의해 구현되거나, 소정의 기능을 위한 회로 구성들에 의해 구현될 수 있다. 또한, 예를 들어, 본 개시의 기능 블록들은 다양한 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능 블록들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 개시는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.“매커니즘”, “요소”, “수단” 및 “구성”등과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.
또한, 도면에 도시된 구성 요소들 간의 연결 선 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것일 뿐이다. 실제 장치에서는 대체 가능하거나 추가된 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들에 의해 구성 요소들 간의 연결이 나타내어질 수 있다.
도 1은 일 실시예에 따른 맵 수정 내역을 공유하는 시스템를 나타내는 도면이다.
일 실시예에 따른 맵 수정 내역을 공유하는 시스템(100)은 키 값 생성 서버(1000), 적어도 하나의 사용자 단말(2000) 및 중개 서버(3000)를 포함할 수 있다. 한편, 도 1에 도시된 맵 수정 내역을 공유하는 시스템(100)에는 일 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 맵 수정 내역을 공유하는 시스템(100)에는 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다.
본 발명에서 수정 내역은 사용자 단말을 통한 맵(지도) 편집 과정에서 적용된 변경 사항을 의미한다. 수정 내역은 최초맵과 중간 편집 맵 간의 차이, 최초맵과 최종 편집 맵 간의 차이, 제1 중간 편집 맵과 제2 중간 편집 맵 간의 차이 또는 중간 편집 맵과 최종 편집 맵 간의 차이를 나타낼 수 있다.
본 발명에서 수정 내역은 맵 편집 작업에서 할 수 있는 모든 변경 사항을 포함한다. 예를 들어, 맵 편집할 수 있는 변경 사항은 맵 내 구성 계층, 폴리곤, 오브젝트, 아이콘, 문자 등의 표시 유무, 색상, 불투명도, 크기, 회전 등을 포함할 수 있다.
맵 수정 내역을 공유하는 시스템(100)은 제 1 사용자 단말(2001)의 제 1 사용자가 최초맵을 수정함에 따라 생성된 수정 내역을 키 값 생성 서버(1000)가 중개 서버(3000)를 통해 제 2 사용자 단말(2002) 등 적어도 하나의 사용자 단말들에 공유하는 시스템에 해당할 수 있다.
일 실시예에 따르면, 사용자 단말(2000)은 키 값 생성 서버(1000)로부터 최초맵을 수신할 수 있고, 사용자 단말(2000)은 사용자의 맵 수정 입력을 수신하여 수정맵을 생성할 수 있다. 사용자 단말(2000)은 최초맵 및 수정맵에 기초하여 수정 내역을 생성할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 사용자 단말(2000)로부터 수신한 수정 내역을 키 값(key value)으로 변환할 수 있다. 키 값은 수정 내역을 기결정된 규칙이나 방법에 따라 부호화하여 변환, 함축 또는 압축한 값에 해당할 수 있다. 예를 들어, 키 값은 일련의 연속된 문자(character)들의 집합인 특정 문자열에 해당할 수 있다. 키 값 생성 서버(1000)는 생성한 키 값을 중개 서버(3000)에 전달할 수 있다. 한편, 키 값 생성 서버(1000)는 사용자 단말(2000) 또는 중개 서버(3000)로부터 수신한 수정 내역 및 최초맵 등을 저장하는 데이터베이스에 해당할 수도 있다.
일 실시예에 따르면, 중개 서버(3000)는 키 값 생성 서버(1000)로부터 전달받은 키 값을 중개 서버(3000)와 통신하는 적어도 하나의 사용자 단말(2000)에 송신할 수 있다. 예를 들어, 중개 서버(3000)는 제 1 사용자 단말(2001)이 생성한 수정 내역을 중개 서버(3000)와 연결된 다른 사용자 단말들에 전달하여 수정 내역이 실시간으로 공유될 수 있다.
복수의 사용자 단말의 사용자들이 동시에 최초맵을 수정하는 경우에 각각 다른 수정맵이 생성될 수 있고, 이에 따라 복수의 사용자 단말들 각각으로부터 생성된 수정 내역이 유실될 가능성이 있다. 이에 따라, 상술한 바와 같이 복수의 사용자 단말들 각각으로부터 생성된 수정 내역이 실시간으로 서로 공유될 수 있도록 하여, 수정 내역이 유실될 가능성을 방지할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 사용자 단말(2001)로부터 최초맵 및 최초맵을 수정한 제 1 수정맵에 기초하여 생성된 제 1 수정 내역을 수신할 수 있고, 제 2 사용자 단말(2002)로부터 최초맵 및 최초맵을 수정한 제 2 수정맵에 기초하여 생성된 제 2 수정 내역을 수신할 수 있다. 또한, 키 값 생성 서버 서버(1000)는 중개 서버(3000)를 통해서 제 1 사용자 단말(2001)에 제 2 수정 내역을 송신하고, 제 2 사용자 단말(2002)에 제 1 수정 내역을 송신할 수 있다. 이에 따라, 키 값 생성 서버(1000)는 제 1 사용자 단말(2001)에 표시되는 제 1 수정맵에 제 2 수정 내역을 실시간으로 반영하고, 제 2 사용자 단말(2002)에 표시되는 상기 제 2 수정맵에 상기 제 1 수정 내역을 실시간으로 반영할 수 있다.
최종적으로, 제 1 사용자 단말(2001)에 표시되는 제 1 수정맵에 제 2 수정 내역이 실시간으로 반영되어 제 1 최종 맵이 생성되고, 제 2 사용자 단말(2002)에 표시되는 제 2 수정맵에 제 1 수정 내역이 실시간으로 반영되어 제 2 최종 맵이 생성될 수 있다. 이 때, 제 1 사용자 단말(2001)에 표시되는 제 1 최종 맵과 제 2 사용자 단말(2002)에 표시되는 제 2 최종 맵은 실시간으로 동기화될 수 있다.
키 값 생성 서버(1000), 적어도 하나의 사용자 단말(2000) 및 중개 서버(3000)는 네트워크를 이용하여 서로 간 통신을 수행할 수 있다. 예를 들어, 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 포함하며, 도 1에 도시된 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함할 수 있다. 또한, 무선 통신은 예를 들어, 무선 랜(Wi-Fi), 블루투스, 블루투스 저 에너지(Bluetooth low energy), 지그비, WFD(Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association), NFC(Near Field Communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
예를 들어, 사용자 단말(2000)은 스마트폰, 태블릿 PC, PC, 스마트 TV, 휴대폰, PDA(personal digital assistant), 랩톱, 미디어 플레이어, 마이크로 서버, GPS(global positioning system) 장치, 전자책 단말기, 디지털방송용 단말기, 네비게이션, 키오스크, MP3 플레이어, 디지털 카메라, 가전기기, 카메라가 탑재된 디바이스 및 기타 모바일 또는 비모바일 컴퓨팅 장치일 수 있으나, 이에 제한되지 않는다.
한편, 키 값 생성 서버(1000) 및 중개 서버(3000) 각각은 네트워크를 통해 통신하여 명령, 코드, 파일, 컨텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다.
도 2는 일 실시예에 따른 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 최초맵 및 최초맵을 수정한 수정맵에 기초하여 생성된 수정 내역을 제 1 사용자 단말로부터 수신할 수 있다. 키 값 생성 서버(1000)는 생성된 수정 내역을 키 값으로 변환하고, 키 값을 제 2 사용자 단말과 통신하는 제 1 중개 서버에 송신할 수 있다. 최종적으로, 키 값 생성 서버(1000)는 제 1 중개 서버를 통해 키 값을 제 2 사용자 단말에 전달할 수 있다.
도 2를 참고하면, 제 1 사용자 단말(2001) 및 제 2 사용자 단말(2002)은 키 값 생성 서버(1000)로부터 최초맵을 수신할 수 있다. 예를 들어, 제 1 사용자 단말(2001)의 제 1 사용자는 최초맵을 수신하고, 최초맵을 수정한 수정맵을 생성할 수 있다. 제 1 사용자 단말(2001)은 최초맵 및 수정맵에 기초하여 수정 내역을 생성할 수 있다. 예를 들어, 제 1 사용자 단말(2001)은 비교 알고리즘(Difference Algorithm)을 이용하여 최초맵 및 수정맵으로부터 수정 내역을 생성할 수 있다. 상기 수정 내역은 다양한 방법으로 생성될 수 있다. 예를 들어, 사용자의 맵 수정 단위를 위한 입력 단위, 또는 기설정된 시간 단위로 생성될 수 있다. 상기 수정 내역은 서로 다른 입력 단위 별로 각각 저장되고, 전달될 수 있다.
제 1 사용자 단말(2001)은 수정 내역을 제 1 중개 서버(3001)에 송신할 수 있다. 또한, 제 1 중개 서버(3001)는 수정 내역을 키 값 생성 서버(1000)로 전달할 수 있다.
키 값 생성 서버(1000)는 제 1 중개 서버(3001)로부터 수신한 수정 내역을 특정 문자열에 해당하는 키 값으로 변환할 수 있고, 키 값을 제 2 중개 서버(3002)에 송신할 수 있다. 여기서, 키 값은 제 1 사용자 단말을 통해 수정된 수정 내역을 기결정된 규칙이나 방법에 따라 변환, 함축 또는 압축한 것을 의미할 수 있다. 한편, 도 2에서는 키 값 생성 서버(1000)가 제 2 중개 서버(3002)에만 키 값을 송신하는 것으로 도시되어 있으나 이에 제한되는 것은 아니며, 제 2 중개 서버(3002) 외에도 다른 복수의 중개 서버들에 키 값을 송신할 수 있다.
제 2 중개 서버(3002)는 키 값 생성 서버(1000)로부터 수신한 키 값을 제 2 중개 서버와 통신하는 제 2 사용자 단말(2002)에 송신할 수 있다. 한편, 도 2에서는 키 값 생성 서버(1000)가 제 2 사용자 단말(2002)에만 키 값을 송신하는 것으로 도시되어 있으나 이에 제한되는 것은 아니며, 제 2 중개 서버(3002)와 통신하는 복수의 사용자 단말들에 키 값을 송신할 수 있다. 이에 따라, 제 2 사용자 단말(2002)은 제 1 사용자 단말(2001)이 생성한 수정 내역을 실시간으로 공유 받을 수 있다.
한편, 제 2 사용자 단말(2002)도 최초맵 및 최초맵을 수정한 제 2 수정맵에 기초하여 제 2 수정 내역을 생성할 수 있다. 이러한 경우, 제 1 사용자 단말(2001)이 생성한 제 1 수정 내역을 제 2 사용자 단말(2002)에 표시되는 제 2 수정맵에 실시간으로 반영할 수 있다. 최종적으로, 제 2 수정맵에 제 1 수정 내역이 실시간으로 반영되어 제 2 최종 맵이 생성될 수 있다. 또한, 제 1 사용자 단말(2002)은 마찬가지로 제 2 사용자 단말(2002)이 생성한 제 2 수정 내역을 공유받을 수 있으며, 제 2 사용자 단말(2003)이 생성한 제 2 수정 내역을 제 1 사용자 단말(2001)에 표시되는 제 1 수정맵에 실시간으로 반영할 수 있다. 최종적으로, 제 1 수정맵에 제 2 수정 내역이 실시간으로 반영되어 제 1 최종 맵이 생성될 수 있다.
도 3은 일 실시예에 따른 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 최초맵 및 상기 최초맵을 수정한 수정맵에 기초하여 생성된 수정 내역을, 제 1 사용자 단말로부터 수신할 수 있다. 키 값 생성 서버(1000)는 생성된 수정 내역을 키 값으로 변환하고, 키 값을 제 1 사용자 단말과 통신하는 제 1 중개 서버를 통해 제 1 사용자 단말에 송신할 수 있다. 최종적으로, 키 값 생성 서버는 제 1 사용자 단말로부터 키 값을 전달받은 제 2 중개 서버를 통해 키 값을 제 2 사용자 단말에 송신할 수 있다.
도 3을 참고하면, 제 1 사용자 단말(2001) 및 제 2 사용자 단말(2002)은 키 값 생성 서버(1000)로부터 최초맵을 수신할 수 있다. 예를 들어, 제 1 사용자 단말(2001)의 제 1 사용자는 최초맵을 수신하고, 최초맵을 수정한 수정맵을 생성할 수 있다. 제 1 사용자 단말(2001)은 최초맵 및 수정맵에 기초하여 수정 내역을 생성할 수 있다. 예를 들어, 제 1 사용자 단말(2001)은 비교 알고리즘(Difference Algorithm)을 이용하여 최초맵 및 수정맵으로부터 수정 내역을 생성할 수 있다.
제 1 사용자 단말(2001)은 수정 내역을 제 1 중개 서버(3001)에 송신할 수 있다. 또한, 제 1 중개 서버(3001)는 수정 내역을 키 값 생성 서버(1000)로 전달할 수 있다.
키 값 생성 서버(1000)는 제 1 중개 서버(3001)로부터 수신한 수정 내역을 특정 문자열에 해당하는 키 값으로 변환할 수 있고, 키 값을 제 1 사용자 단말과 통신하는 제 1 중개 서버(3001)에 송신할 수 있다. 예를 들어, 제 1 중개 서버는 HTTP 서버에 해당할 수 있고, 키 값 생성 서버(1000)는 제 1 중개 서버에 HTTP 응답(response)의 형태로 키 값을 전달할 수 있다.
제 1 중개 서버(3001)는 키 값 생성 서버(1000)로부터 수신한 키 값을 제 1 중개 서버(3001)와 통신하는 제 1 사용자 단말(2001)에 송신할 수 있다. 제 1 사용자 단말(2001)은 제 1 중개 서버(3001)로부터 수신한 키 값을 제 2 중개 서버(3002)에 전달할 수 있다. 한편, 제 1 중개 서버(3001) 및 제 2 중개 서버(3002)각각은 하나의 서버에 포함된 구성일 수 있고, 또는 분리된 서버들 각각에 해당할 수도 있다.
제 2 중개 서버(3002)는 키 값 생성 서버(1000)로부터 수신한 키 값을 제 2 중개 서버(3002)와 통신하는 제 2 사용자 단말(2002)에 송신할 수 있다. 예를 들어, 제 2 중개 서버(3002)는 스트리밍(streaming) 서버에 해당할 수 있다. 한편, 도 2에서는 키 값 생성 서버(1000)가 제 2 사용자 단말(2002)에만 키 값을 송신하는 것으로 도시되어 있으나 이에 제한되는 것은 아니며, 제 2 중개 서버(3002)와 통신하는 복수의 사용자 단말들에 키 값을 송신할 수 있다. 이에 따라, 제 2 사용자 단말(2002)은 제 1 사용자 단말이 생성한 수정 내역을 공유 받을 수 있다.
한편, 제 2 사용자 단말(2002)도 최초맵 및 최초맵을 수정한 제 2 수정맵에 기초하여 제 2 수정 내역을 생성할 수 있다. 이러한 경우, 제 1 사용자 단말(2001)이 생성한 제 1 수정 내역을 제 2 사용자 단말(2002)에 표시되는 제 2 수정맵에 실시간으로 반영할 수 있다. 최종적으로, 제 2 수정맵에 제 1 수정 내역이 실시간으로 반영되어 제 2 최종 맵이 생성될 수 있다. 또한, 제 1 사용자 단말(2002)은 마찬가지로 제 2 사용자 단말(2002)이 생성한 제 2 수정 내역을 공유받을 수 있으며, 제 2 사용자 단말(2003)이 생성한 제 2 수정 내역을 제 1 사용자 단말(2001)에 표시되는 제 1 수정맵에 실시간으로 반영할 수 있다. 최종적으로, 제 1 수정맵에 제 2 수정 내역이 실시간으로 반영되어 제 1 최종 맵이 생성될 수 있다.
도 4는 일 실시예에 따른 맵 수정 내역을 포함하는 데이터의 크기에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 수정 내역을 포함하는 데이터의 크기에 따라 수정 내역을 키 값으로 변환하여 송신할 지 여부를 결정할 수 있다. 도 4의 실시예는 상술한 도 1 내지 도 3의 실시예들 각각에 적용될 수 있다.
도 4를 참고하면, 수정 내역은 제 1 사용자 단말로부터 생성될 수 있고, 수정 내역을 수신한 키 값 생성 서버(1000)는 수정 내역의 크기를 기 설정된 데이터의 크기와 비교할 수 있다.
키 값 생성 서버(1000)는 수정 내역의 크기가 기 설정된 데이터의 크기 이상인 경우에는, 수정 내역을 변환하여 생성된 키 값이 제 2 사용자 단말(2002)에 송신되도록 동작할 수 있다. 또한, 키 값 생성 서버(1000)는 수정 내역의 크기가 기 설정된 데이터의 크기 미만인 경우에는, 수정 내역을 키 값으로 변환하지 않고 수정 내역이 그대로 제 2 사용자 단말(2002)에 송신되도록 동작할 수 있다.
도 5는 일 실시예에 따른 제 1 사용자 단말이 속한 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 사용자 단말이 제 1 사용자 단말 그룹 및 제 2 사용자 단말 그룹 중 어느 그룹에 포함되는 지 여부에 따라 키 값을 제 2 사용자 단말에 송신할 수 있다. 도 5의 실시예는 상술한 도 1 내지 도 3의 실시예들 각각에 적용될 수 있다.
도 5를 참고하면, 수정 내역은 제 1 사용자 단말(2001)로부터 생성될 수 있다.
먼저, 키 값 생성 서버(1000)는 제 1 사용자 단말(2001)을 포함하는 복수의 사용자 단말들을 제 1 사용자 단말 그룹 및 제 2 사용자 단말 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)할 수 있다. 또한, 키 값 생성 서버(1000)는 제 1 사용자 단말(2001)이 제 1 사용자 단말 그룹 및 상기 제 2 사용자 단말 그룹 중 어느 그룹에 포함되는 지를 판단할 수 있다.
제 1 사용자 단말(2001)이 제 1 사용자 단말 그룹에 포함된 경우, 키 값 생성 서버(1000)는 수정 내역을 변환하여 생성된 키 값이 제 2 사용자 단말(2002)에 송신되도록 동작할 수 있다. 한편, 제 1 사용자 단말(2001)이 제 2 사용자 단말 그룹에 포함된 경우, 키 값 생성 서버(1000)는 수정 내역을 변환하여 생성된 키 값에 대한 승인 여부 확인 후 제 2 사용자 단말(2002)에 송신되도록 동작할 수 있다. 예를 들어, 제 1 사용자 단말(2001)이 제 2 사용자 단말 그룹에 포함된 경우에는, 승인 권한을 가진 제 3 사용자 단말로부터 먼저 키 값 송신에 대한 승인을 받은 후에, 키 값이 제 2 사용자 단말(2002)에 송신될 수 있다.
도 6는 일 실시예에 따른 최초맵이 포함된 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 최초맵이 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 그룹에 포함되는 지 여부에 따라 키 값을 제 2 사용자 단말에 송신할 수 있다. 도 6의 실시예는 상술한 도 1 내지 도 3의 실시예들 각각에 적용될 수 있다.
도 6을 참고하면, 키 값 생성 서버(1000)는 최초맵을 최초맵의 종류 또는 데이터의 크기에 따라 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)할 수 있다. 또한, 키 값 생성 서버(1000)는 최초맵이 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 그룹에 포함되는 지를 판단할 수 있다.
키 값 생성 서버(1000)는 최초맵이 제 1 맵 그룹에 포함된 경우, 수정 내역을 변환하여 생성된 키 값이 제 2 사용자 단말(2002)에 송신되도록 동작할 수 있다. 한편, 최초맵이 제 2 맵 그룹에 포함된 경우, 키 값 생성 서버(1000)는 수정 내역을 변환하여 생성된 키 값에 대한 승인 여부 확인 후 제 2 사용자 단말(2002)에 송신되도록 동작할 수 있다. 예를 들어, 최초맵이 제 2 맵 그룹에 포함된 경우에는, 승인 권한을 가진 제 3 사용자 단말로부터 먼저 키 값 송신에 대한 승인을 받은 후에 키 값이 제 2 사용자 단말(2002)에 송신될 수 있다.
한편, 수정 내역 또는 수정 내역을 변환하여 생성된 키 값 내에는 최초맵의 종류를 식별할 수 있는 정보가 포함될 수 있으며, 키 값 생성 서버(1000)는 최초맵의 종류를 식별할 수 있는 정보에 기초하여 키 값이 제 2 사용자 단말(2002)에 송신할 지 여부를 결정할 수 있다.
도 7은 일 실시예에 따른 중개 서버가 속한 그룹에 따라 맵 수정 내역을 공유하는 방법을 예시적으로 나타내는 도면이다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 수정 내역을 변환한 키 값을 중개 서버에 송신하는 경우에, 중개 서버가 데이터가 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 그룹에 포함되는 지 여부에 따라 키 값을 중개 서버를 통해 제 2 사용자 단말에 송신할 수 있다. 도 7의 실시예는 상술한 도 1 내지 도 3의 실시예들 각각에 적용될 수 있다.
도 7을 참고하면, 키 값 생성 서버(1000)는 복수의 중개 서버들을 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)할 수 있다. 또한, 키 값 생성 서버(1000)는 수정 내역을 변환한 키 값을 송신하고자 하는 중개 서버가 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 그룹에 포함되는 지를 판단할 수 있다.
중개 서버가 제 1 중개 서버 그룹에 포함된 경우, 키 값 생성 서버(1000)는 수정 내역을 변환하여 생성된 키 값이 제 2 사용자 단말(2002)과 통신하는 중개 서버에 송신되도록 동작할 수 있다. 한편, 중개 서버가 제 2 중개 서버 그룹에 포함된 경우, 키 값 생성 서버(1000)는 수정 내역을 변환하여 생성된 키 값이 제 2 사용자 단말(2002)과 통신하는 중개 서버에 송신되지 않도록 동작할 수 있다.
예를 들어, 중개 서버는 상기 중개 서버와 통신하는 사용자 단말들이 모두 키 값을 수신할 수 있는 권한이 있는 지 여부에 따라 제 1 중개 서버 그룹 또는 제 2 중개 서버 그룹으로 분류될 수 있다. 중개 서버와 통신하는 사용자 단말들이 모두 키 값을 수신할 수 있는 권한이 있는 경우 중개 서버는 제 1 중개 서버 그룹에 포함될 수 있고, 중개 서버와 통신하는 사용자 단말들 중 적어도 하나의 사용자 단말이 키 값을 수신할 수 있는 권한이 없는 경우 중개 서버는 제 2 중개 서버 그룹에 포함될 수 있다.
예를 들어, 중개 서버가 제 2 중개 서버 그룹에 포함된 경우, 승인 권한을 가진 제 3 사용자 단말로부터 먼저 키 값 송신에 대한 승인을 받은 후에 키 값이 중개 서버에 송신될 수 있다.
도 8은 일 실시예에 따른 맵 수정 내역을 공유하는 방법의 흐름도이다.
도 8을 참조하면, 단계 810에서 키 값 생성 서버(1000)는 제 1 사용자 단말로부터, 최초맵 및 최초맵을 수정한 제 1 수정맵에 기초하여 생성된 제 1 수정 내역을 수신할 수 있다.
단계 820에서, 키 값 생성 서버(1000)는 제 2 사용자 단말로부터, 최초맵 및 최초맵을 수정한 제 2 수정맵에 기초하여 생성된 제 2 수정 내역을 수신할 수 있다.
단계 830에서, 키 값 생성 서버(1000)는 제 1 사용자 단말에 제 2 수정 내역을 송신하고, 제 2 사용자 단말에 제 1 수정 내역을 송신할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 수정 내역 및 제 2 수정 내역을 각각 특정 문자열에 해당하는 제 1 키 값(key value) 및 제 2 키 값으로 변환하고, 제 1 키 값을 제 2 사용자 단말에 송신하고, 제 2 키 값을 제 1 사용자 단말에 송신할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 2 사용자 단말과 통신하는 제 1 중개 서버를 통해, 제 1 키 값을 제 2 사용자 단말에 송신할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 키 값을 제 1 사용자 단말과 통신하는 제 1 중개 서버를 통해 제 1 사용자 단말에 송신하고, 제 1 사용자 단말로부터 제 1 키 값을 전달받은 제 2 중개 서버를 통해 제 1 키 값을 제 2 사용자 단말에 송신할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 수정 내역의 데이터 크기를 기 설정된 데이터 크기와 비교하고, 비교 결과에 기초하여 제 1 수정 내역의 데이터 크기가 기 설정된 데이터 크기보다 큰 경우, 제 1 키 값을 제 2 사용자 단말에 송신할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 사용자 단말을 포함하는 복수의 사용자 단말들을 제 1 사용자 단말 그룹 및 제 2 사용자 단말 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하고, 제 2 사용자 단말이 제 1 사용자 단말 그룹 및 제 2 사용자 단말 그룹 중 어느 그룹에 포함되는 지 여부에 따라 제 1 키 값을 제 2 사용자 단말에 송신할지 결정할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 최초맵을 최초맵의 종류에 따라 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하고, 최초맵이 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 그룹에 포함되는 지 여부에 따라 제 1 키 값을 제 2 사용자 단말에 송신할지 결정할 수 있다.
일 실시예에 따르면, 키 값 생성 서버(1000)는 제 1 중개 서버를 포함한 복수의 중개 서버들을 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하고, 제 1 중개 서버가 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 그룹에 포함되는 지 여부에 따라 수정 내역을 제 1 키 값을 제 1 중개 서버를 통해 제 2 사용자 단말에 송신할지 결정할 수 있다.
단계 840에서, 키 값 생성 서버(1000)는 송신 결과에 의해, 제 1 사용자 단말에 표시되는 상기 제 1 수정맵에 제 2 수정 내역을 실시간으로 반영하고, 제 2 사용자 단말에 표시되는 제 2 수정맵에 제 1 수정 내역을 실시간으로 반영할 수 있다.
일 실시예에 따르면, 제 1 사용자 단말에 표시되는 제 1 수정맵에 제 2 수정 내역이 실시간으로 반영되어, 제 1 최종 맵이 생성되고, 제 2 사용자 단말에 표시되는 제 2 수정맵에 제 1 수정 내역이 실시간으로 반영되어, 제 2 최종 맵이 생성될 수 있다. 또한, 제 1 사용자 단말에 표시되는 제 1 최종 맵과 제 2 사용자 단말에 표시되는 제 2 최종 맵은 실시간으로 동기화될 수 있다.
도 9는 일 실시예에 따른 키 값 생성 서버의 블록도이다.
도 9를 참조하면, 키 값 생성 서버(900)는 통신부(910), 프로세서(920) 및 DB(930)를 포함할 수 있다. 도 9의 키 값 생성 서버(900)에는 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 9에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 당해 기술분야의 통상의 기술자라면 이해할 수 있다.
통신부(910)는 외부 서버 또는 외부 장치와 유선/무선 통신을 하게 하는 하나 이상의 구성 요소를 포함할 수 있다. 예를 들어, 통신부(910)는, 근거리 통신부(미도시), 이동 통신부(미도시) 및 방송 수신부(미도시) 중 적어도 하나를 포함할 수 있다.
DB(930)는 키 값 생성 서버(900) 내에서 처리되는 각종 데이터들을 저장하는 하드웨어로서, 프로세서(920)의 처리 및 제어를 위한 프로그램을 저장할 수 있다. DB(930)는 결제 정보, 사용자 정보 등을 저장할 수 있다.
DB(930)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.
프로세서(920)는 키 값 생성 서버(900)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(920)는 DB(930)에 저장된 프로그램들을 실행함으로써, 입력부(미도시), 디스플레이(미도시), 통신부(910), DB(930) 등을 전반적으로 제어할 수 있다. 프로세서(920)는, DB(930)에 저장된 프로그램들을 실행함으로써, 차선 결정 장치(900)의 동작을 제어할 수 있다.
프로세서(920)는 도 1 내지 도 8에서 상술한 키 값 생성 서버의 동작 중 적어도 일부를 제어할 수 있다.
프로세서(920)는 ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적 유닛 중 적어도 하나를 이용하여 구현될 수 있다.
본 발명에 따른 실시 예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다.
한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.
일 실시예에 따르면, 본 개시의 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시 예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.
Claims (10)
- 맵 수정 내역을 공유하는 방법에 있어서,
키 값 생성 서버가 제 1 사용자 단말로부터, 최초맵 및 상기 최초맵을 수정한 제 1 수정맵에 기초하여 생성된 제 1 수정 내역을 수신하는 단계;
상기 키 값 생성 서버가 제 2 사용자 단말로부터, 상기 최초맵 및 상기 최초맵을 수정한 제 2 수정맵에 기초하여 생성된 제 2 수정 내역을 수신하는 단계; 및
상기 키 값 생성 서버가 상기 제 1 사용자 단말에 상기 제 2 수정 내역을 송신하고, 상기 제 2 사용자 단말에 상기 제 1 수정 내역을 송신하는 단계; 를 포함하고,
상기 송신 결과에 의해, 상기 제 1 사용자 단말에 표시되는 상기 제 1 수정맵에 상기 제 2 수정 내역이 실시간으로 반영되고, 상기 제 2 사용자 단말에 표시되는 상기 제 2 수정맵에 상기 제 1 수정 내역이 실시간으로 반영되고,
상기 송신하는 단계는,
상기 제 1 수정 내역 및 상기 제 2 수정 내역을 각각 제 1 키 값(key value) 및 제 2 키 값으로 변환하는 단계; 및
상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하고, 상기 제 2 키 값을 상기 제 1 사용자 단말에 송신하는 단계;
를 포함하고,
제 1 수정 내역은 상기 최초맵 및 상기 제 1 수정맵으로부터 생성된 적어도 하나의 변경 사항을 포함하고, 제 2 수정 내역은 상기 최초맵 및 상기 제 2 수정맵으로부터 생성된 적어도 하나의 변경 사항을 포함하고,
상기 제 1 키 값은 상기 제 1 수정 내역을 기 설정된 방법에 따라 부호화하여 변환 또는 압축한 특정 문자열에 해당하고, 상기 제 2 키 값은 상기 제 2 수정 내역을 상기 기 설정된 방법에 따라 부호화하여 변환 또는 압축한 특정 문자열에 해당하는, 방법. - 제 1 항에 있어서,
상기 제 1 사용자 단말에 표시되는 상기 제 1 수정맵에 상기 제 2 수정 내역이 실시간으로 반영되어, 제 1 최종 맵이 생성되고,
상기 제 2 사용자 단말에 표시되는 상기 제 2 수정맵에 상기 제 1 수정 내역이 실시간으로 반영되어, 제 2 최종 맵이 생성되고,
상기 제 1 사용자 단말에 표시되는 상기 제 1 최종 맵과 상기 제 2 사용자 단말에 표시되는 상기 제 2 최종 맵은 실시간으로 동기화되는 것인, 방법. - 삭제
- 제 1 항에 있어서,
상기 송신하는 단계는,
상기 제 2 사용자 단말과 통신하는 제 1 중개 서버를 통해, 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하는 단계;
를 포함하는, 방법. - 제 1 항에 있어서,
상기 송신하는 단계는,
상기 제 1 키 값을 상기 제 1 사용자 단말과 통신하는 제 1 중개 서버를 통해 상기 제 1 사용자 단말에 송신하는 단계; 및
상기 제 1 사용자 단말로부터 상기 제 1 키 값을 전달받은 제 2 중개 서버를 통해 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하는 단계;
를 포함하는 방법. - 제 1 항에 있어서,
상기 송신하는 단계는,
상기 제 1 수정 내역의 데이터 크기를 기 설정된 데이터 크기와 비교하는 단계; 및
상기 비교 결과에 기초하여 상기 제 1 수정 내역의 데이터 크기가 상기 기 설정된 데이터 크기보다 큰 경우, 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하는 단계;
를 포함하는 방법. - 제 1 항에 있어서,
상기 송신하는 단계는,
상기 제 1 사용자 단말을 포함하는 복수의 사용자 단말들을 제 1 사용자 단말 그룹 및 제 2 사용자 단말 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하는 단계; 및
상기 제 2 사용자 단말이 상기 제 1 사용자 단말 그룹 및 상기 제 2 사용자 단말 그룹 중 어느 그룹에 포함되는 지 여부에 따라 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신할지 결정하는 단계;
를 포함하는 방법. - 제 1 항에 있어서,
상기 송신하는 단계는,
상기 최초맵을 상기 최초맵의 종류에 따라 제 1 맵 그룹 및 제 2 맵 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하는 단계; 및
상기 최초맵이 상기 제 1 맵 그룹 및 상기 제 2 맵 그룹 중 어느 그룹에 포함되는 지 여부에 따라 상기 제 1 키 값을 상기 제 2 사용자 단말에 송신할지 결정하는 단계;
를 포함하는 방법. - 제 4 항에 있어서,
상기 송신하는 단계는,
상기 제 1 중개 서버를 포함한 복수의 중개 서버들을 제 1 중개 서버 그룹 및 제 2 중개 서버 그룹 중 어느 하나의 그룹으로 그룹핑(grouping)하는 단계; 및
상기 제 1 중개 서버가 상기 제 1 중개 서버 그룹 및 상기 제 2 중개 서버 그룹 중 어느 그룹에 포함되는 지 여부에 따라 상기 제 1 키 값을 상기 제 1 중개 서버를 통해 상기 제 2 사용자 단말에 송신할지 결정하는 단계;
를 포함하는 방법. - 맵 수정 내역을 공유하는 장치에 있어서,
적어도 하나의 프로그램을 저장하는 메모리; 및
상기 적어도 하나의 프로그램을 실행함으로써 상기 수정 내역을 공유하는 적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로세서는,
제 1 사용자 단말로부터, 최초맵 및 상기 최초맵을 수정한 제 1 수정맵에 기초하여 생성한 제 1 수정 내역을 수신하고,
제 2 사용자 단말로부터, 상기 최초맵 및 상기 최초맵을 수정한 제 2 수정맵에 기초하여 생성한 제 2 수정 내역을 수신하고,
상기 제 1 사용자 단말에 상기 제 2 수정 내역을 송신하고, 상기 제 2 사용자 단말에 상기 제 1 수정 내역을 송신하고,
상기 송신 결과에 의해, 상기 제 1 사용자 단말에 표시되는 상기 제 1 수정맵에 상기 제 2 수정 내역이 실시간으로 반영되고, 상기 제 2 사용자 단말에 표시되는 상기 제 2 수정맵에 상기 제 1 수정 내역이 실시간으로 반영되고,
상기 프로세서는,
상기 제 1 수정 내역 및 상기 제 2 수정 내역을 각각 제 1 키 값(key value) 및 제 2 키 값으로 변환하고,
상기 제 1 키 값을 상기 제 2 사용자 단말에 송신하고, 상기 제 2 키 값을 상기 제 1 사용자 단말에 송신하고,
제 1 수정 내역은 상기 최초맵 및 상기 제 1 수정맵으로부터 생성된 적어도 하나의 변경 사항을 포함하고, 제 2 수정 내역은 상기 최초맵 및 상기 제 2 수정맵으로부터 생성된 적어도 하나의 변경 사항을 포함하고,
상기 제 1 키 값은 상기 제 1 수정 내역을 기 설정된 방법에 따라 부호화하여 변환 또는 압축한 특정 문자열에 해당하고, 상기 제 2 키 값은 상기 제 2 수정 내역을 상기 기 설정된 방법에 따라 부호화하여 변환 또는 압축한 특정 문자열에 해당하는, 장치.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023569718A JP2024522969A (ja) | 2021-05-10 | 2022-05-10 | 地図修正データの共有方法および装置 |
PCT/KR2022/006604 WO2022240109A1 (ko) | 2021-05-10 | 2022-05-10 | 맵 수정 데이터를 공유하는 방법 및 장치 |
DE112022002507.7T DE112022002507T5 (de) | 2021-05-10 | 2022-05-10 | Verfahren und Vorrichtung zum Teilen von Kartenkorrekturdaten |
US18/560,083 US20240240967A1 (en) | 2021-05-10 | 2022-05-10 | Method and apparatus for sharing map correction data |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20210060303 | 2021-05-10 | ||
KR1020210060303 | 2021-05-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102457950B1 true KR102457950B1 (ko) | 2022-10-25 |
Family
ID=83804121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210093061A KR102457950B1 (ko) | 2021-05-10 | 2021-07-15 | 맵 수정 데이터를 공유하는 방법 및 장치 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20240240967A1 (ko) |
JP (1) | JP2024522969A (ko) |
KR (1) | KR102457950B1 (ko) |
DE (1) | DE112022002507T5 (ko) |
WO (1) | WO2022240109A1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100557747B1 (ko) | 2005-09-21 | 2006-03-06 | 주식회사 범아엔지니어링 | 지리정보 데이터의 실시간 업데이트 방법 |
KR20140068321A (ko) * | 2012-11-26 | 2014-06-09 | 삼성전자주식회사 | 디지털 미디어 컨텐츠 관리 방법, 상기 방법을 기록한 컴퓨터 판독 가능 저장매체 및 사용자 단말 |
KR20160046444A (ko) * | 2014-10-21 | 2016-04-29 | 인포뱅크 주식회사 | 데이터 공유 다운로드 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160089988A (ko) * | 2015-01-21 | 2016-07-29 | 한국과학기술원 | 이동통신 단말기 간의 컨텐츠 공유 방법 및 이를 위한 통신 시스템 |
KR101712570B1 (ko) * | 2015-08-19 | 2017-03-06 | 라인 가부시키가이샤 | 컨텐츠 공유 서비스 제공 방법, 장치 및 컴퓨터 프로그램 |
KR20170133169A (ko) * | 2016-05-25 | 2017-12-05 | 크리니티(주) | 컨텐츠 공유 방법 |
-
2021
- 2021-07-15 KR KR1020210093061A patent/KR102457950B1/ko active IP Right Grant
-
2022
- 2022-05-10 DE DE112022002507.7T patent/DE112022002507T5/de active Pending
- 2022-05-10 US US18/560,083 patent/US20240240967A1/en active Pending
- 2022-05-10 WO PCT/KR2022/006604 patent/WO2022240109A1/ko active Application Filing
- 2022-05-10 JP JP2023569718A patent/JP2024522969A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100557747B1 (ko) | 2005-09-21 | 2006-03-06 | 주식회사 범아엔지니어링 | 지리정보 데이터의 실시간 업데이트 방법 |
KR20140068321A (ko) * | 2012-11-26 | 2014-06-09 | 삼성전자주식회사 | 디지털 미디어 컨텐츠 관리 방법, 상기 방법을 기록한 컴퓨터 판독 가능 저장매체 및 사용자 단말 |
KR20160046444A (ko) * | 2014-10-21 | 2016-04-29 | 인포뱅크 주식회사 | 데이터 공유 다운로드 방법 |
Also Published As
Publication number | Publication date |
---|---|
US20240240967A1 (en) | 2024-07-18 |
DE112022002507T5 (de) | 2024-02-29 |
WO2022240109A1 (ko) | 2022-11-17 |
JP2024522969A (ja) | 2024-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180060320A1 (en) | Interactive multiple user playlist sharing | |
WO2022022245A1 (zh) | 数字物权凭证的生成方法、装置及设备 | |
KR102290474B1 (ko) | 데이터 사이언스 기반 히스토리 관리 및 이를 이용한 권리금 산정 방법 및 장치 | |
KR102481613B1 (ko) | 편집 기능을 갖는 3d 웹사이트 제작 플랫폼 제공 시스템, 방법 및 프로그램 | |
US20230039832A1 (en) | Method and system for transaction of digital asset | |
KR20210070593A (ko) | 상품을 예약 구매하는 방법 및 시스템 | |
CN106716405A (zh) | 用于将在计算机设备的本地桌面应用程序上创建的命令和/或内容直接注入至网页浏览器并反之亦然的系统、方法和计算机程序产品 | |
US20240320771A1 (en) | Patent licensing method utilizing a distributed ledger infrastructure | |
US11733832B2 (en) | Optimizing object displays on user interfaces | |
TW201426309A (zh) | 薄化書本 | |
CN108833504B (zh) | 跨站点信息同步方法及装置 | |
KR102457950B1 (ko) | 맵 수정 데이터를 공유하는 방법 및 장치 | |
CN112541645B (zh) | 伴随车辆产品项目开发的数据处理方法、系统及相关装置 | |
KR102462212B1 (ko) | 차량 수리 및 판매 중개 서비스 제공 방법 및 장치 | |
US11915316B2 (en) | Method and system for converting order book data into 2D data for machine learning models | |
US9766863B2 (en) | Rendering interface objects defined by a separate application | |
CN114710342B (zh) | 一种社群管理方法、设备、介质及程序产品 | |
US9170795B2 (en) | Digital item ingestion process | |
KR102431094B1 (ko) | Nfc 모듈이 내장된 웨어러블 디바이스를 이용하여 컨텐츠를 제공하는 방법 및 시스템 | |
KR102372590B1 (ko) | 분석 데이터를 관리하는 시스템 | |
KR20220080325A (ko) | 가구 배치 서비스를 제공하는 방법 및 컴퓨터 프로그램 제품 | |
CN104994062A (zh) | 一种信息推送方法及装置 | |
KR102480879B1 (ko) | 결제 기준 데이터에 기초하여 상점의 위치 정보를 포함하는 결제 데이터를 생성하는 방법 및 컴퓨터 프로그램 제품 | |
KR102288475B1 (ko) | 결제 기준 데이터와 구매 상품 정보를 매칭시켜 표시하는 방법 및 컴퓨터 프로그램 제품 | |
KR102370585B1 (ko) | 배달 주문 서비스 제공 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |