CN102607576B - 一种导航电子地图的差分数据产生方法及装置 - Google Patents

一种导航电子地图的差分数据产生方法及装置 Download PDF

Info

Publication number
CN102607576B
CN102607576B CN201110027060.9A CN201110027060A CN102607576B CN 102607576 B CN102607576 B CN 102607576B CN 201110027060 A CN201110027060 A CN 201110027060A CN 102607576 B CN102607576 B CN 102607576B
Authority
CN
China
Prior art keywords
record
permanent
hash table
differential data
file
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201110027060.9A
Other languages
English (en)
Other versions
CN102607576A (zh
Inventor
高剑
王乐乐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Navinfo Co Ltd
Original Assignee
Navinfo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Navinfo Co Ltd filed Critical Navinfo Co Ltd
Priority to CN201110027060.9A priority Critical patent/CN102607576B/zh
Publication of CN102607576A publication Critical patent/CN102607576A/zh
Application granted granted Critical
Publication of CN102607576B publication Critical patent/CN102607576B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种导航电子地图的差分数据产生方法及装置,方法包括:遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;遍历更新版地图文件的所有记录,利用所述哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录。本发明不需依赖数据生产时为记录添加永久ID,就能够实现对导航电子地图的差分数据的抽取。

Description

一种导航电子地图的差分数据产生方法及装置
技术领域
本发明涉及卫星导航领域,特别涉及一种导航电子地图的差分数据产生方法及装置。
背景技术
现实世界中的地理要素存在不断地变化和更新,为了保证地图的准确性和现势性,导航电子地图业界组织了大量的人力物力进行了导航电子地图增量更新方面的研究和实践,然而不管采用什么样的增量更新方案,对于差分数据的抽取都是一个必不可少的环节。目前主流技术对于差分数据的抽取主要依赖于地理要素对象的永久ID(Permanent ID,PID),该地理要素对象的永久ID是在数据生产时添加。
图1为现有技术中导航电子地图的差分数据产生方法示意图,参照图1,该技术首先对原始数据进行加工,给数据记录设置静态PID,在更新版本的加工中,根据实地采集的数据,对新增的数据生成新PID,并设置增加标志;对于变更的数据,修改完包括坐标在内的属性后,设置变更标志;对于需要删除的记录,则设置删除标记;最后生成相应的更新对象列表。
从以上描述可知,这种方案的特点为:
如果基准版数据本来有PID,则不需要重新加工,否则需要对基准版数据记录设置静态PID;
需要对更新版数据中的记录设置静态PID;
原始数据和差分数据中需要设置“增加”(ADD)、“变更”(UPD)和“删除”(DEL)标记;
基准版数据所有的记录默认都是ADD操作;
为方便后续操作,往往需要生成更新对象的PID列表。
这种方案的缺点为:
需要加工原始数据,对原始数据设置静态PID,这就需要变更生产作业流程,增加管理成本;
由于需要对原始数据进行加工,提高了生产成本;
对于原始积累的成品数据存在着再加工或废弃的可能;
对于那些在原始数据中不存在,需要在数据编译时经过一定逻辑运算得到的数据,处理起来比较复杂,必须通过修改编译流程才能为其添加PID,举例如下:
图2示意了弧段、路链与道路名称的关系,在有些物理存储格式(PhysicalStorage Format,PSF)如四维图新的NI-PSF中,为了尽可能的减小数据量,在数据编译时需要将满足一定条件(如名称及等级相同的收费道路)的弧段连接成路链对象,同时将道路名称根据客户要求沿着道路按一定间距均匀分布。如图2中假定弧段AB、BC、CD都是南京西路且都是免费的,则在数据编译时会生成路链AD记录。
由于原始数据中只有弧段AB、BC、CD数据,而并没有路链AD数据和沿路分布的道路名称数据(名称记录南京西路),同时由于数据加工时只能对弧段数据设置PID,从而导致在进行差分处理路链及路名时,找不到相应的PID,这样就使得差分处理变得很复杂。
发明内容
有鉴于此,本发明的目的是提供一种导航电子地图的差分数据产生方法及装置,不需依赖数据生产时为记录添加永久ID,就能够实现对导航电子地图的差分数据的抽取。
为实现上述目的,本发明提供技术方案如下:
一种导航电子地图的差分数据产生方法,包括:
遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;
遍历更新版地图文件的所有记录,利用所述哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;
对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录。
上述的差分数据产生方法,其中:
在对所述基准版地图文件和更新版地图文件进行遍历之前还包括:通过数据访问接口读入并解析预定模型的所述基准版地图文件和更新版地图文件,并通过数据适配器将所述基准版地图文件和更新版地图文件的每条记录转换为字节序列后存储在连续的存储区域中;
在生成所述差分数据文件之后还包括:通过所述数据适配器和数据访问接口将所述差分数据文件转换为所述预定模型后存储。
上述的差分数据产生方法,其中:
所述第一哈希表和第二哈希表为链表,所述链表的节点存储记录的指针以及该记录的永久ID。
上述的差分数据产生方法,其中:
所述利用哈希算法生成每条记录的永久ID为:分别将两个不同的计算类型参数输入到所述哈希算法中,来为每条记录生成两个不同的永久ID,分别为第一永久ID和第二永久ID;
所述第一哈希表和第二哈希表为链表数组,所述第一永久ID用于标识记录在所述链表数组中所属的链表,所述链表的节点存储记录的指针以及该记录的第二永久ID。
上述的差分数据产生方法,其中,所述对所述第一哈希表和第二哈希表进行比较生成差分数据文件,包括:
对于存在于所述第一哈希表中、但不存在于所述第二哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置删除标记;
对于存在于所述第二哈希表中、但不存在于所述第一哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置增加标记。
一种导航电子地图的差分数据产生装置,包括:
第一哈希表生成模块,用于遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;
第二哈希表生成模块,用于遍历更新版地图文件的所有记录,利用所述哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;
差分数据产生模块,用于对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录。
上述的差分数据产生装置,其中,还包括:
数据访问模块,用于读入并解析预定模型的所述基准版地图文件和更新版地图文件,将所述基准版地图文件和更新版地图文件的每条记录转换为字节序列后存储在连续的存储区域中,以及,将所述差分数据文件转换为所述预定模型后存储。
上述的差分数据产生装置,其中:
所述第一哈希表和第二哈希表为链表,所述链表的节点存储记录的指针以及该记录的永久ID。
上述的差分数据产生装置,其中:
所述第一哈希表生成模块和第二哈希表生成模块进一步用于:分别将两个不同的计算类型参数输入到所述哈希算法中,来为每条记录生成两个不同的永久ID,分别为第一永久ID和第二永久ID;
此时,所述第一哈希表和第二哈希表为链表数组,所述第一永久ID用于标识记录在所述链表数组中所属的链表,所述链表的节点存储记录的指针以及该记录的第二永久ID。
上述的差分数据产生装置,其中,所述差分数据产生模块进一步用于:
对于存在于所述第一哈希表中、但不存在于所述第二哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置删除标记;
对于存在于所述第二哈希表中、但不存在于所述第一哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置增加标记。
与现有技术相比,本发明的有益效果是:
本发明利用哈希算法动态计算数据记录的永久ID,使得差分数据的抽取与数据记录是否具有永久ID无关,与数据规格和数据模型也无关,这样,差分数据的抽取不仅不需要额外的生产成本,而且能够充分利用长期积淀的原始导航数据,从而大大缩短了数据的更新周期,提高了竞争力。
附图说明
图1为现有技术中导航电子地图的差分数据产生方法示意图;
图2为导航电子地图中弧段、路链与道路名称的关系示意图;
图3为本发明实施例的导航电子地图的差分数据产生方法流程图;
图4为本发明实施例的导航电子地图的差分数据产生方法的具体实现示意图;
图5为本发明实施例的导航电子地图的差分数据产生方法中的数据流向图;
图6为本发明实施例在PID计算过程中记录的存储模型示意图;
图7为本发明实施例在PID计算过程中使用的数据结构示意图;
图8为本发明实施例的导航电子地图的差分数据产生方法的详细流程图;
图9为本发明实施例的导航电子地图的差分数据产生装置结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
参照图3,本发明实施例的导航电子地图的差分数据产生方法,包括如下步骤:
步骤301:遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;
步骤302:遍历更新版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;
为了根据动态生成的永久ID来抽取差分数据,步骤301与步骤302中应当采用相同的哈希算法,这样,在不同版本中的相同记录就具有相同的永久ID。
步骤303:对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录。
在具体实现时,所述第一哈希表和第二哈希表可以为链表,所述链表的节点存储记录的指针以及该记录的永久ID。
所述第一哈希表和第二哈希表也可以为链表数组,此时,步骤301和步骤302中,利用哈希算法生成每条记录的永久ID为:分别将两个不同的计算类型参数输入到所述哈希算法中,来为每条记录生成两个不同的永久ID,分别为第一永久ID和第二永久ID。所述第一永久ID用于标识记录在所述链表数组中所属的链表,所述链表的节点存储记录的指针以及该记录的第二永久ID。
当然,所述第一哈希表和第二哈希表也可以采用其他公知的数据结构,这里不作赘述。
在步骤303中,差分数据的产生规则为:
对于存在于所述第一哈希表中、但不存在于所述第二哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置删除标记;
对于存在于所述第二哈希表中、但不存在于所述第一哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置增加标记。
生成差分数据文件后,就可以将所述差分数据文提供给导航端,由所述导航端根据所述差分数据文件和基准版地图文件恢复所述更新版地图文件,具体为:
将所述差分数据文件中设置有删除标记的记录从所述基准版地图文件中删除,并将所述差分数据文件中设置有增加标记的记录增加到所述基准版地图文件中,从而得到恢复后的更新版地图文件。
本发明实施例对步骤301和步骤302的执行顺序不做限制,即,可以先执行步骤302,再执行步骤301,另外,两者还可以并行执行。
进一步,在对所述基准版地图文件和更新版地图文件进行遍历之前还可包括:通过数据访问接口读入并解析预定模型的所述基准版地图文件和更新版地图文件,并通过数据适配器将所述基准版地图文件和更新版地图文件的每条记录转换为字节序列后存储在连续的存储区域中;
此时,在生成所述差分数据文件之后还包括:通过所述数据适配器和数据访问接口将所述差分数据文件转换为所述预定模型后存储。
图4为本发明实施例的导航电子地图的差分数据产生方法的具体实现示意图,可以看出,图4与图1相比主要做了以下方面的改进:
增加了动态PID计算环节,使得差分数据的抽取与原始数据是否具有PID无关;
动态计算好的PID存放于哈希表,并通过比较两个版本的哈希表进行差分数据的抽取;
增加数据访问层使差分数据的抽取与输入输出数据的规格无关。
另外,PID动态计算还存在以下优点:
可以很方便地处理经过逻辑运算后得到的记录,如路链记录、路名记录等;
在保证比较的两个版本的数据模型一致的前提下,可以做到差分数据的抽取与数据模型无关,即,可以对任意模型的数据进行差分抽取。
图5为本发明实施例的导航电子地图的差分数据产生方法中的数据流向图。参照图5,数据访问层主要负责输入数据读取、数据模型转换、差分数据输出。数据访问层的存在可以保证PID计算与输入数据规格无关。
数据访问层主要由数据访问接口(ACC)和数据适配器(DATA ADAPTER)组成。原始数据通过ACC读入并解析,然后通过DATA ADAPTER进行数据模型转换,最后将转换后的数据供差分数据处理模块(DIFF PROCESS)使用。差分数据处理模块抽出的差分数据经DATAADAPTER模型转换后,由相应的ACC输出并保存。
可见,由于有数据访问层的存在,使得差分数据的抽取可以做到与数据的规格无关,即,输入的两个版本的数据可以同为SQL DB,也可以同为SHAPE,还可以同为PSF。相应地,差分数据将保存为SQL DB,或者,SHAPE,或者,PSF(分别与输入数据一致)。
以下给出PID计算的一种具体实现方法。
PID计算的核心内容是根据数据记录的属性,通过某种方法生成能够唯一标识该记录的一个整数值,这个整数就是我们需要的PID。下面分别对PID计算过程中使用存储模型、数据结构和计算算法进行描述。
A)存储模型
PID计算算法使用的存储模型非常简单,它仅是一个能够描述一条记录所有属性的字节序列,该模型如图6所示。在图6中,序列长度是指描述某条记录的字节序列长度,单位为字节;字节1~字节n是字节序列。
该存储模型决定了DATAADPATER对于输入输出数据的模型转换非常简单,它唯一需要做的事情就是对ACC读入的数据进行简单的长度统计,并将数据拷贝到相应长度的字节序列中就行。另外这种数据模型适合处理所有格式的数据,因为不管哪种格式的数据,经ACC解析后必定会生产一块连续的或几块不连续的存储区域,若是连续的存储区域,该区域可以直接给后续的哈希算法使用,若是不连续的存储区域,DATAADAPTER只要将这些不连续的存储区域拷贝到一连续的存储区域即可。
B)数据结构
图7为本发明实施例在PID计算过程中使用的数据结构示意图,该数据结构为链表数组。为了方便描述,定义如下符号:
L表示链表,L[n]表示链表中第n个节点;
LA表示链表数组,LA[n]表示链表数组中第n个元素;
REC{PID,VAL}表示记录,PID表示记录的永久ID,VAL表示记录的内容,REC.PID表示取记录的PID,REC.VAL表示取记录的内容;
MOD表示对一个整数进行取模运算,例如:5MOD 3等于2。
对图7作如下说明:
在PID计算过程中使用一个具有2048个元素的链表数组LA;
链表的每一个节点是一个记录REC{PID-V,VAL};
记录REC{PID-V,VAL}所属的链表可以通过以下公式获得:L=LA[PID-OMOD 2048],PID-O为链表的定位ID;
通过遍历链表的节点可以取得链表节点内容和记录的PID;
为了加快链表的遍历速度以及尽可能减少PID冲突,本发明实施例对同一块字节序列用不同的公式(同一哈希算法输入不同的计算类型参数)算出两个不同的PID,分别为PID-O和PID-V,其中,PID-O用来定位链表,PID-V(校验PID)存储在链表的节点中。
C)PID计算算法
PID计算算法主要是将DATA ADAPTER传入的字节序列压缩成一个整数,本发明实施例中采用了比较成熟的暴雪MPQ哈希算法,其算法实现代码如下:
unsigned long HashString_Mpq(char*pcString,unsigned long ulHashType,inta_iLen)
{
  int iTmpV;
  unsigned char*pcKey=(unsigned char*)pcString;
  unsigned long ulSeed1=0x7FED7FED;
  unsigned long ulSeed2=0xEEEEEEEE;
  while(a_iLen>0)
  {
    iTmpV=(*pcKey);
    //根据type不同计算不同的hash值
    ulSeed1=((ulHashType<<8)+iTmpV)^(ulSeed1+ulSeed2);
    ulSeed2=iTmpV+ulSeed1+ulSeed2+(ulSeed2<<5)+3;
    pcKey++;
    a_iLen--;
  }
  return ulSeed1;
}
其中:
pcString为传入的字节序列;
a_iLen为字节序列长度;
ulHashType为计算类型,主要是用来对同一字节序列进行不同的哈希运算,该值为0表示计算定位PID-O,为1表示计算校验PID-V。
以下给出本发明实施例的导航电子地图的差分数据产生方法的详细流程。
首先介绍差分数据生成规则。现实世界中对于地理要素的变更存在以下几种情况:
新增,如新建某条高速公路等;
变更,如道路改名等;
删除,如道路的废止等。
这几种情形在本发明抽取差分数据时会按下表的规则生成差分数据:
如图8所示,根据上述规则,本发明实施例中差分数据的产生主要包括如下步骤:
步骤801:读入基准版数据;
步骤802:对于读入的基准版数据,采用哈希算法逐条计算每条记录的PID,并保存于基准版PID哈希表;
步骤803:读入更新版数据;
步骤804:对于读入的更新版数据,采用哈希算法逐条计算每条记录的PID,并保存于更新版PID哈希表;
步骤805:遍历基准版PID哈希表;
步骤806:取基准版PID哈希表的当前PID值;
步骤807:在更新版PID哈希表中查找相同PID值;
步骤808:判断是否找到相同PID值,若是,进入步骤809,否则,进入步骤810;
步骤809:在更新版PID哈希表中对该PID值设置找到标志,进入步骤811;
步骤810:在差分数据中生成删除记录,即,将该PID对应的记录输出到差分数据中,并设置删除标记;
步骤811:判断基准版PID哈希表是否遍历完成,若是,进入步骤812,否则,返回步骤805;
步骤812:遍历更新版PID哈希表;
步骤813:取更新版PID哈希表的当前PID值;
步骤814:判断该PID值是否设置有找到标志,若是,进入步骤816,否则,进入步骤815;
步骤815:在差分数据中生成新增记录,即,将该PID对应的记录输出到差分数据中,并设置新增标记;
步骤816:判断更新版PID哈希表是否遍历完成,若是,结束,否则,返回步骤812。
本发明实施例还提供一种导航电子地图的差分数据产生装置,参照图9,该装置包括:
第一哈希表生成模块10,用于遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;
第二哈希表生成模块20,用于遍历更新版地图文件的所有记录,利用所述哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;
差分数据产生模块30,用于对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录。
优选地,所述差分数据产生装置还包括:数据访问模块(图未示),用于读入并解析预定模型的所述基准版地图文件和更新版地图文件,将所述基准版地图文件和更新版地图文件的每条记录转换为字节序列后存储在连续的存储区域中,以及,将所述差分数据文件转换为所述预定模型后存储。
在具体实现时,所述第一哈希表和第二哈希表可以为链表,所述链表的节点存储记录的指针以及该记录的永久ID。
所述第一哈希表和第二哈希表也可以为链表数组,此时,所述第一哈希表生成模块10和第二哈希表生成模块20进一步用于:分别将两个不同的计算类型参数输入到所述哈希算法中,来为每条记录生成两个不同的永久ID,分别为第一永久ID和第二永久ID;所述第一永久ID用于标识记录在所述链表数组中所属的链表,所述链表的节点存储记录的指针以及该记录的第二永久ID。
在得到所述第一哈希表和第二哈希表后,所述差分数据产生模块30具体按照如下规则产生差分数据:
对于存在于所述第一哈希表中、但不存在于所述第二哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置删除标记;
对于存在于所述第二哈希表中、但不存在于所述第一哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置增加标记。
综上所述,本发明利用哈希算法动态计算数据记录的永久ID,使得差分数据的抽取与数据记录是否具有永久ID无关,与数据规格和数据模型也无关,这样,差分数据的抽取不仅不需要额外的生产成本,而且能够充分利用长期积淀的原始导航数据,从而大大缩短了数据的更新周期,提高了竞争力。
最后应当说明的是,以上实施例仅用以说明本发明的技术方案而非限制,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神范围,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种导航电子地图的差分数据产生方法,其特征在于,包括:
遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;
遍历更新版地图文件的所有记录,利用所述哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;
对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录;
所述对所述第一哈希表和第二哈希表进行比较生成差分数据文件,包括:
对于存在于所述第一哈希表中、但不存在于所述第二哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置删除标记;
对于存在于所述第二哈希表中、但不存在于所述第一哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置增加标记;
在对所述基准版地图文件和更新版地图文件进行遍历之前还包括:通过数据访问接口读入并解析预定模型的所述基准版地图文件和更新版地图文件,并通过数据适配器将所述基准版地图文件和更新版地图文件的每条记录转换为字节序列后存储在连续的存储区域中;
在生成所述差分数据文件之后还包括:通过所述数据适配器和数据访问接口将所述差分数据文件转换为所述预定模型后存储。
2.如权利要求1所述的差分数据产生方法,其特征在于:
所述第一哈希表和第二哈希表为链表,所述链表的节点存储记录的指针以及该记录的永久ID。
3.如权利要求1所述的差分数据产生方法,其特征在于:
所述利用哈希算法生成每条记录的永久ID为:分别将两个不同的计算类型参数输入到所述哈希算法中,来为每条记录生成两个不同的永久ID,分别为第一永久ID和第二永久ID;
所述第一哈希表和第二哈希表为链表数组,所述第一永久ID用于标识记录在所述链表数组中所属的链表,所述链表的节点存储记录的指针以及该记录的第二永久ID。
4.一种导航电子地图的差分数据产生装置,其特征在于,包括:
第一哈希表生成模块,用于遍历基准版地图文件的所有记录,利用哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第一哈希表中;
第二哈希表生成模块,用于遍历更新版地图文件的所有记录,利用所述哈希算法生成每条记录的永久ID,并将生成的永久ID及对应的记录存储到第二哈希表中;
差分数据产生模块,用于对所述第一哈希表和第二哈希表进行比较生成差分数据文件,所述差分数据文件中包括需要删除的记录以及需要增加的记录;
所述差分数据产生模块进一步用于:
对于存在于所述第一哈希表中、但不存在于所述第二哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置删除标记;
对于存在于所述第二哈希表中、但不存在于所述第一哈希表中的永久ID,将该永久ID及对应的记录输出到差分数据文件中,并设置增加标记;
还包括:
数据访问模块,用于读入并解析预定模型的所述基准版地图文件和更新版地图文件,将所述基准版地图文件和更新版地图文件的每条记录转换为字节序列后存储在连续的存储区域中,以及,将所述差分数据文件转换为所述预定模型后存储。
5.如权利要求4所述的差分数据产生装置,其特征在于:
所述第一哈希表和第二哈希表为链表,所述链表的节点存储记录的指针以及该记录的永久ID。
6.如权利要求4所述的差分数据产生装置,其特征在于:
所述第一哈希表生成模块和第二哈希表生成模块进一步用于:分别将两个不同的计算类型参数输入到所述哈希算法中,来为每条记录生成两个不同的永久ID,分别为第一永久ID和第二永久ID;
此时,所述第一哈希表和第二哈希表为链表数组,所述第一永久ID用于标识记录在所述链表数组中所属的链表,所述链表的节点存储记录的指针以及该记录的第二永久ID。
CN201110027060.9A 2011-01-25 2011-01-25 一种导航电子地图的差分数据产生方法及装置 Active CN102607576B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110027060.9A CN102607576B (zh) 2011-01-25 2011-01-25 一种导航电子地图的差分数据产生方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110027060.9A CN102607576B (zh) 2011-01-25 2011-01-25 一种导航电子地图的差分数据产生方法及装置

Publications (2)

Publication Number Publication Date
CN102607576A CN102607576A (zh) 2012-07-25
CN102607576B true CN102607576B (zh) 2015-10-21

Family

ID=46525171

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110027060.9A Active CN102607576B (zh) 2011-01-25 2011-01-25 一种导航电子地图的差分数据产生方法及装置

Country Status (1)

Country Link
CN (1) CN102607576B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930049B (zh) * 2012-11-16 2015-07-29 沈阳美行科技有限公司 一种支持增量更新的嵌入式用户兴趣点数据编译方法
GB2526807A (en) * 2014-06-03 2015-12-09 Here Global Bv Updating single regions of a navigational database
CN105426372B (zh) * 2014-09-17 2020-10-16 阿里巴巴(中国)有限公司 一种电子地图数据制作及更新方法和装置
CN107205024A (zh) * 2017-05-19 2017-09-26 郑州云海信息技术有限公司 一种云存储系统中数据去重方法及系统
CN107229746B (zh) * 2017-06-22 2021-11-09 深圳Tcl数字技术有限公司 终端及多派生项目的数据处理方法和存储介质
US11256679B2 (en) * 2018-11-30 2022-02-22 Intuit Inc. Systems and methods for storing object state on hash chains
CN111045050A (zh) * 2019-12-30 2020-04-21 北京华力创通科技股份有限公司 实时定位方法、装置及电子设备
DE102022000272B3 (de) 2022-01-25 2023-04-13 Mercedes-Benz Group AG Verfahren zur Versionierung von digitalen Straßenkarten und Fahrzeug

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1605833A (zh) * 2003-08-29 2005-04-13 三菱电机株式会社 地图信息处理装置、地图修改信息存储媒体以及生成系统
CN101344400A (zh) * 2007-07-11 2009-01-14 株式会社日立制作所 地图数据分发系统及地图数据更新方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080319654A1 (en) * 2007-06-22 2008-12-25 Sony Corporation System and method for effectively implementing an electronic navigation device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1605833A (zh) * 2003-08-29 2005-04-13 三菱电机株式会社 地图信息处理装置、地图修改信息存储媒体以及生成系统
CN101344400A (zh) * 2007-07-11 2009-01-14 株式会社日立制作所 地图数据分发系统及地图数据更新方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基于快照差分的数据源更新检测方法研究及其实现";刘兆强;《中国优秀硕士学位论文全文数据库信息科技辑》;20080115(第1期);正文第17,18页 *

Also Published As

Publication number Publication date
CN102607576A (zh) 2012-07-25

Similar Documents

Publication Publication Date Title
CN102607576B (zh) 一种导航电子地图的差分数据产生方法及装置
CN102607577B (zh) 一种导航电子地图的增量更新方法、装置及系统
CN102521225B (zh) 增量数据抽取装置和增量数据抽取方法
CN107977396B (zh) 一种KeyValue数据库的数据表的更新方法与表数据更新装置
Malvimat et al. Covariant holographic entanglement negativity for disjoint intervals in AdS_3/CFT_2 A d S 3/CFT 2
CN103377210B (zh) 建立增量型导航数据库的方法和对数据库进行更新的方法
CN108334609B (zh) Oracle中实现JSON格式数据存取的方法、装置、设备及存储介质
CN104216961A (zh) 一种数据处理方法和装置
CN102646039A (zh) 基于XML Schema的软件界面生成系统及方法
CN104748757B (zh) 一种导航电子地图数据更新方法及装置
US9639568B2 (en) Systems and methods for improved data structure storage
CN102651002A (zh) 一种网页信息抽取方法及其系统
CN104899257A (zh) 分布式数据仓库中的数据更新方法和装置
CN104572471B (zh) 一种基于索引的Java软件代码克隆检测方法
CN103927385A (zh) 数据模型的统一方法及装置
CN105955984A (zh) 基于爬虫模式的网络数据搜索方法
CN104537129A (zh) 一种基于Web的数据库虚拟存储处理方法
CN116628066B (zh) 数据传输方法、装置、计算机设备和存储介质
US20230259506A1 (en) Annotating datasets without redundant copying
CN107025249A (zh) 一种快速支持多数据库同步开发的方法
CN102609482B (zh) 一种json数据格式的封装方法
CN103455548A (zh) 一种实现dwg图形属性和数据库同步的方法
CN103292817B (zh) 一种导航电子地图中避免冗余数据的差分数据产生方法
CN102436545B (zh) 一种基于gpu加速的化学结构多样性分析方法
CN103177153B (zh) 一种有限元温度场结果的映射方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant