WO2015060494A1 - 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법 - Google Patents

내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법 Download PDF

Info

Publication number
WO2015060494A1
WO2015060494A1 PCT/KR2013/010924 KR2013010924W WO2015060494A1 WO 2015060494 A1 WO2015060494 A1 WO 2015060494A1 KR 2013010924 W KR2013010924 W KR 2013010924W WO 2015060494 A1 WO2015060494 A1 WO 2015060494A1
Authority
WO
WIPO (PCT)
Prior art keywords
network data
rid
update
hash
key
Prior art date
Application number
PCT/KR2013/010924
Other languages
English (en)
French (fr)
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
Priority claimed from KR20130133040A external-priority patent/KR20150045866A/ko
Application filed by 주식회사 리얼타임테크 filed Critical 주식회사 리얼타임테크
Publication of WO2015060494A1 publication Critical patent/WO2015060494A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00

Definitions

  • the present invention relates to an apparatus and a method for automatically updating a record ID during a long-transaction operation on network data used in navigation.
  • Navigation data is classified into three types.
  • the first is network data for route guidance, which is the core of navigation, and the second is background data such as buildings, bridges, and roads, and the third is point of interest (POI) data for destination search.
  • the first described network data is composed of node and link data and various attribute data.
  • Node tables NODE_LV1, NODE_LV2, NODE_LV3, NODE_LV4.
  • LV1 is the highest (lowest) level and LV4 is the highest level.
  • LV1 there will be data about the small alleys that exist in the real world, and in LV4 there will probably only be big data like the Gyeongbu Expressway. That is, the higher level is a subset of that lower level.
  • the network data of the navigation has one or more ID values of NODE_ID and LINK_ID in each table, and NODE_ID and LINK_ID are unique identifiers in the network data. Each of these IDs is associated with a record ID (RID), which allows you to access the record very quickly. If NODE_ID and LINK_ID are inserted / modified / deleted, the corresponding RID should be updated through buildConnectionLink.
  • NODE_ID and LINK_ID are inserted / modified / deleted, the corresponding RID should be updated through buildConnectionLink.
  • RID Record ID update method of table unit has been used after long-transaction operation on navigation network data, which is very slow because access to all records in table is performed.
  • Patent Document 1 Korean Patent Publication No. 10-2009-0056061 (2009.06.03)
  • the present invention has been made to solve the above problems, and by reducing the log capacity and file read / write by generating only the minimum file I / O by accessing only the records that have been changed by updating the RID by record unit on a hash basis
  • An object of the present invention is to provide an apparatus and method for automatically updating RID of navigation network data, which enables efficient processing such as speed improvement.
  • the automatic record ID update apparatus for navigation network data comprises a hash; A payload parser for registering key values detected as network data by a key hashing algorithm into the hash while parsing payload data; An update processor for performing an update by executing a query based on the data parsed by the payload parser; And an RID update processor which performs RID update by sequentially patching all key values registered in the hash before the update processor processes the commit command.
  • the key hashing algorithm is characterized in that it detects a key value to be resolved based on RID-related schema information of the navigation network data.
  • the hash is stored in the node table and the link table for each level for each level of network data, and stores key values, except for duplicate storage of the same key value. It is characterized by.
  • the RID update processor may perform RID update by using a buildConnectionLink operation provided by a core module.
  • the automatic record ID updating method for navigation network data registers the key value detected as network data by the key hashing algorithm in the hash while the payload parser parses the payload data.
  • An update processor executing a query by the data parsed by the payload parser to perform the update;
  • RID update processor Step of sequentially patching all the key values registered in the hash to perform the RID update; And terminating a transaction by processing the commit command by the update processor.
  • the key hashing algorithm is characterized in that it detects a key value to be resolved based on RID-related schema information for the navigation network data.
  • the hash is stored in the node table and the link table for each level for each level of network data, and stores key values, but excludes duplicate storage of the same key value. It is characterized by.
  • the RID update processor may perform RID update using a buildConnectionLink operation provided by a core module.
  • the computer-readable recording medium comprises the steps of registering a key value detected as network data by a key hashing algorithm in a hash while the payload parser parses the payload data. ;
  • An update processor executing a query by the data parsed by the payload parser to perform the update;
  • RID update processor Step of sequentially patching all the key values registered in the hash to perform the RID update; And terminating the transaction by processing the commit command by the update processor.
  • the program for recording the program automatically updating the record ID for the configured navigation network data is included.
  • the RID can be automatically updated during a long-transaction operation on the network data of the navigation, and the RID can be updated in units of records by hashing a key for identifying a record in a hash data structure. Also, due to the nature of the hash data structure, duplicate keys are removed to reduce the number of change operations, thereby minimizing file I / O, ensuring optimal performance, and reducing the log size and extending the life of flash memory. .
  • FIG. 1 is a block diagram illustrating an overall configuration of an apparatus for automatically updating a record ID (RID) for navigation network data according to the present invention.
  • RID record ID
  • FIG. 2 is an exemplary diagram of a network data-based RID schema used in the present invention.
  • FIG. 5 is a diagram exemplarily illustrating a situation in which a new length is added to existing network data.
  • FIG. 6 is a diagram for describing an operation of a payload parser in the exemplary situation of FIG. 5.
  • FIG. 7 is a diagram for describing an operation of an RID update processor in the exemplary situation of FIG. 5.
  • a preferred embodiment of an apparatus for automatically updating record ID (RID) for navigation network data includes a payload parser 12, an update processor 14, a hash 16, and an RID update processor ( 18) is implemented as a synchronization manager (10) configured to include.
  • the synchronization manager 10 updates the database 30 by performing a long-transaction query with the support of the core module 20.
  • the database 30 is a passive component and is stored in a storage medium separate from the main memory.
  • the storage medium is preferably implemented as a flash memory, but is not necessarily limited thereto.
  • the synchronization manager 10 and the core module 20 are active components that can be implemented as a complex of various hardware and software constituting a navigation device provided in a mobile environment, respectively. Defined by feature.
  • the core module 20 is a type of database management system (DBMS) that supports recording or accessing data to the database 30.
  • DBMS database management system
  • the payload parser 12 registers the key value detected as network data by the key hashing algorithm plugged in thereinto the hash 16 while parsing the payload data.
  • the payload is a file in the form of a binary stream in which update queries (eg, beginTransaction, insert, update, delete, commit, etc.) are normalized to a predetermined series format, and are downloaded from the update server.
  • update queries eg, beginTransaction, insert, update, delete, commit, etc.
  • the key hashing algorithm detects a key value to be hashed based on RID-related schema information about the navigation network data illustrated in FIG. 2.
  • the RID related schema information is stored in the catalog system of the core module 20.
  • the synchronization manager can find out by requesting RID schema information from the DBMS's catalog administrator.
  • the update processor 14 binds the data parsed by the payload parser 12 and executes a query to perform the update.
  • the operations of payload parser 12 and update handler 14 are repeated repeatedly until a commit command is issued.
  • the update processor 14 performs a commit command only after the RID update processor 18 completes the RID update to terminate the long-transaction.
  • the hash 16 is a data structure that manages on a memory the key value detected by the key hashing algorithm.
  • the hash 16 stores key values by dividing the node table and the link table for each level for each level of network data, and is configured to exclude duplicate storage of the same key value.
  • the RID update processor 18 performs RID update by using the buildConnectionLink operation provided by the core module 20 while sequentially patching all key values registered in the hash 16 before the update processor 14 processes the commit command. .
  • FIG. 2 is an exemplary diagram of a network data-based RID schema.
  • FIG. 2 there are eight tables, LINK_LV1-4 and NODE_LV1-4, and attribute data are excluded from the exemplary diagram.
  • the link and node tables have a mutual RID reference relationship for each level (the reference relationship is indicated by a dotted line).
  • each link and node table has a RID reference relationship to a higher level (the reference relationship is indicated by a solid line).
  • every node ID (column name is NodeId or UpNodeId for all tables) and all link IDs (column name is LinkId or UpLinkId for all tables) are unique identifiers in the network data.
  • Network data is a structure in which organic data is strongly and strongly coupled to each other, and only one data is not changed. That is, for example, when the node ID column of the link table is changed, the data of the node table corresponding thereto also changes. This is a characteristic of network data. In addition, network data with all or nothing characteristics must be bundled into one transaction and updated.
  • FIG 3 illustrates the operation of the key hash algorithm according to the present invention in more detail.
  • the operation of the key hash algorithm begins with parsing the table name first.
  • the key hash algorithm temporarily stores the column name and position information of the corresponding value. If a result of comparing with the RID schema as illustrated in FIG. 2 using the temporarily stored column name is found to be a hash insertion target, a key value is registered in the hash based on the algorithm illustrated in FIG. 3. At this time, the value registered as a duplicate of the characteristic of the hash 16 is deduplicated and only one is maintained / managed.
  • FIG 4 illustrates in more detail the operation of the RID update processor 18 according to the present invention.
  • the buildConnectionLink operation used by the RID update processor 18 to perform the RID update is an update operation on the RID column when viewed inside the core module 20. Therefore, the buildConnectionLink operation must be performed before the commit command is processed.
  • a key value for each table is registered in each link or node hash data structure 16 by all insert / update / delete operations performed before the commit command.
  • the RID update processor 18 When the payload parser 12 parses a commit instruction, the RID update processor 18 performs a RID update by patching key values in the HASH data structure 16 before performing the commit operation. After all key values in the HASH data structure 16 are patched and all RID update operations are completed, the update handler 14 performs a commit operation to complete the update of the network data.
  • FIG. 5 illustrates that a new length is added from the existing network data shown on the left side, so that one link and one node are added at level 2 and two links and two nodes are added at level 1, as shown in the network data shown on the right side.
  • a new length is added from the existing network data shown on the left side, so that one link and one node are added at level 2 and two links and two nodes are added at level 1, as shown in the network data shown on the right side.
  • a payload consisting of the following update query is provided from the update server.
  • FIG. 6 illustrates a process in which the payload parser 12 registers the key value detected as network data by the key hashing algorithm in the hash 16 while parsing the illustrated payload data.
  • the key value detected while parsing the query from left to right is stored in a hash separated for the node table and the link table for each level, thereby eliminating duplicate storage of the same key value.
  • RID update processor 18 performs RID update by sequentially patching key values registered in the hash 16.
  • the UpLinkId and NodeId columns are related to the UpLinkRid and NodeRid RID columns.
  • update is performed by inserting the retrieved RID value into the UpLinkRid and NodeRid RID columns.
  • the above-described embodiments of the present invention may 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, DVD, etc.), an electrical recording medium (e.g., flash memory, memory stick, etc.) And record carriers such as carrier waves (eg, transmission over the Internet).
  • the RID can be automatically updated during the long-transaction operation of the network data of the navigation, the RID can be updated by the record unit, and the weight of the log capacity and the flash memory can be reduced by reducing the number of change operations.
  • the effect of extending the lifespan can be achieved, which can be activated in the vehicle navigation industry.

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 내비게이션에서 사용되는 네트워크 데이터에 대한 Long-Transaction 연산 시 레코드 아이디를 자동 업데이트하는 장치 및 그 방법에 관한 것으로, 본 발명에 의한 장치는, 해쉬; 페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로검출된 키값을 해쉬에 등록하는 페이로드 파서; 페이로드 파서에 의해 파싱된 데이터에 의한 질의를 실행하여 업데이트를 수행하는 업데이트 처리자; 및 업데이트 처리자가 커밋 명령을 처리하기 전에 해쉬에 등록된 모든 키값들을 차례로 패치하여 RID 업데이트를 수행하는 RID 업데이트 처리자;를 포함하여 구성된다.

Description

내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법
본 발명은 내비게이션에서 사용되는 네트워크 데이터에 대한 Long-Transaction 연산 시 레코드 아이디를 자동 업데이트하는 장치 및 그 방법에 관한 것이다.
내비게이션의 데이터는 크게 3종류로 분류된다. 첫째는 내비게이션의 핵심인 경로 안내를 위한 네트워크 데이터이며, 둘째는 건물, 다리, 도로 등의 배경 데이터이며, 셋째는 목적지 검색을 위한 POI(Point of Interest) 데이터이다. 이 중에서 첫번째로 설명한 네트워크 데이터는 노드 및 링크 데이터와 각종 속성데이터로 구성 되어진다.
내비게이션의 네트워크 데이터는 그 특성상 레벨이라는 단위로 세분화 되어있다. 만약 1~4레벨을 사용한다고 하면, 아마도 다음과 같은 테이블들을 가질 것이다.
- 노드 테이블들 : NODE_LV1, NODE_LV2, NODE_LV3, NODE_LV4.
- 링크 테이블들 : LINK_LV1, LINK_LV2, LINK_LV3, LINK_LV4.
여기서 LV1은 최상세(최하위) 레벨이며, LV4는 최상위 레벨이다. LV1에는 현실 세계에 존재하는 작은 골목길에 대한 데이터도 존재할 것이며, LV4에는 아마도 경부고속도로와 같이 굵직한 데이터들만 존재할 것이다. 즉, 상위레벨은 그 하위레벨에 대한 서브셋이다.
내비게이션의 네트워크 데이터는 각각의 테이블에서 NODE_ID와 LINK_ID 중 한 개 이상의 ID값들을 가지며, NODE_ID와 LINK_ID는 네트워크 데이터 내에서 유일한 식별자이다. 이 ID값들은 각각 RID(레코드 ID)와 연결되어 있으며, 연결된 RID를 이용하여 해당 레코드에 아주 빠르게 접근을 할 수 있다. 만약 NODE_ID 및 LINK_ID가 삽입/변경/삭제가 일어나면 해당하는 RID값은 buildConnectionLink를 통해서 갱신해 주어야 한다.
종래에는 내비게이션 네트워크 데이터에 대한 Long-Transaction 연산 후 테이블 단위의 RID(레코드 ID) 업데이트 방법을 이용해 왔는데, 이는 테이블 내의 모든 레코드들에 대한 접근이 이루어지는 방식이므로 매우 느리다는 문제점이 있다.
다시 말하면, 테이블 단위의 RID 업데이트 방법은 테이블 내의 모든 레코드들을 접근하므로 파일 I/O 횟수가 빈번하여 성능이 저하되고, 로그 용량이 비대해진다는 문제점이 있다. 특히 시스템 차원에서 파일 캐싱 기능이 없는 모바일 단말에서는 더욱 성능이 저하되는 문제점이 있다.
선행기술문헌
(특허문헌 1) 한국공개특허 10-2009-0056061호(2009.06.03)
본 발명은 상기의 문제점을 해결하기 위하여 안출된 것으로, 해쉬 기반으로 레코드 단위로 RID를 업데이트 함으로써 변경이 이루어진 해당 레코드들만을 접근하여 최소한의 파일 I/O만을 발생시킴으로써 로그 용량 경량화 및 파일 읽기/쓰기 속도 개선 등의 효율적인 처리를 가능하게 하는 내비게이션 네트워크 데이터에 대한 RID 자동 업데이트 장치 및 그 방법을 제공함을 그 목적으로 한다.
상기의 목적을 달성하기 위하여, 본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치는, 해쉬; 페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로검출된 키값을 상기 해쉬에 등록하는 페이로드 파서; 상기 페이로드 파서에 의해 파싱된 데이터에 의한 질의를 실행하여 업데이트를 수행하는 업데이트 처리자; 및 상기 업데이트 처리자가 커밋 명령을 처리하기 전에 상기 해쉬에 등록된 모든 키값들을 차례로 패치하여 RID 업데이트를 수행하는 RID 업데이트 처리자;를 포함하여 구성된다.
본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치에 있어서, 상기 키 해슁 알고리즘은 내비게이션 네트워크 데이터에 대한 RID 관련 스키마 정보를 토대로 해슁해야 할 키값을 검출하는 것을 특징으로 한다.
본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치에 있어서, 상기 해쉬는 네트워크 데이터의 각 레벨별로 노드 테이블 및 각 레벨별 링크 테이블에 대하여 구분되어 키값을 저장하되, 동일한 키값의 중복 저장이 배제되는 것을 특징으로 한다.
본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치에 있어서, 상기 RID 업데이트 처리자는 코어 모듈에서 제공하는 buildConnectionLink 연산을 사용하여 RID 업데이트를 수행하는 것을 특징으로 한다.
상기의 다른 목적을 달성하기 위하여, 본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법은 페이로드 파서가 페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로 검출된 키값을 해쉬에 등록하는 단계; 업데이트 처리자가 상기 페이로드 파서에 의해 파싱된 데이터에 의한 질의를 실행하여 업데이트를 수행하는 단계; RID 업데이트 처리자 상기 해쉬에 등록된 모든 키값들을 차례로 패치하여 RID 업데이트를 수행하는 단계; 및 상기 업데이트 처리자가 커밋 명령을 처리하여 트랜잭션을 종료하는 단계;를 포함하여 구성된다.
본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법에 있어서, 상기 키 해슁 알고리즘은 내비게이션 네트워크 데이터에 대한 RID 관련 스키마 정보를 토대로 해슁해야 할 키값을 검출하는 것을 특징으로 한다.
본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법에 있어서, 상기 해쉬는 네트워크 데이터의 각 레벨별로 노드 테이블 및 각 레벨별 링크 테이블에 대하여 구분되어 키값을 저장하되, 동일한 키값의 중복 저장이 배제되는 것을 특징으로 한다.
본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법에 있어서, 상기 RID 업데이트 처리자는 코어 모듈에서 제공하는 buildConnectionLink 연산을 사용하여 RID 업데이트를 수행하는 것을 특징으로 한다.
상기의 다른 목적을 달성하기 위하여, 본 발명에 의한 컴퓨터가 읽을 수 있는 기록매체는, 페이로드 파서가 페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로 검출된 키값을 해쉬에 등록하는 단계; 업데이트 처리자가 상기 페이로드 파서에 의해 파싱된 데이터에 의한 질의를 실행하여 업데이트를 수행하는 단계; RID 업데이트 처리자 상기 해쉬에 등록된 모든 키값들을 차례로 패치하여 RID 업데이트를 수행하는 단계; 및 상기 업데이트 처리자가 커밋 명령을 처리하여 트랜잭션을 종료하는 단계;를 포함하여 구성된 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법이 구현된 프로그램을 기록한다.
본 발명에 의하면, 내비게이션의 네트워크 데이터에 대한 Long-Transaction 연산 시 RID를 자동으로 갱신할 수 있으며, 레코드를 식별할 수 있는 키를 해쉬 자료구조에 해슁함으로써 레코드 단위로 RID를 업데이트 할 수 있게 하였으며, 또한 해쉬 자료구조의 특성상 중복 키가 제거됨으로써 변경 연산의 횟수를 줄임으로써 파일 I/O를 최소화 하여 최적의 성능을 보장하고, 로그 용량에 대한 경량화 및 플래쉬 메모리의 수명이 연장되는 효과를 얻을 수 있다.
도 1은 본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디(RID) 자동 업데이트 장치의 전체적인 구성을 도시한 것이고,
도 2는 본 발명에서 사용되는 네트워크 데이터 기반의 RID 스키마 예시도이고,
도 3은 본 발명에서 사용되는 키 해슁 알고리즘의 동작을 설명하기 위한 도면이고,
도 4는 본 발명에서 사용되는 RID 업데이트 처리자의 동작을 설명하기 위한 도면이고,
도 5는 기존의 네트워크 데이터에서 새 길이 추가되는 상황을 예시적으로 도시한 도면이고,
도 6은 도 5의 예시적인 상황에서 페이로드 파서의 동작을 설명하기 위한 도면이고,
도 7은 도 5의 예시적인 상황에서 RID 업데이트 처리자의 동작을 설명하기 위한 도면이다.
이하에서는 첨부도면을 참조하여 본 발명에 대해 상세히 설명한다.
도 1에 의하면, 본 발명에 의한 내비게이션 네트워크 데이터에 대한 레코드 아이디(RID) 자동 업데이트 장치의 바람직한 일 실시예는 페이로드 파서(12), 업데이트 처리자(14), 해쉬(16) 및 RID 업데이트 처리자(18)을 포함하여 구성되는 동기화 관리자(10)로 구현된다. 동기화 관리자(10)는 코어 모듈(20)의 지원을 받아 Long-Transaction의 질의를 수행함으로써 데이터베이스(30)에 대한 업데이트를 수행한다.
본 발명에서 데이터베이스(30)는 수동적인 구성요소로서, 메인 메모리와는 별개의 저장 매체에 저장된다. 여기서 저장 매체는 플래시 메모리로 구현되는 것이 바람직하지만, 반드시 이에 한정되는 것은 아니다.
동기화 관리자(10)와 코어 모듈(20)은 각각 모바일 환경으로 제공되는 내비게이션 장치를 구성하는 각종 하드웨어 및 소프트웨어의 복합체로 구현될 수 있는 능동적인 구성요소로서, 이하에서 각 구성요소가 제공하는 기능적인 특징에 의해 정의된다.
코어 모듈(20)은 데이터베이스(30)에 데이터를 기록하거나 접근하도록 지원하는 일종의 데이터베이스 관리 시스템(Data Base Management System : DBMS)이다.
페이로드 파서(12)는 페이로드 데이터를 파싱하면서, 내부에 플러그 인 되어 있는 키 해슁 알고리즘에 의해 네트워크 데이터로 검출된 키값을 해쉬(16)에 등록한다.
여기서, 페이로드는 업데이트 질의(예를 들어, beginTransaction, insert, update, delete, commit 등)들을 미리 정해진 일련의 포맷으로 정규화한 바이너리 스트림 형태의 파일로, 업데이트 서버로부터 다운받는다. 그리고, 키 해슁 알고리즘은 도 2에 예시적으로 도시된 내비게이션 네트워크 데이터에 대한 RID 관련 스키마 정보를 토대로 해슁해야 할 키값을 검출한다. 여기서, RID 관련 스키마 정보는 코어 모듈(20)의 카탈로그 시스템에 저장되어 있다.
즉, 동기화 관리자는 DBMS의 카탈로그 관리자에게 RID 스키마 정보를 요청하면 알수 있습니다.
업데이트 처리자(14)는 페이로드 파서(12)에 의해 파싱된 데이터를 바인딩하고 질의를 실행하여 업데이트를 수행한다. 페이로드 파서(12)와 업데이트 처리자(14)의 동작은 커밋 명령이 들어오기 전까지 계속하여 반복된다. 또한, 업데이트 처리자(14)는 RID 업데이트 처리자(18)가 RID 업데이트를 완료한 후에야 비로소 커밋 명령을 수행하여 Long-Transaction을 종료한다.
해쉬(16)는 키 해슁 알고리즘에 의해 검출된 키값을 메모리 상에 관리하는 자료구조이다. 본 발명에서 해쉬(16)는 네트워크 데이터의 각 레벨별로 노드 테이블 및 각 레벨별 링크 테이블에 대하여 구분되어 키값을 저장하되, 동일한 키값의 중복 저장이 배제되도록 구성된다.
RID 업데이트 처리자(18)는 업데이트 처리자(14)가 커밋 명령을 처리하기 전에 해쉬(16)에 등록된 모든 키값들을 차례로 패치하면서 코어 모듈(20)에서 제공하는 buildConnectionLink 연산을 사용하여 RID 업데이트를 수행한다.
도 2는 네트워크 데이터 기반의 RID 스키마의 예시도로서, 도 2의 예시도에는 LINK_LV1~4, NODE_LV1~4의 총 8개의 테이블을 가지며, 속성 데이터는 예시도에서 제외하였다.
도 2에 의하면, 각 레벨별로 링크와 노드 테이블은 상호 RID 참조 관계를 가진다(참조 관계가 점선으로 표시됨). 또한, 각 링크와 노드 테이블은 상위 레벨에 대한 RID 참조 관계를 가진다(참조 관계가 실선으로 표시됨).
또한, 모든 노드ID(모든 테이블에 대해서 컬럼명이 NodeId 또는 UpNodeId인것)와 모든 링크ID(모든 테이블에 대해서 컬럼명이 LinkId 또는 UpLinkId인 것)는 네트워크 데이터 내에서 유일한 식별자이다.
네트워크 데이터는 서로 유기적으로 강하게 결합되어 있는 구조로서, 어느 한쪽의 데이터만 변경이 일어나지는 않는다. 즉, 예로써 링크테이블의 노드ID 컬럼이 변경되면, 그에 따르는 노드테이블의 데이터 또한 변경이 반드시 일어난다. 이것은 네트워크 데이터가 가지는 특성이다. 또한, All or nothing 성격을 갖는 네트워크 데이터는 반드시 하나의 Transaction으로 묶여서 업데이트가 수행되어야만 한다.
도 3은 본 발명에 의한 키 해슁 알고리즘의 동작에 대하여 보다 상세히 설명한다.
페이로드 파서(12) 내에 플러그 인 방식으로 들어가 있는 키 해슁 알고리즘의 동작 방식은 먼저 테이블명을 파싱하는 것으로부터 시작한다.
파싱된 테이블명이 네트워크 데이터에 해당하는 테이블명이라면, 키 해슁 알고리즘은 컬럼명과 그에 해당하는 값의 위치정보를 임시 저장해 둔다. 그리고 임시 저장해 둔 컬럼명을 이용하여 도 2에 예시된 바와 같은 RID 스키마와 비교한 결과가 해쉬 삽입 대상으로 판명되면, 도 3에 예시된 알고리즘에 의거하여 해당 해쉬에 키값을 등록한다. 이 때, 해쉬(16)의 특성상 중복으로 등록한 값은 중복제거 되어 하나만 유지/관리된다.
네트워크 데이터의 특성상 위의 알고리즘으로 변경된 모든 레코드의 키값을 해쉬(16)에 등록하는 것이 가능하다.
도 4는 본 발명에 의한 RID 업데이트 처리자(18)의 동작에 대하여 보다 상세히 설명한다.
RID 업데이트 처리자(18)가 RID 업데이트를 수행하기 위하여 사용하는 buildConnectionLink 연산은 코어 모듈(20) 내부에서 보면 RID컬럼에 대한 update 연산이다. 그러므로, 반드시 커밋 명령이 처리되기 이전에 buildConnectionLink 연산이 수행되어야 한다.
먼저, 커밋 명령 이전에 수행된 모든 insert/update/delete 연산에 의해서 링크 또는 노드 해쉬자료구조(16)에는 각 레벨별로 각 테이블에 대한 키값이 등록되어 있다.
페이로드 파서(12)가 커밋 명령을 파싱하였을 때, RID 업데이트 처리자(18)는 커밋 연산을 수행하기 전에 HASH자료구조(16)에서 키값을 패치하여 RID갱신을 수행한다. HASH자료구조(16)에 있는 모든 키값을 패치하여 모든 RID갱신연산이 완료되면 비로소 업데이트 처리자(14)는 커밋 연산을 수행하여 네트워크 데이터에 대한 업데이트를 완료한다.
이하에서 도 5 내지 도 7을 참조하여, 예를 들어 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 과정을 상세히 설명한다.
도 5는 좌측에 도시된 기존의 네트워크 데이터에서 새 길이 추가됨으로써, 우측에 도시된 네트워크 데이터와 같이 레벨 2에서는 링크 1개와 노드 1개가 추가되고, 레벨 1에서는 링크 2개와 노드 2개가 추가되어야 하는 상황을 예시적으로 도시한다.
이와 같은 상황에서, 데이터베이스(30)에서 네트워크 데이터를 업데이트 하기 위해서는 다음과 같은 업데이트 질의로 구성된 페이로드가 업데이트 서버로부터 제공된다.
Begin Transaction;
Insert into LINK_LV1( 10, 10, 10 );
Insert into LINK_LV1( 11, Null, 11 );
Insert into NODE_LV1( 10, 10, 10 );
Insert into NODE_LV1( 11, Null, 11 );
Insert into LINK_LV2( 10, Null, 10 );
Insert into NODE_LV2( 10, Null, 10 );
Commit;
도 6은 페이로드 파서(12)는 예시된 페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로 검출된 키값을 해쉬(16)에 등록하는 과정을 설명한다. 왼쪽부터 오른쪽으로 질의가 파싱되면서 검출된 키값은 각 레벨별로 노드 테이블 및 각 레벨별 링크 테이블에 대하여 구분된 해쉬에 저장되면서, 동일한 키값의 중복 저장은 배제된다.
도 7은 해쉬(16)에 예시적으로 등록된 키값을 차례로 패치하여 RID 업데이트 처리자(18)가 RID 업데이트를 수행하는 과정을 설명한다.
이 때, BuildConnectionLink 연산은 다음과 같은 과정으로 수행된다.
1. 테이블에 대한 RID 스키마 정보를 카탈로그에서 가져옴
예를 들어, LINK_LV2 테이블에서는 UpLinkId, NodeId 컬럼이 UpLinkRid, NodeRid RID 컬럼과 관계가 있음을 알 수 있다.
2. 테이블에서 키값을 가지고 레코드 검색
예를 들어, LINK_LV2 테이블에서는 select * from LINK_LV2 where(LINKID=키값);
3. 가져온 레코드 내에 RID와 관련된 컬럼값을 가져옴
예를 들어, LINK_LV2 테이블에서는 UpLinkId, NodeId 컬럼값을 획득
4. 가져온 컬럼값을 이용하여 대상 테이블에서 검색한 후 RID값을 가져옴
예를 들어, LINK_LV2 테이블에서는 select RID from LINK_LV3 where(LINKID= UpLinkId값);
select RID from Node_LV2 where(NODEID= NodeId값);
5. 검색후 가져온 RID값을 테이블의 RID컬럼에 대입하여 갱신함
예를 들어, LINK_LV2 테이블에서는 UpLinkRid, NodeRid RID컬럼에 검색후 가져온 RID값을 대입하여 갱신
한편, 상술한 본 발명의 실시예는 모바일 단말기를 포함한 범용 컴퓨터에서 사용되는 매체에 기록될 수 있다. 상기 매체는 마그네틱 기록매체(예를 들면, 롬, 플로피 디스크, 하드 디스크 등), 광학적 판독매체(예를 들면, 씨디롬, 디브이디 등), 전기적 기록매체(예를 들면, 플레쉬 메모리, 메모리 스틱 등) 및 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)와 같은 기록매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
본 발명은 내비게이션의 네트워크 데이터에 대한 Long-Transaction 연산 시 RID를 자동으로 갱신할 수 있고, 레코드 단위로 RID를 업데이트 할 수 있게 하였으며, 변경 연산의 횟수를 줄임으로써 로그 용량에 대한 경량화 및 플래쉬 메모리의 수명이 연장되는 효과를 얻을 수 있어 차량용 내비게이션 산업 분야의 활성화를 도모할 수 있다.

Claims (9)

  1. 해쉬;
    페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로검출된 키값을 상기 해쉬에 등록하는 페이로드 파서;
    상기 페이로드 파서에 의해 파싱된 데이터에 의한 질의를 실행하여 업데이트를 수행하는 업데이트 처리자; 및
    상기 업데이트 처리자가 커밋 명령을 처리하기 전에 상기 해쉬에 등록된 모든 키값들을 차례로 패치하여 RID 업데이트를 수행하는 RID 업데이트 처리자;를 포함함을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치.
  2. 제1항에 있어서, 상기 키 해슁 알고리즘은
    내비게이션 네트워크 데이터에 대한 RID 관련 스키마 정보를 토대로 해슁해야 할 키값을 검출하는 것을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치.
  3. 제1항에 있어서, 상기 해쉬는
    네트워크 데이터의 각 레벨별로 노드 테이블 및 각 레벨별 링크 테이블에 대하여 구분되어 키값을 저장하되, 동일한 키값의 중복 저장이 배제되는 것을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치.
  4. 제1항에 있어서, 상기 RID 업데이트 처리자는
    코어 모듈에서 제공하는 buildConnectionLink 연산을 사용하여 RID 업데이트를 수행하는 것을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치.
  5. 페이로드 파서가 페이로드 데이터를 파싱하면서, 키 해슁 알고리즘에 의해 네트워크 데이터로 검출된 키값을 해쉬에 등록하는 단계;
    업데이트 처리자가 상기 페이로드 파서에 의해 파싱된 데이터에 의한 질의를 실행하여 업데이트를 수행하는 단계;
    RID 업데이트 처리자 상기 해쉬에 등록된 모든 키값들을 차례로 패치하여 RID 업데이트를 수행하는 단계; 및
    상기 업데이트 처리자가 커밋 명령을 처리하여 트랜잭션을 종료하는 단계;를 포함함을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법.
  6. 제5항에 있어서, 상기 키 해슁 알고리즘은
    내비게이션 네트워크 데이터에 대한 RID 관련 스키마 정보를 토대로 해슁해야 할 키값을 검출하는 것을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법.
  7. 제5항에 있어서, 상기 해쉬는
    네트워크 데이터의 각 레벨별로 노드 테이블 및 각 레벨별 링크 테이블에 대하여 구분되어 키값을 저장하되, 동일한 키값의 중복 저장이 배제되는 것을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법.
  8. 제5항에 있어서, 상기 RID 업데이트 처리자는
    코어 모듈에서 제공하는 buildConnectionLink 연산을 사용하여 RID 업데이트를 수행하는 것을 특징으로 하는 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 방법.
  9. 제5항 내지 제8항 중 어느 한 항의 방법이 구현된 프로그램을 기록한 컴퓨터가 읽을 수 있는 기록매체.
PCT/KR2013/010924 2013-10-21 2013-11-28 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법 WO2015060494A1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2013-0125187 2013-10-21
KR20130125187 2013-10-21
KR10-2013-0133040 2013-11-04
KR20130133040A KR20150045866A (ko) 2013-10-21 2013-11-04 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법

Publications (1)

Publication Number Publication Date
WO2015060494A1 true WO2015060494A1 (ko) 2015-04-30

Family

ID=52993066

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/010924 WO2015060494A1 (ko) 2013-10-21 2013-11-28 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법

Country Status (1)

Country Link
WO (1) WO2015060494A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070106297A (ko) * 2006-04-28 2007-11-01 주식회사 현대오토넷 네비게이션 프로그램 업데이트 방법
KR20090056061A (ko) * 2007-11-29 2009-06-03 한국전자통신연구원 내비게이션을 위한 모바일 데이터베이스 시스템 및 그 방법
WO2010110605A2 (ko) * 2009-03-25 2010-09-30 엘지전자 주식회사 Iptv 수신기 및 그의 컨텐트 다운로드 방법
KR20110104475A (ko) * 2009-01-14 2011-09-22 톰톰 인터내셔날 비.브이. 네비게이션 장치, 위치 결정 시스템 및 위치 결정 방법
KR20130046746A (ko) * 2011-10-28 2013-05-08 (주)네오위즈게임즈 해시 데이터 생성 방법, 해시 데이터 비교 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070106297A (ko) * 2006-04-28 2007-11-01 주식회사 현대오토넷 네비게이션 프로그램 업데이트 방법
KR20090056061A (ko) * 2007-11-29 2009-06-03 한국전자통신연구원 내비게이션을 위한 모바일 데이터베이스 시스템 및 그 방법
KR20110104475A (ko) * 2009-01-14 2011-09-22 톰톰 인터내셔날 비.브이. 네비게이션 장치, 위치 결정 시스템 및 위치 결정 방법
WO2010110605A2 (ko) * 2009-03-25 2010-09-30 엘지전자 주식회사 Iptv 수신기 및 그의 컨텐트 다운로드 방법
KR20130046746A (ko) * 2011-10-28 2013-05-08 (주)네오위즈게임즈 해시 데이터 생성 방법, 해시 데이터 비교 시스템 및 방법

Similar Documents

Publication Publication Date Title
WO2016010224A1 (en) Maintaining point of interest data using wireless access points
US7801848B2 (en) Redistributing a distributed database
WO2014189190A1 (ko) 데이터 부재 태깅 기반의 정보 검색 시스템 및 방법
WO2010093108A1 (ko) 고속 저장 장치를 캐쉬로 사용하는 스토리지 시스템
WO2017128362A1 (zh) 基于大数据的搜索方法及系统
WO2010123168A1 (ko) 데이터베이스 관리 방법 및 시스템
WO2021107211A1 (ko) 인메모리 데이터베이스 기반의 시계열 데이터 관리시스템
WO2018182060A1 (ko) 관계형 데이터베이스 기반의 텍스트 로그데이터 저장 및 검색 방법
WO2019054613A1 (ko) 바이너리 파일에 기초하여 오픈소스 소프트웨어 패키지를 식별하는 방법 및 시스템
WO2016117739A1 (ko) 인-메모리 데이터베이스 기반의 데이터 관리 시스템 및 그 방법
WO2024122871A1 (ko) 클러스터 파일시스템의 캐시 일관성 유지방법
WO2015068929A1 (ko) 컨텐츠 중심 네트워크에서 패킷 특성을 고려하는 노드의 동작 방법 및 노드
WO2015060494A1 (ko) 내비게이션 네트워크 데이터에 대한 레코드 아이디 자동 업데이트 장치 및 그 방법
WO2017146348A1 (ko) 위치 기반 빅데이터 시스템
CN116594562A (zh) 一种数据处理方法及装置、设备、存储介质
WO2012060526A1 (ko) 질의에 따른 연관정보 제공 장치 및 방법
WO2010093084A1 (ko) 분산 스페이스를 이용하여 분산 프로그래밍 환경을 제공하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
JPH03174653A (ja) キーワード管理方法およびその装置
WO2022097891A1 (ko) 동일 구조의 데이터를 추출하는 방법 및 그를 이용한 장치
WO2015178554A1 (ko) 압축 방식을 이용한 데이터 소스 관리 장치 및 방법
WO2015060493A1 (ko) 주행 중 내비게이션 데이터의 부분 업데이트 장치 및 방법
WO2014098337A1 (ko) 유해 사이트 수집 장치 및 방법
WO2012030027A1 (ko) 멀티 코어 프로세서를 기반으로 하는 문자열 매칭 장치 및 그것의 문자열 매칭 방법
WO2023195697A1 (ko) 고속 패킷 검색 방법 및 장치
JPH1040255A (ja) ハッシュ表管理装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13895962

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13895962

Country of ref document: EP

Kind code of ref document: A1