CN111190986B - 一种地图数据对比方法和装置 - Google Patents

一种地图数据对比方法和装置 Download PDF

Info

Publication number
CN111190986B
CN111190986B CN201911401146.6A CN201911401146A CN111190986B CN 111190986 B CN111190986 B CN 111190986B CN 201911401146 A CN201911401146 A CN 201911401146A CN 111190986 B CN111190986 B CN 111190986B
Authority
CN
China
Prior art keywords
data
comparison
map data
field
primary key
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
CN201911401146.6A
Other languages
English (en)
Other versions
CN111190986A (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.)
Heading Data Intelligence Co Ltd
Original Assignee
Heading Data Intelligence 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 Heading Data Intelligence Co Ltd filed Critical Heading Data Intelligence Co Ltd
Priority to CN201911401146.6A priority Critical patent/CN111190986B/zh
Publication of CN111190986A publication Critical patent/CN111190986A/zh
Application granted granted Critical
Publication of CN111190986B publication Critical patent/CN111190986B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases

Abstract

本发明实施例提供的一种地图数据对比方法和装置,读取数据库文件后,按照表名称,主键值和字段值的顺序先后进行对比,把存在差异的数据记录到对比结果中,如果字段类型是普通数据类型(整型,浮点型,字符型),则可以直接进行对比;如果字段是BLOB类型,就需要在内存中按照它原来的结构进行解析,再对解析后的数据按层次进行对比,把有差异的数据记录到对比结果中。最后把对比结果输出到对比报告中。可以对BLOB类型的数据进行有效的对比,从而分析出数据的具体差异,对比结果更加准确可靠。

Description

一种地图数据对比方法和装置
技术领域
本发明实施例涉及电子地图技术领域,尤其涉及一种地图数据对比方法和装置。
背景技术
现时车载音响普遍具备导航功能,而导航软件所用到的地图数据的正确性对于驾驶者来说至关重要,所以地图数据的测试验证成为了重要一环。当新的地图发布前必须检验其数据的正确性,防止地图数据错误,目前检测地图数据的方法是利用地图数据查询软件针对新地图的数据与已发布的地图数据进行对比核查,测试人员需要用地图数据查询软件分别打开新地图和已发布的地图,分别在两个地图里测试人员手工逐个输入选定区域的位置数据,然后测试员去对比这两个区域的差异,如果数据一致则在测试报告上填写这个地图位置数据的测试结果,然后再选择下一组位置数据,再进行对比,而地图的数据包含的信息量相当庞大,一个地图的位置数据有682万条记录。
现有技术中,对于两份不同的地图数据,需要准确知道数据中的差异点,可以通过文本对比工具对数据库文件进行对比。这种方式对于仅具有普通数据类型的数据库来说没有太大问题,然而对于含有BLOB数据类型的数据库,就无法准确判断该两份数据的差异。
发明内容
本发明实施例提供一种地图数据对比方法和装置,用以解决现有技术中对于含有BLOB数据类型的数据库,就无法准确判断该两份数据的差异的问题。
第一方面,本发明实施例提供一种地图数据对比方法,包括:
基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比。
作为优选的,还包括:
若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为普通类型字段,则直接进行数据对比;所述普通类型字段包括整型字段、浮点型字段和字符型字段。
作为优选的,则基于BLOB型字段的数据在内存中的结构进行逐层对比,具体包括:
对BLOB型字段的数据按照数据在内存中的结构进行解析,并对解析后的数据按层次关系进行对比;若判断获知某一层数据有不同的值,则将对应的数据记录到对比结果中,如果某一层的数据相同,则进行下一层次的对比,直到所有层次的数据对比完成。
作为优选的,具体包括:
若判断获知两份地图数据的表名称不相同,则将对应的地图数据的表名称记录到对比结果中。
作为优选的,还包括:
若判断获知两份地图数据的表名称相同,则对表名称相同的内容按表的主键值进行分类,若判断获知表的主键值不同,则将对应的表名称和主键值记录到对比结果中。
作为优选的,还包括:
把对比结果输出到数据表的对比报告中。
第二方面,本发明实施例提供一种地图数据对比装置,包括:
提取模块,获取待对比的两份地图数据的表名称、主键值和字段值;
对比模块,基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比。
第三方面,本发明实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明第一方面实施例所述地图数据对比方法的步骤。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本发明第一方面实施例所述地图数据对比方法的步骤。
本发明实施例提供的一种地图数据对比方法和装置,读取数据库文件后,按照表名称,主键值和字段值的顺序先后进行对比,把存在差异的数据记录到对比结果中,如果字段类型是普通数据类型(整型,浮点型,字符型),则可以直接进行对比;如果字段是BLOB类型,就需要在内存中按照它原来的结构进行解析,再对解析后的数据按层次进行对比,把有差异的数据记录到对比结果中。最后把对比结果输出到对比报告中。可以对BLOB类型的数据进行有效的对比,从而分析出数据的具体差异,对比结果更加准确可靠。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为根据本发明实施例的地图数据对比方法流程框图;
图2为根据本发明实施例的一种电子设备结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
现有技术中,对于两份不同的地图数据,需要准确知道数据中的差异点,可以通过文本对比工具对数据库文件进行对比。这种方式对于仅具有普通数据类型的数据库来说没有太大问题,然而对于含有BLOB数据类型的数据库,就无法准确判断该两份数据的差异。
因此,本发明实施例提出一种地图数据对比方法和装置,读取数据库文件后,按照表名称,主键值和字段值的顺序先后进行对比,把存在差异的数据记录到对比结果中,如果字段类型是普通数据类型(整型,浮点型,字符型),则可以直接进行对比;如果字段是BLOB类型,就需要在内存中按照它原来的结构进行解析,再对解析后的数据按层次进行对比,把有差异的数据记录到对比结果中。最后把对比结果输出到对比报告中。可以对BLOB类型的数据进行有效的对比,从而分析出数据的具体差异,对比结果更加准确可靠。以下将通过多个实施例进行展开说明和介绍。
图1为本发明实施例提供一种地图数据对比方法,包括:
基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比。
在本实施例中,作为一种优选的实施方式,首先,根据数据库文件包含的数据表名称进行归类,其次,再对表名称相同的内容按照表的主键值进行归类,再次,如果主键值相同,则对表的每一个字段内容进行对比。若字段的数据类型为BLOB型,就需要对BLOB型字段的数据按照它原来的结构进行解析,然后再对解析后的数据按层次关系进行对比。
按照表名称,主键值和字段值的顺序先后进行对比,把存在差异的数据记录到对比结果中,如果字段类型是普通数据类型(整型,浮点型,字符型),则可以直接进行对比;如果字段是BLOB型,就需要在内存中按照它原来的结构进行解析,再对解析后的数据按层次进行对比,把有差异的数据记录到对比结果中。最后把对比结果输出到对比报告中。可以对BLOB型类型的数据进行有效的对比,从而分析出数据的具体差异,对比结果更加准确可靠。
在上述实施例的基础上,还包括:
若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为普通类型字段,则直接进行数据对比;所述普通类型字段包括整型字段、浮点型字段和字符型字段。
在本实施例中,作为一种优选的实施方式,如果主键值相同,则对表的每一个字段内容进行对比。若字段数据类型为普通数据类型(整型,浮点型,字符型),可以直接对比这个字段的值是否相同,如果有不同的值,就把对应的字段记录到对比结果中。
在上述各实施例的基础上,则基于BLOB型字段的数据在内存中的结构进行逐层对比,具体包括:
对BLOB型字段的数据按照数据在内存中的结构进行解析,并对解析后的数据按层次关系进行对比;若判断获知某一层数据有不同的值,则将对应的数据记录到对比结果中,如果某一层的数据相同,则进行下一层次的对比,直到所有层次的数据对比完成。
在上述各实施例的基础上,具体包括:
若判断获知两份地图数据的表名称不相同,则将对应的地图数据的表名称记录到对比结果中。
在本实施例中,作为一种优选的实施方式,根据数据库文件包含的数据表名称进行归类,如果表名称有不同的,就把对应的表名称记录到对比结果中。
步骤一、按照表名称归集数据。
1.1读取数据库的表名称。
1.2对表名称不一致的数据记录到对比结果中。
1.3对表名称相同的数据,进行下一步对比。
在上述各实施例的基础上,还包括:
若判断获知两份地图数据的表名称相同,则对表名称相同的内容按表的主键值进行分类,若判断获知表的主键值不同,则将对应的表名称和主键值记录到对比结果中。
在本实施例中,作为一种优选的实施方式,若判断获知两份地图数据的表名称相同,再对表名称相同的内容按照表的主键值进行归类,如果表的主键值不同的,就把对应的表名称和主键值都记录到对比结果中。
步骤二、按照主键值归集数据。
2.1对表名称相同的数据按照主键值进行归类。
2.2把主键值不相同的数据记录到对比结果中。
2.3对主键值相同的数据,进行下一步对比。
在上述各实施例的基础上,还包括:
把对比结果输出到数据表形式的对比报告中。
在本实施例中,作为一种优选的实施方式,若字段的数据类型为BLOB类型,就需要对BLOB型字段的数据按照它原来的结构进行解析,然后再对解析后的数据按层次关系进行对比。如果某一层数据有不同的值,就把对应的数据记录到对比结果中,如果这一层的数据相同,则进行下一层次的对比,直到所有层次的数据对比完成。
步骤三、对各个字段进行对比。
3.1对主键值相同的数据,按照各字段的顺序进行对比。
3.2如果字段的类型普通数据类型,可以直接对比,把有差异的数据记录到对比结果中。
3.3如果字段的类型为BLOB型,按照它原来的结构进行解析,再对解析后的数据逐层进行对比,如果某一层数据不一致,就把该数据记录到对比结果中;如果一致,就进行下一层的对比,直到该BLOB型字段的数据对比完成。
步骤四、把对比结果输出到对比报告中。
4.1查看输出的对比报告文件。
4.2检查对比报告是否正确,对比报告以SQLite表的形式提供。
文本对比工具对于仅含有普通数据类型的数据可以进行有效的对比,但对于含有BLOB类型的数据,它的对比结果就很粗糙,不能让用户得到准确的数据差异。本发明实施例中提出的方法可以针对含有BLOB类型的数据库进行有效的对比,根据BLOB型字段的数据在内存中的结构进行逐层对比,把有差异的数据记录到对比结果中,最后,生成对比报告。
本发明实施例还提供一种地图数据对比装置,基于上述各实施例中的地图数据对比方法,包括:
提取模块,获取待对比的两份地图数据的表名称、主键值和字段值;
对比模块,基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比。
本发明实施例提供了一种电子设备,如图2所示,该服务器可以包括:处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行上述各实施例提供的地图数据对比方法,例如包括:
基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比。
此外,上述的存储器830中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的地图数据对比方法,例如包括:
基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比。
综上所述,本发明实施例提供的一种地图数据对比方法和装置,读取数据库文件后,按照表名称,主键值和字段值的顺序先后进行对比,把存在差异的数据记录到对比结果中,如果字段类型是普通数据类型(整型,浮点型,字符型),则可以直接进行对比;如果字段是BLOB类型,就需要在内存中按照它原来的结构进行解析,再对解析后的数据按层次进行对比,把有差异的数据记录到对比结果中。最后把对比结果输出到对比报告中。可以对BLOB类型的数据进行有效的对比,从而分析出数据的具体差异,对比结果更加准确可靠。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种地图数据对比方法,其特征在于,包括:
基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,
则基于BLOB型字段的数据在内存中的结构进行逐层对比:对BLOB型字段的数据按照数据在内存中的结构进行解析,并对解析后的数据按层次关系进行对比;若判断获知某一层数据有不同的值,则将对应的数据记录到对比结果中,如果某一层的数据相同,则进行下一层次的对比,直到所有层次的数据对比完成。
2.根据权利要求1所述的地图数据对比方法,其特征在于,还包括:
若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为普通类型字段,则直接进行数据对比;所述普通类型字段包括整型字段、浮点型字段和字符型字段。
3.根据权利要求1所述的地图数据对比方法,其特征在于,还包括,具体包括:
若判断获知两份地图数据的表名称不相同,则将对应的地图数据的表名称记录到对比结果中。
4.根据权利要求1所述的地图数据对比方法,其特征在于,还包括:
若判断获知两份地图数据的表名称相同,则对表名称相同的内容按表的主键值进行分类,若判断获知表的主键值不同,则将对应的表名称和主键值记录到对比结果中。
5.根据权利要求1所述的地图数据对比方法,其特征在于,还包括:把对比结果输出到数据表形式的对比报告中。
6.一种地图数据对比装置,其特征在于,包括:
提取模块,获取待对比的两份地图数据的表名称、主键值和字段值;
对比模块,基于数据库文件的表名称、主键值和字段值,依次对两份地图数据进行对比;若判断获知两份地图数据的表名称和主键值均相同,且表中字段内容为BLOB型字段,则基于BLOB型字段的数据在内存中的结构进行逐层对比:对BLOB型字段的数据按照数据在内存中的结构进行解析,并对解析后的数据按层次关系进行对比:若判断获知某一层数据有不同的值,则将对应的数据记录到对比结果中,如果某一层的数据相同,则进行下一层次的对比,直到所有层次的数据对比完成。
7.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至5任一项所述地图数据对比方法的步骤。
8.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至5任一项所述地图数据对比方法的步骤。
CN201911401146.6A 2019-12-31 2019-12-31 一种地图数据对比方法和装置 Active CN111190986B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911401146.6A CN111190986B (zh) 2019-12-31 2019-12-31 一种地图数据对比方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911401146.6A CN111190986B (zh) 2019-12-31 2019-12-31 一种地图数据对比方法和装置

Publications (2)

Publication Number Publication Date
CN111190986A CN111190986A (zh) 2020-05-22
CN111190986B true CN111190986B (zh) 2022-05-13

Family

ID=70709579

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911401146.6A Active CN111190986B (zh) 2019-12-31 2019-12-31 一种地图数据对比方法和装置

Country Status (1)

Country Link
CN (1) CN111190986B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115857766A (zh) * 2022-12-08 2023-03-28 上海定卓网络科技有限公司 一种地图交互方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013016258A1 (en) * 2011-07-28 2013-01-31 Navteq B. V. Variable density depthmap

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106484739A (zh) * 2015-09-01 2017-03-08 中兴通讯股份有限公司 数据库的结构比较方法和装置
CN107784102A (zh) * 2017-10-27 2018-03-09 中国电子科技集团公司第二十八研究所 一种基于Oracle数据库的数据差异比较方法
CN109241068B (zh) * 2018-08-22 2023-04-07 中国平安人寿保险股份有限公司 前后台数据比对的方法、装置及终端设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013016258A1 (en) * 2011-07-28 2013-01-31 Navteq B. V. Variable density depthmap

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于 SQLite 的地图瓦片数据库的设计与实现;谭忠厚等;《测绘与空间地理信息》;20180331;全文 *

Also Published As

Publication number Publication date
CN111190986A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
CN107957957B (zh) 测试用例的获取方法和装置
CN110275965B (zh) 假新闻检测方法、电子装置及计算机可读存储介质
CN107943694B (zh) 一种测试数据生成方法及装置
CN108734304B (zh) 一种数据模型的训练方法、装置、及计算机设备
CN107092535B (zh) 用于测试接口的数据存储的方法及设备
CN109472017B (zh) 获得待生成裁判文书本院认为段相关信息的方法及装置
US20160203228A1 (en) Filtering data objects
CN110990274A (zh) 一种生成测试案例的数据处理方法、装置及系统
CN110019542B (zh) 企业关系的生成、生成组织成员数据库及识别同名成员
CN108009223B (zh) 一种交易数据的一致性检测方法及装置
CN110879780A (zh) 页面异常检测方法、装置、电子设备及可读存储介质
CN108809896A (zh) 一种信息校验方法、装置和电子设备
CN115391439A (zh) 文档数据导出方法、装置、电子设备和存储介质
CN111190986B (zh) 一种地图数据对比方法和装置
CN106102059A (zh) 用于确定无线热点的所有者的方法与设备
CN109409091B (zh) 检测Web页面的方法、装置、设备以及计算机存储介质
CN116610583A (zh) Sca工具成熟度评价方法、装置、设备、介质和产品
CN106021087A (zh) 代码检测方法及装置
CN112631905A (zh) 执行过程数据管理方法、装置、计算机设备及存储介质
CN114443493A (zh) 一种测试案例生成方法、装置、电子设备和存储介质
KR102217092B1 (ko) 애플리케이션의 품질 정보 제공 방법 및 장치
CN107665443A (zh) 获取目标用户的方法及装置
CN112835903A (zh) 一种敏感数据识别的方法及设备
CN112579763A (zh) 一种文书的推送方法及装置
CN112650864A (zh) 一种数据处理方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant