KR101519020B1 - Appatus for partial-updating navigation data in driving and method thereof - Google Patents
Appatus for partial-updating navigation data in driving and method thereof Download PDFInfo
- Publication number
- KR101519020B1 KR101519020B1 KR1020130133039A KR20130133039A KR101519020B1 KR 101519020 B1 KR101519020 B1 KR 101519020B1 KR 1020130133039 A KR1020130133039 A KR 1020130133039A KR 20130133039 A KR20130133039 A KR 20130133039A KR 101519020 B1 KR101519020 B1 KR 101519020B1
- Authority
- KR
- South Korea
- Prior art keywords
- manager
- update
- core module
- migration
- file
- Prior art date
Links
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/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
-
- 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/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
- G01C21/32—Structuring or formatting of map data
-
- 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/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/09—Arrangements for giving variable traffic instructions
- G08G1/0962—Arrangements for giving variable traffic instructions having an indicator mounted inside the vehicle, e.g. giving voice messages
- G08G1/0968—Systems involving transmission of navigation instructions to the vehicle
- G08G1/0969—Systems involving transmission of navigation instructions to the vehicle having a display in the form of a map
Abstract
본 발명은 데이터베이스 기반의 내비게이션이 경로안내 서비스를 하는 도중에 서비스를 멈추지 않고 내비게이션 데이터를 부분업데이트를 하기 위한 장치 및 방법에 관한 것으로, 본 발명에 의한 주행 중 내비게이션 데이터의 부분 업데이트 장치는, 저장 매체에 저장되는 데이터베이스 파일; 저장 매체에 저장되는 로그 파일; 상기 데이터베이스 파일과 로그 파일에 데이터를 기록하거나 접근하도록 지원하는 코어 모듈; 상기 데이터베이스 파일에 대한 업데이트 데이터를 상기 코어 모듈을 이용하여 상기 로그 파일에 저장하는 업데이트 관리자; 및 상기 코어 모듈을 이용하여 상기 데이터베이스 파일에 저장된 데이터에 접근하여 경로 안내 서비스를 제공하는 경로안내 관리자;를 포함하고, 상기 코어 모듈은 상기 업데이트 관리자의 요청에 의해 로그 파일 생성 및 로그 기록을 수행하고, 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 이루어지는 동안에만 활성화되어 상기 경로안내 관리자의 요청에 의해 변경된 데이터는 상기 로그 파일에서 읽어오는 회복 관리자를 구비하는 것을 특징으로 한다.The present invention relates to an apparatus and a method for performing partial update of navigation data without stopping service while a navigation system based on a database is performing route guidance service, and a partial updating apparatus for navigation data during running according to the present invention includes: The database file to be saved; A log file stored on a storage medium; A core module for supporting recording or accessing data in the database file and the log file; An update manager for storing update data for the database file in the log file using the core module; And a path guide manager accessing the data stored in the database file using the core module to provide a path guide service. The core module performs log file creation and log recording at the request of the update manager And a recovery manager which is activated only during the migration from the log file to the database file and reads the changed data at the request of the path guide manager from the log file.
Description
본 발명은 데이터베이스 기반의 내비게이션이 경로안내 서비스를 하는 도중에 서비스를 멈추지 않고 내비게이션 데이터를 부분업데이트를 하기 위한 장치 및 방법에 관한 것이다.The present invention relates to an apparatus and a method for a database-based navigation to partially update navigation data without stopping service while a route guidance service is being performed.
종래의 내비게이션은 파일 기반으로 내비게이션 데이터를 업데이트 하기 위해서는 블록 단위의 전체 업데이트 방식을 채택하여 많은 시간이 걸리는 문제점이 있었다.Conventional navigation has a problem in that it takes much time to update the navigation data on a file basis by adopting a block update method in a whole block.
내비게이션 데이터를 데이터베이스 기반으로 관리하면 객체 단위의 부분 업데이트 방식을 채택함으로써 업데이트 시간을 대폭 줄일 수 있게 된다.By managing the navigation data on a database basis, update time can be greatly reduced by adopting a partial update method on an object basis.
또한, 내비게이션이 경로안내 서비스를 하는 도중에 내비게이션 데이터를 업데이트 하게 되면 데이터의 일관성을 유지하기 위하여 경로안내 서비스를 중단하여야 하는 문제점이 있다. 특히, 내비게이션 데이터의 부분 업데이트 방식에서는 내비게이션이 경로안내 서비스를 하는 도중에 데이터 업데이트가 빈번하게 발생할 수 있어, 이로 인한 사용자의 불편함이 가중될 수 있다.Further, if the navigation updates the navigation data while the navigation service is in progress, there is a problem that the route guidance service must be stopped in order to maintain the consistency of the data. Particularly, in the partial updating method of the navigation data, data updating frequently occurs while the navigation service is performing the route guidance service, so that the user's discomfort may be increased.
본 발명은 상기의 문제점을 해결하기 위하여 안출된 것으로, 경로안내 관리자와 업데이트 관리자 간의 통신을 통해 업데이트 관리자가 업데이트 연산을 수행하는 동안 경로안내 관리자의 상태를 데이터의 일관성이 유지되도록 전환함으로써 경로안내 서비스를 하는 도중에 서비스를 멈추지 않고 내비게이션 데이터를 부분 업데이트하는 장치 및 그 방법을 제공함을 목적으로 한다.SUMMARY OF THE INVENTION The present invention is conceived to solve the above problems, and it is an object of the present invention to provide a route guidance service And to partially update the navigation data without stopping the service while performing the navigation service.
상기의 목적을 달성하기 위하여, 본 발명에 의한 주행 중 내비게이션 데이터의 부분 업데이트 장치는, 저장 매체에 저장되는 데이터베이스 파일; 저장 매체에 저장되는 로그 파일; 상기 데이터베이스 파일과 로그 파일에 데이터를 기록하거나 접근하도록 지원하는 코어 모듈; 상기 데이터베이스 파일에 대한 업데이트 데이터를 상기 코어 모듈을 이용하여 상기 로그 파일에 저장하는 업데이트 관리자; 및 상기 코어 모듈을 이용하여 상기 데이터베이스 파일에 저장된 데이터에 접근하여 경로 안내 서비스를 제공하는 경로안내 관리자;를 포함하고, 상기 코어 모듈은 상기 업데이트 관리자의 요청에 의해 로그 파일 생성 및 로그 기록을 수행하고, 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 이루어지는 동안에만 활성화되어 상기 경로안내 관리자의 요청에 의해 변경된 데이터는 상기 로그 파일에서 읽어오는 회복 관리자를 구비하는 것을 특징으로 한다.In order to achieve the above object, a partial updating apparatus for navigation data during running according to the present invention includes: a database file stored in a storage medium; A log file stored on a storage medium; A core module for supporting recording or accessing data in the database file and the log file; An update manager for storing update data for the database file in the log file using the core module; And a path guide manager accessing the data stored in the database file using the core module to provide a path guide service. The core module performs log file creation and log recording at the request of the update manager And a recovery manager which is activated only during the migration from the log file to the database file and reads the changed data at the request of the path guide manager from the log file.
주행 중 내비게이션 데이터의 부분 업데이트 장치에 있어서, 상기 코어 모듈은 상기 경로안내 관리자 사이의 통신을 수행하여 상기 마이그레이션의 시작 시점(MIGCB_MIGRATION_BEFORE)과 종료 시점(MIGCB_MIGRATION_AFTER)을 상기 경로안내 관리자에 알려주는 사용자 콜백함수와, 상기 마이그레이션의 시작 시점과 종료 시점에 상기 경로안내 관리자의 호출에 의해 상기 코어 모듈이 재부팅되는 것과 같은 효과를 제공하는 restartupSystem 사용자 API를 더 구비하는 것을 특징으로 한다.1. A partial update apparatus for navigation data during traveling, the core module comprising: a user callback function for communicating between the route guidance manager and the route guidance manager, the start time point (MIGCB_MIGRATION_BEFORE) and the end point (MIGCB_MIGRATION_AFTER) And a restartupSystem user API that provides the same effect that the core module is rebooted by a call of the route guide manager at a start time and an end time of the migration.
주행 중 내비게이션 데이터의 부분 업데이트 장치에 있어서, 상기 코어 모듈은 상기 업데이트 관리자가 구동된 후 상기 사용자 콜백함수를 등록하는 setUserCallbackFunc 사용자 API를 더 구비하는 것을 특징으로 한다.The partial update device for navigation data during traveling may further comprise a setUserCallbackFunc user API for registering the user callback function after the update manager is activated.
상기의 다른 목적을 달성하기 위하여, 본 발명에 의한 주행 중 내비게이션 데이터의 부분 업데이트 방법은, 경로안내 관리자가 구동되어 코어 모듈을 이용하여 데이터베이스 파일에 저장된 데이터에 접근하여 경로 안내 서비스를 제공하는 단계; 업데이트 관리자가 구동되어 상기 데이터베이스 파일에 대한 업데이트 연산을 수행하여 상기 코어 모듈의 회복 관리자를 활성화하고, 상기 회복 관리자가 로그 파일을 생성하고 생성된 로그 파일에 로그를 기록하는 단계; 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 시작되기 전에 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_BEFORE'로의 상태 전환을 요청하는 단계; 경로안내 관리자의 회복 관리자가 활성화되어 변경된 데이터는 상기 로그 파일에서 읽어오는 단계; 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 종료된 후에 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_AFTER'로의 상태 전환을 요청하는 단계; 및 경로안내 관리자의 회복 관리자가 비활성화되어 코어 모듈을 이용하여 데이터베이스 파일에 저장된 데이터에 직접 접근하여 경로 안내 서비스를 제공하는 단계;를 포함하여 구성된다.According to another aspect of the present invention, there is provided a partial updating method of navigation data during driving, comprising: providing a route guidance service by accessing data stored in a database file using a core module driven by a route guidance manager; An update manager is activated to perform an update operation on the database file to activate a recovery manager of the core module, the recovery manager generates a log file and records a log in the generated log file; The recovery manager of the update manager requests the route guidance manager to change the state to 'MIGCB_MIGRATION_BEFORE' before migration from the log file to the database file starts; Reading the changed data from the log file by activating the recovery manager of the path guide manager; After the migration from the log file to the database file is completed, the recovery manager of the update manager requests the path guide manager to change the state to 'MIGCB_MIGRATION_AFTER'; And a step of providing a route guidance service by directly accessing the data stored in the database file using the core module when the recovery manager of the route guidance manager is inactivated.
주행 중 내비게이션 데이터의 부분 업데이트 방법에 있어서, 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_BEFORE' 또는 'MIGCB_MIGRATION_AFTER'로의 상태 전환을 요청할 때, 상기 업데이트 관리자와 상기 경로안내 관리자 사이의 통신을 수행하는 사용자 콜백함수를 이용하는 것을 특징으로 한다.A method for partially updating navigation data during driving, the method comprising: performing communication between the update manager and the route guidance manager when the recovery manager of the update manager requests the route guidance manager to change the state to 'MIGCB_MIGRATION_BEFORE' or 'MIGCB_MIGRATION_AFTER' And a user callback function is used.
주행 중 내비게이션 데이터의 부분 업데이트 방법에 있어서, 상기 업데이트 관리자는 구동된 후 코어 모듈에 구성된 setUserCallbackFunc 사용자 API를 사용하여 상기 사용자 콜백함수를 코어 모듈에 등록하는 것을 특징으로 한다.The partial update method of navigation data during driving is characterized in that the update manager registers the user callback function in the core module using the setUserCallbackFunc user API configured in the core module after being driven.
주행 중 내비게이션 데이터의 부분 업데이트 방법에 있어서, 상기 경로안내 관리자가 'MIGCB_MIGRATION_BEFORE' 또는 'MIGCB_MIGRATION_AFTER'로 상태 전환되면 restartupSystem 사용자 API를 호출하여 상기 코어 모듈이 재부팅되는 것과 같은 효과를 제공하는 것을 특징으로 한다. In the partial update method of navigation data during running, when the route guidance manager changes state to 'MIGCB_MIGRATION_BEFORE' or 'MIGCB_MIGRATION_AFTER', a restartupSystem user API is called to provide the same effect as rebooting the core module.
상기의 또 다른 목적을 달성하기 위하여, 본 발명에 의한 컴퓨터가 읽을 수 있는 기록매체는 경로안내 관리자가 구동되어 코어 모듈을 이용하여 데이터베이스 파일에 저장된 데이터에 접근하여 경로 안내 서비스를 제공하는 단계; 업데이트 관리자가 구동되어 상기 데이터베이스 파일에 대한 업데이트 연산을 수행하여 상기 코어 모듈의 회복 관리자를 활성화하고, 상기 회복 관리자가 로그 파일을 생성하고 생성된 로그 파일에 로그를 기록하는 단계; 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 시작되기 전에 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_BEFORE'로의 상태 전환을 요청하는 단계; 경로안내 관리자의 회복 관리자가 활성화되어 변경된 데이터는 상기 로그 파일에서 읽어오는 단계; 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 종료된 후에 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_AFTER'로의 상태 전환을 요청하는 단계; 및 경로안내 관리자의 회복 관리자가 비활성화되어 코어 모듈을 이용하여 데이터베이스 파일에 저장된 데이터에 직접 접근하여 경로 안내 서비스를 제공하는 단계;를 포함하여 구성된 주행 중 내비게이션 데이터의 부분 업데이트 방법이 구현된 프로그램을 기록한다.According to another aspect of the present invention, there is provided a computer-readable recording medium having a path guide manager driven to access data stored in a database file using a core module to provide a path guide service; An update manager is activated to perform an update operation on the database file to activate a recovery manager of the core module, the recovery manager generates a log file and records a log in the generated log file; The recovery manager of the update manager requests the route guidance manager to change the state to 'MIGCB_MIGRATION_BEFORE' before migration from the log file to the database file starts; Reading the changed data from the log file by activating the recovery manager of the path guide manager; After the migration from the log file to the database file is completed, the recovery manager of the update manager requests the path guide manager to change the state to 'MIGCB_MIGRATION_AFTER'; And a step of providing a route guidance service by directly accessing the data stored in the database file using the core module, wherein the recovery manager of the route guidance manager is inactivated to record the program in which the implemented partial navigation method of navigation data is implemented do.
이상 설명한 바와 같이 본 발명에 따르면, 본 발명은 내비게이션 데이터를 데이터베이스 기반으로 관리하여 객체 단위의 부분 업데이트 방식을 채택함으로써 업데이트 시간을 대폭 줄일 수 있게 되고, 내비게이션 데이터 업데이트 도중에도 경로안내 서비스를 끊김 없이 받을 수 있게 함으로써 내비게이션 사용자의 불편함을 줄일 수 있다는 효과를 얻을 수 있다.As described above, according to the present invention, the update time can be greatly reduced by managing the navigation data on the basis of the database and adopting the partial update method on an object unit basis, and the navigation service can be continuously received even during the update of the navigation data It is possible to reduce the inconvenience of the navigation user.
도 1은 본 발명에 의한 주행 중 내비게이션 데이터의 부분 업데이트 장치의 전체적인 구성을 도시한 것이고,
도 2는 내비게이션 부팅 후 경로안내 관리자의 구동 모습을 도시한 것이고,
도 3은 경로안내 및 부분 업데이트 절체 1단계의 구동 모습을 도시한 것이고,
도 4는 경로안내 및 부분 업데이트 절체 2단계의 구동 모습을 도시한 것이고,
도 5는 경로안내 및 부분 업데이트 절체 3단계의 구동 모습을 도시한 것이고,
도 6은 부분 업데이트 후 정상상태로 돌아온 경로안내 관리자의 구동 모습을 도시한 것이다.1 is a block diagram showing an overall configuration of a partial update apparatus for navigation data during running according to the present invention,
2 is a view showing the operation of the route guidance manager after the navigation boot,
3 shows a driving view of the route guiding and partial update switching 1 stage,
4 shows a driving view of the route guiding and partial update switching 2 steps,
FIG. 5 shows a driving view of three steps of route guidance and partial update switching,
FIG. 6 is a diagram illustrating the operation of the route guidance manager returned to a normal state after partial update.
이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
도 1에 의하면, 주행 중 내비게이션 데이터의 부분 업데이트 장치의 바람직한 일 실시예는 데이터베이스 파일(40), 로그 파일(50), 회복 관리자(32a,32b)를 구비한 코어 모듈(30a,30b), 경로안내 관리자(10) 및 업데이트 관리자(20)를 포함하여 구성된다.1, a preferred embodiment of a partial updating device for navigation data during running includes
본 발명의 구성요소인 데이터베이스 파일(40)과 로그 파일(50)은 각각 수동적인 구성요소로서, 메인 메모리와는 별개의 저장 매체에 저장된다. 본 발명에서 사용되는 저장 매체는 플래시 메모리로 구현되는 것이 바람직하지만, 반드시 이에 한정되는 것은 아니다.The
본 발명의 구성요소인 코어 모듈(30a,30b), 경로안내 관리자(10) 및 업데이트 관리자(20)는 각각 모바일 환경으로 제공되는 내비게이션 장치를 구성하는 각종 하드웨어 및 소프트웨어의 복합체로 구현될 수 있는 능동적인 구성요소로서, 이하에서 각 구성요소가 제공하는 기능적인 특징에 의해 정의된다.The
코어 모듈(30a,30b)은 데이터베이스 파일(40)과 로그 파일(50)에 데이터를 기록하거나 접근하도록 지원하는 일종의 데이터베이스 관리 시스템(Data Base Management System : DBMS)이다.The
경로안내 관리자(10)는 코어 모듈(30a)을 이용하여 데이터베이스 파일(40)에 저장된 데이터에 접근(읽기 연산만을 수행)하여 사용자가 선택한 목적지를 검색하고 목적지까지의 직진/좌회전/우회전 등의 경로 안내 서비스를 제공한다.The
업데이트 관리자(20)는 데이터베이스 파일(40)에 대한 업데이트 데이터를 코어 모듈(30b)을 이용하여 로그 파일(50)에 저장한 후, 로그 파일(50)에 저장된 로그 데이터를 데이터베이스 파일(40)로 마이그레이션한다.The
경로안내 관리자(10)와 업데이트 관리자(20)는 내비게이션 장치 내에서 프로세스 기반 또는 쓰레드 기반으로 동작하는데, 이때 각각은 코어 모듈(30a,30b)을 사용한다.The
코어 모듈(30a)과 코어 모듈(30b)은 실제로는 동일한 파일로 이루어져 있지만, 동작할 때는 각각 경로 안내 관리자(10)와 업데이트 관리자(20)에 결합된 상태에서 독립된 영역을 가지므로 이를 구분하기 위하여 참조번호를 달리하여 표시한 것이다.The
코어 모듈(30a)와 코어 모듈(30b)는 각각 사용자 콜백함수(34), 사용자 API(36) 및 회복 관리자(32a,32b)를 구비한다. 다만, 코어 모듈(30a)에 구비되는 사용자 콜백함수와 사용자 API는 본 발명과 관련하여 직접적인 기능을 수행하지 않으므로, 혼동을 피하기 위하여 이들은 도면상에서 도시되지 않는다. 따라서, 코어 모듈(30a)에 구비된 회복 관리자(32a) 그리고 코어 모듈(30b)에 구비된 사용자 콜백함수(34), 사용자 API(36) 및 회복 관리자(32b)가 본 발명과 관련된 구성요소이다.The
사용자 콜백함수(34)는 경로안내 관리자(10)와 업데이트 관리자(20) 사이의 통신을 수행하여 마이그레이션의 시작 시점(MIGCB_MIGRATION_BEFORE)과 종료 시점(MIGCB_MIGRATION_AFTER)을 경로안내 관리자에 알려주어 상태 전환(절체)을 요청한다.The
사용자 API(Application Programming Interface)(36)는 응용 프로그램에서 사용할 수 있도록 코어 모듈(30a,30b)이 제공하는 기능을 제어할 수 있게 만든 인터페이스로, setUserCallbackFunc과 restartupSystem이 포함된다.A user API (Application Programming Interface) 36 is an interface that enables the functions provided by the
setUserCallbackFunc은 업데이트 관리자(20)에서 사용하는 사용자 API로서, 업데이트 관리자(20)는 부팅 후 사용자 콜백함수(34)를 이 사용자 API를 통하여 반드시 등록하여야 한다.setUserCallbackFunc is a user API used by the
restartupSystem은 경로안내 관리자(10)에서 사용하는 사용자 API로서, 자신의 상태전환(절체) 시 이 사용자 API를 통하여 코어 모듈(30a)이 재부팅한 것과 같은 효과를 얻을 수 있다.The restartupSystem is a user API used by the
회복 관리자(32b)는 업데이트 관리자(20)의 요청에 의해 로그 파일 생성 및 로그 기록을 수행하여 로그 파일 기반의 부분 업데이트를 수행하고, 또한 회복 관리자(32a)는 로그 파일(50)에서 데이터베이스 파일(40)로 마이그레이션이 이루어지는 동안에만 활성화되어 경로안내 관리자(10)의 요청에 의해 변경된 데이터는 로그 파일에서 읽어옴으로써 끊김 없는 경로 안내 서비스가 가능하도록 하는 기능을 수행한다. 여기서, 회복 관리자(32a)와 회복 관리자(32b)도 코어 모듈(30a)과 코어 모듈(30b)과 마찬가지로 실제로는 동일한 파일로 이루어져 있지만, 동작할 때는 각각 경로 안내 관리자(10)와 업데이트 관리자(20)에 결합된 상태에서 독립된 영역을 가지므로 이를 구분하기 위하여 참조번호를 달리하여 표시한 것이다.The
한편, 경로안내 관리자(10)는 검색(Read) 기반으로 동작하며, 업데이트 관리자(20)는 변경(Write) 기반으로 동작한다. 이 두 관리자가 동시에 작업 중이라면 데이터베이스 파일(40)에 저장된 원본 데이터베이스를 공유하게 된다. 이때, 특정시간 영역(원본 데이터베이스가 변경 되는 구간)에 대해서 데이터의 일관성이 유지되도록 하는 장치가 필요하게 된다. 본 발명에서는 바로 상태 전환(절체)이란 방식을 통해서 이 문제를 해결한다.On the other hand, the
절체는 3단계로 진행된다.The transfer proceeds in three steps.
1단계는 단순히 두 관리자가 원본 데이터베이스를 변경하지 않고 서로 공유만 하는 상태이다.Step 1 is simply a matter of sharing the two administrators without changing the original database.
2단계는 업데이트 관리자(20)에 의해서 원본 데이터베이스가 변경되기 직전에 경로안내 관리자(10)의 상태를 데이터의 일관성이 유지되도록 변경하는 상태이다.Step 2 is a state in which the status of the
3단계는 업데이트 관리자(20)에 의해서 원본 데이터베이스가 완전이 변경 완료된 직후에 경로안내 관리자(10)의 상태를 원래의 상태로 되돌린 상태이다.
Step 3 is a state in which the state of the
이하에서 도 2 내지 도 6을 참조하여 주행 중 내비게이션 데이터의 부분 업데이트 과정을 상세히 설명한다.Hereinafter, the partial updating process of the navigation data during running will be described in detail with reference to FIGS. 2 to 6. FIG.
도 2는 내비게이션 부팅 후 경로안내 관리자(10) 구동 모습인데, 이에 관해 설명하면 다음과 같다.FIG. 2 shows a state in which the
먼저, 도 2는 최초 네비게이션 부팅 후 사용자의 목적지를 설정한 후, 경로안내 관리자(10)가 경로 안내를 서비스 하기 위한 구성요소들의 연결 관계를 도시한다.First, FIG. 2 shows a connection relationship of components for the
여기서는 경로안내 관리자(10)만이 구동되고, 업데이트 관리자(20)는 구동되지 않는다. 이 때, 회복 관리자(32a)는 비활성 상태이며, 경로안내 관리자(10)는 경로 안내에 필요한 데이터를 데이터베이스 파일(40)의 원본 데이터베이스에서 가져온다.Only the
도 3은 경로안내 및 부분 업데이트 절체 1단계 구동 모습인데, 이에 관해 설명하면 다음과 같다.FIG. 3 is a diagram illustrating a route guiding and partial update switching one-step driving mode.
경로안내 관리자(10)는 아무런 상태 전환 없이 기존 그대로 원본 데이터베이스로부터 필요한 데이터를 가져와서 서비스를 수행한다.The
업데이트 관리자(10)가 구동된 후 가장 먼저 사용자 콜백함수(34)를 코어 모듈(30b)에 등록한다(S101). 등록 방법은 코어 모듈(30b)에서 제공하는 setUserCallbackFunc 사용자 API를 사용한다.After the
이후 업데이트 관리자(20)는 Long Transaction으로 구성된 업데이트 연산을 수행한다(S103). 이 때, 회복 관리자(32b)는 활성화 되고, 활성화된 회복 관리자(32b)는 로그 파일(50)을 생성하고, 생성된 로그 파일(50)에 로그를 기록한다.Thereafter, the
이 상태에서는 원본 데이터베이스에 대한 변경이 이루어지지 않는다.In this state, no changes are made to the original database.
도 4는 경로안내 및 부분 업데이트 절체 2단계 구동 모습인데, 이에 관해 설명하면 다음과 같다.FIG. 4 is a diagram showing a route guiding and partial update switching two-step driving mode.
업데이트 관리자(20)의 회복 관리자(32b)는 모든 변경 연산을 로그에 기록 완료하고, 원본 데이터베이스에 반영(마이그레이션)할 일만 남아 있는 상태에 있다.The
여기서 회복 관리자(32b)는 사용자 콜백함수(34)를 호출하여 경로안내 관리자의 상태 전환을 요청한다(S201). 사용자 콜백함수의 파라메타인 state의 값은 'MIGCB_MIGRATION_BEFORE'로 설정한다.Here, the
사용자 콜백함수(34)는 경로안내 관리자(10)와의 통신을 담당하며, 경로안내관리자(10)에게 2단계 상태로 절체할 것을 요청하고 응답을 기다린다(S203).The
경로안내 관리자(10)는 restartupSystem 사용자 API를 호출한다. 이 때, 파라메타인 state의 값은 'MIGCB_MIGRATION_BEFORE'로 설정한다(S205). 부가적으로 경로안내 관리자(10)의 코어 모듈(30a)은 데이터베이스 파일(40)의 원본 데이터베이스로부터 가져와 캐쉬하고 있던 모든 데이터를 초기화한다.The
이 때, 경로안내 관리자(10)의 회복 관리자(32a)는 활성화 되며, 변경된 데이터는 로그 파일(50)에서 읽도록 상태를 변경한다(S207). 변경되지 않은 데이터는 데이터베이스 파일(40)에서 읽는 것은 당연하다.At this time, the
이렇게 해서 사용자 콜백함수(34)가 반환되면(S209, S211, S213), 업데이트 관리자(20)의 회복 관리자(32b)는 로그에 기록된 변경 데이터를 데이터베이스 파일(40)의 원본 데이터베이스에 반영하기 시작한다(S215).When the
이로써 경로안내 관리자(10)는 원본 데이터베이스에 마이그레이션이 완료되기 전에도 서비스의 끊김 없이 로그 파일(50)에서 업데이트 완료된 데이터를 가져와 사용자에게 서비스할 수 있게 된다. Thus, the
도 5는 경로안내 및 부분 업데이트 절체 3단계 구동 모습인데, 이에 관해 설명하면 다음과 같다.FIG. 5 is a diagram illustrating a route guidance and a partial update switching three-step driving mode.
업데이트 관리자(20)의 회복관리자(32b)는 로그 파일(50)에 기록된 변경 데이터를 원본 데이터베이스로 모두 반영하고, 커밋 완료를 눈앞에 두고 있는 상태에 있다(S301).The
업데이트 관리자(20)의 회복 관리자(32b)는 사용자 콜백함수(34)를 호출하여 경로안내 관리자(10)의 상태 전환을 요청한다(S303). 콜백함수의 파라메타인 state의 값은 'MIGCB_MIGRATION_AFTER'로 설정하여 원래의 상태로 되돌릴 것을 알려준다.The
사용자 콜백함수(34)는 경로안내 관리자(10)와의 통신을 담당하며, 경로안내 관리자(10)에게 3단계 상태로 절체할 것을 요청하고 응답을 기다린다(S305).The
경로안내 관리자(10)는 restartupSystem 사용자 API를 호출한다(S307). 파라메타인 state의 값은 'MIGCB_MIGRATION_AFTER'로 설정한다.The
이 때, 경로안내 관리자(10)의 회복관리자(32a)는 비활성화 되며, 데이터는 원본 데이터베이스에서 읽도록 상태를 변경한다.At this time, the
이렇게 해서 사용자 콜백함수(34)가 반환되면(S311, S313, S315), 업데이트 관리자(20)의 회복 관리자(32b)는 커밋을 완료하고 모든 작업은 종료된다.When the
이로써 경로안내 관리자(10)는 경로 안내 서비스의 끊김 없이 업데이트된 원본 데이터베이스에서 경로 안내에 필요한 데이터를 가져와 서비스 할 수 있게 된다.Thereby, the
도 6은 업데이트 완료 후 정상상태로 돌아온 경로안내 관리자 구동 모습인데, 이에 관해 설명하면 다음과 같다.FIG. 6 is a view illustrating the operation of the route guidance manager, which is returned to a normal state after the update is completed.
업데이트 관리자(20)는 모든 작업을 마치고 종료되었다.The
경로안내 관리자(10)는 최초 부팅시의 상태로 되돌아 왔다.The
그런데, 사용자는 내부적으로 일어나는 이런 일련의 모든 과정을 인지하지 못하며, 업데이트된 데이터에 의해 끊김 없이 계속적으로 경로안내 서비스 제공받을 수 있다.
However, the user is not aware of all the processes that occur internally and can continuously receive the route guidance service continuously by the updated data.
한편, 상술한 본 발명의 실시예는 모바일 단말기를 포함한 범용 컴퓨터에서 사용되는 매체에 기록될 수 있다. 상기 매체는 마그네틱 기록매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독매체(예를 들면, 씨디롬, 디브이디 등), 전기적 기록매체(예를 들면, 플레쉬 메모리, 메모리 스틱 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 기록매체를 포함한다.
Meanwhile, the embodiment of the present invention described above can be recorded in a medium used in a general-purpose computer including a mobile terminal. The medium may be a magnetic recording medium (e.g., ROM, floppy disk, hard disk, etc.), an optical reading medium (e.g. CD ROM or DVD), an electrical recording medium (e.g. flash memory, memory stick, And a carrier wave (e.g., transmission over the Internet).
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.The present invention has been described with reference to the preferred embodiments. It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is defined by the appended claims rather than by the foregoing description, and all differences within the scope of equivalents thereof should be construed as being included in the present invention.
10 : 경로안내 관리자 20 : 업데이트 관리자
30a,30b : 코어 모듈 32a,32b : 회복 관리자
34 : 사용자 콜백함수 36 : 사용자 API
40 : 데이터베이스 파일 50 : 로그 파일10: Path Guide Manager 20: Update Manager
30a, 30b:
34: User Callback Function 36: User API
40: Database file 50: Log file
Claims (8)
저장 매체에 저장되는 로그 파일;
상기 데이터베이스 파일과 로그 파일에 데이터를 기록하거나 접근하도록 지원하는 코어 모듈;
상기 데이터베이스 파일에 대한 업데이트 데이터를 상기 코어 모듈을 이용하여 상기 로그 파일에 저장하는 업데이트 관리자; 및
상기 코어 모듈을 이용하여 상기 데이터베이스 파일에 저장된 데이터에 접근하여 경로 안내 서비스를 제공하는 경로안내 관리자;를 포함하고,
상기 코어 모듈은 상기 업데이트 관리자의 요청에 의해 로그 파일 생성 및 로그 기록을 수행하고, 상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 이루어지는 동안에만 활성화되어 상기 경로안내 관리자의 요청에 의해 변경된 데이터는 상기 로그 파일에서 읽어오는 회복 관리자를 구비하고,
상기 코어 모듈은
상기 경로안내 관리자 사이의 통신을 수행하여 상기 마이그레이션의 시작 시점(MIGCB_MIGRATION_BEFORE)과 종료 시점(MIGCB_MIGRATION_AFTER)을 상기 경로안내 관리자에 알려주는 사용자 콜백함수와,
상기 마이그레이션의 시작 시점과 종료 시점에 상기 경로안내 관리자의 호출에 의해 상기 코어 모듈이 재부팅되는 것과 같은 효과를 제공하는 restartupSystem 사용자 API를 더 구비하는 것을 특징으로 하는 주행 중 내비게이션 데이터의 부분 업데이트 장치.A database file stored on a storage medium;
A log file stored on a storage medium;
A core module for supporting recording or accessing data in the database file and the log file;
An update manager for storing update data for the database file in the log file using the core module; And
And a route guidance manager for accessing data stored in the database file using the core module and providing a route guidance service,
Wherein the core module performs log file creation and log recording at the request of the update manager and is activated only during the migration from the log file to the database file, And a recovery manager for reading the data from the recovery manager,
The core module
(MIGCB_MIGRATION_BEFORE) and an end point (MIGCB_MIGRATION_AFTER) to the route guidance manager by performing communication between the route guidance manager and the route guidance manager,
Further comprising a restartupSystem user API for providing the same effect that the core module is rebooted by a call of the route guide manager at a start time and an end time of the migration.
상기 업데이트 관리자가 구동된 후 상기 사용자 콜백함수를 등록하는 setUserCallbackFunc 사용자 API를 더 구비하는 것을 특징으로 하는 주행 중 내비게이션 데이터의 부분 업데이트 장치.3. The apparatus of claim 2, wherein the core module
Further comprising a setUserCallbackFunc user API for registering the user callback function after the update manager is activated.
업데이트 관리자가 구동되어 상기 데이터베이스 파일에 대한 업데이트 연산을 수행하여 상기 코어 모듈의 회복 관리자를 활성화하고, 상기 회복 관리자가 로그 파일을 생성하고 생성된 로그 파일에 로그를 기록하는 단계;
상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 시작되기 전에 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_BEFORE'로의 상태 전환을 요청하는 단계;
경로안내 관리자의 회복 관리자가 활성화되어 변경된 데이터는 상기 로그 파일에서 읽어오는 단계;
상기 로그 파일에서 상기 데이터베이스 파일로 마이그레이션이 종료된 후에 상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_AFTER'로의 상태 전환을 요청하는 단계; 및
경로안내 관리자의 회복 관리자가 비활성화되어 코어 모듈을 이용하여 데이터베이스 파일에 저장된 데이터에 직접 접근하여 경로 안내 서비스를 제공하는 단계;를 포함함을 특징으로 하는 주행 중 내비게이션 데이터의 부분 업데이트 방법.Providing a route guide service by accessing data stored in a database file using a core module by being driven by a route guide manager;
An update manager is activated to perform an update operation on the database file to activate a recovery manager of the core module, the recovery manager generates a log file and records a log in the generated log file;
The recovery manager of the update manager requests the route guidance manager to change the state to 'MIGCB_MIGRATION_BEFORE' before migration from the log file to the database file starts;
Reading the changed data from the log file by activating the recovery manager of the path guide manager;
After the migration from the log file to the database file is completed, the recovery manager of the update manager requests the path guide manager to change the state to 'MIGCB_MIGRATION_AFTER'; And
And a step of providing a route guidance service by directly accessing the data stored in the database file using the core module when the recovery manager of the route guide manager is inactivated and providing the route guidance service.
상기 업데이트 관리자의 회복 관리자가 경로안내 관리자에 'MIGCB_MIGRATION_BEFORE' 또는 'MIGCB_MIGRATION_AFTER'로의 상태 전환을 요청할 때, 상기 업데이트 관리자와 상기 경로안내 관리자 사이의 통신을 수행하는 사용자 콜백함수를 이용하는 것을 특징으로 하는 주행 중 내비게이션 데이터의 부분 업데이트 방법.5. The method of claim 4,
Wherein the update manager uses a user callback function that performs communication between the update manager and the route guidance manager when the recovery manager of the update manager requests the route guidance manager to switch the state to 'MIGCB_MIGRATION_BEFORE' or 'MIGCB_MIGRATION_AFTER' A method for partially updating navigation data.
상기 업데이트 관리자는 구동된 후 코어 모듈에 구성된 setUserCallbackFunc 사용자 API를 사용하여 상기 사용자 콜백함수를 코어 모듈에 등록하는 것을 특징으로 하는 주행 중 내비게이션 데이터의 부분 업데이트 방법.6. The method of claim 5,
Wherein the update manager registers the user callback function in the core module using the setUserCallbackFunc user API configured in the core module after being driven.
상기 경로안내 관리자가 'MIGCB_MIGRATION_BEFORE' 또는 'MIGCB_MIGRATION_AFTER'로 상태 전환되면 restartupSystem 사용자 API를 호출하여 상기 코어 모듈이 재부팅되는 것과 같은 효과를 제공하는 것을 특징으로 하는 주행 중 내비게이션 데이터의 부분 업데이트 방법.5. The method of claim 4,
If the path guide manager switches to 'MIGCB_MIGRATION_BEFORE' or 'MIGCB_MIGRATION_AFTER', the restartupSystem user API is called to provide the same effect as rebooting the core module.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP20130194387 EP2863180A1 (en) | 2013-10-21 | 2013-11-26 | Apparatus and method for partially updating a navigation data while driving |
CN201310611135.7A CN104572793A (en) | 2013-10-21 | 2013-11-26 | Apparatus for partial updating of navigation data in driving and method thereof |
JP2013244506A JP2015081918A (en) | 2013-10-21 | 2013-11-27 | Device and method for partially updating navigation data during travel |
US14/091,617 US20150112591A1 (en) | 2013-10-21 | 2013-11-27 | Apparatus and method for partially updating a navigation data while driving |
PCT/KR2013/010923 WO2015060493A1 (en) | 2013-10-21 | 2013-11-28 | Apparatus and method for incrementally updating navigation data while driving |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130125185 | 2013-10-21 | ||
KR20130125185 | 2013-10-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150045865A KR20150045865A (en) | 2015-04-29 |
KR101519020B1 true KR101519020B1 (en) | 2015-05-12 |
Family
ID=53037694
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130133039A KR101519020B1 (en) | 2013-10-21 | 2013-11-04 | Appatus for partial-updating navigation data in driving and method thereof |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR101519020B1 (en) |
CN (1) | CN104572793A (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200001188A (en) | 2018-06-27 | 2020-01-06 | 현대자동차주식회사 | Dialogue system, Vehicle and method for controlling the vehicle |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100826553B1 (en) | 2006-12-22 | 2008-04-30 | 에스케이에너지 주식회사 | Car navigation system, map data update system and method thereof and data saving device thereof |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080249705A1 (en) * | 2007-04-04 | 2008-10-09 | Hitoki Matsuda | Realtime delivery system for updated map data |
JP5327497B2 (en) * | 2007-07-11 | 2013-10-30 | 日立オートモティブシステムズ株式会社 | Map data distribution system and map data update method |
US8775074B2 (en) * | 2009-01-30 | 2014-07-08 | Navteq B.V. | Method and system for refreshing location code data |
-
2013
- 2013-11-04 KR KR1020130133039A patent/KR101519020B1/en active IP Right Grant
- 2013-11-26 CN CN201310611135.7A patent/CN104572793A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100826553B1 (en) | 2006-12-22 | 2008-04-30 | 에스케이에너지 주식회사 | Car navigation system, map data update system and method thereof and data saving device thereof |
Also Published As
Publication number | Publication date |
---|---|
CN104572793A (en) | 2015-04-29 |
KR20150045865A (en) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10831779B2 (en) | Seamless data migration across databases | |
CN101650660B (en) | Booting a computer system from central storage | |
US9003149B2 (en) | Transparent file system migration to a new physical location | |
JP5481308B2 (en) | Data control apparatus and program | |
CN104885055B (en) | Application data synchronization method and device | |
US9298377B2 (en) | Techniques for reducing read I/O latency in virtual machines | |
US7904426B2 (en) | System and method for identifying a removable storage device | |
US8639973B2 (en) | System reset | |
US9342254B2 (en) | Sector-based write filtering with selective file and registry exclusions | |
KR101650424B1 (en) | Operation transfer from an origin virtual machine to a destination virtual machine | |
US10983913B2 (en) | Securing exclusive access to a copy of a metadata track via a process while the metadata track is held in a shared mode by another process | |
US11327643B2 (en) | Rule-based user in interface layout rearrangement | |
CN111273872A (en) | Data migration method, device, equipment and medium | |
CN104104705B (en) | The cut-in method and equipment of distributed memory system | |
CN112000426B (en) | Data processing method and device | |
US20130007184A1 (en) | Message oriented middleware with integrated rules engine | |
EP2863180A1 (en) | Apparatus and method for partially updating a navigation data while driving | |
KR101519020B1 (en) | Appatus for partial-updating navigation data in driving and method thereof | |
CN111031126B (en) | Cluster cache sharing method, system, equipment and storage medium | |
WO2022151856A1 (en) | Online takeover method and system for heterogeneous storage volumes, device, and medium | |
KR20070028362A (en) | Methods, systems, and computer programs for storing device information | |
US11200253B2 (en) | Providing instant and distributed access to a source blob via copy-on-read blobs and link blobs | |
CN103473091A (en) | Method and system for software migration and installation for computing equipment | |
CN112433669A (en) | Method, system, equipment and medium for online migration of distributed storage volume | |
CN117573027A (en) | Data processing method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180504 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190702 Year of fee payment: 5 |