一种地图数据处理方法、装置及系统的制作方法_2

文档序号:8298881阅读:来源:国知局
理解的是,所述步骤S103、步骤S104和步骤S105可以具体包括:
[0066]在服务器生成所述地图增量包后,会根据所述地图增量包生成更新提示信息并发送至客户端,以提示用户当前地图数据有更新;所述客户端根据所述更新提示信息选择是否需要更新,若需要,则向所述服务器发送第一请求更新指令,所述第一请求更新指令指示下载所述地图增量包;所述服务器接收所述第一请求更新指令,并根据指示向所述客户端发送所述地图增量包。
[0067]由上述可知,本实施例中提供的地图数据处理方法,根据地图数据更新信息获取需要更新的区域以及在该区域内的更新范围,从而生成地图增量包,并提示和发送至客户端进行下载更新,由于在该方案中,可以通过生成地图增量包,并发送至客户端以供更新下载,所以,相对于现有技术只能进行全量替换的方式而言,可以大大降低更新的数据包的大小,不仅便于用户下载,可以大大节省用户的带宽流量,以及节省服务器的存储空间等资源,而且可以提高离线数据包的生产效率、缩短地图数据更新的周期、以及提高客户端更新地图数据时的效率。
[0068]第二实施例
[0069]请参阅图2,图2为本发明第二实施例提供的地图数据处理方法的流程示意图。所述方法步骤包括:
[0070]在步骤S201中,获取地图数据更新信息。
[0071]在步骤S202中,判断是否需要对全量数据进行更新。
[0072]可以理解的是,所述步骤S201和步骤S202可以具体包括:
[0073]其中,该实施例中提供的地图数据处理方法是基于服务器侧进行。
[0074]在服务器获取了地图数据更新信息后,可根据地图数据更新信息预测所生成的地图增量包的容量大小,以此来判断是否需要对全量数据进行更新;其中,所述全量数据可以是指全国的地图数据,对全量数据进行更新的意思是,结合地图数据更新信息,需要对原有的地图基础数据包进行重新处理和打包。
[0075]在本实施例中,若预测所生成的地图增量包的容量大小超过预设阈值,则确定需要对全量数据进行更新;
[0076]其中,该阈值可以根据实际应用的需求进行设置,例如,优选的,若预测所生成的地图增量包的数据容量大小超过对应的地图基础数据包的数据容量大小的30%,则判断需要对全量数据进行更新,等等。
[0077]在步骤S203中,确定需要对全量数据进行更新时,获取地图基础数据。
[0078]在步骤S204中,根据所述地图基础数据生成地图基础数据包。
[0079]可以理解的是,所述步骤S203和步骤S204可以具体包括:
[0080]在一种实施方式下,当确定需要对全量数据进行更新时,获取地图基础数据并且根据地图基础数据生成地图基础数据包。假如,以城市为单位,全量更新全国地图离线包数据,生成地图基础数据包;同时,对该地图基础数据包指定一个大版本号(即指定一版本标识)。如生成北京市的大版本号为29的版本数据,数据打包前命名为:beijingsh1.dat,打包后命名为:beijignshi29.zip。可以理解的是,在某些实施方式中,可以先根据获取地图基础数据生成地图基础数据包,再判断是否需要对全量数据进行更新,此处不作具体限定。
[0081]其中,版本号是代表不同时效性的地图数据的标识,一般全国整体全量更新一次,会有一个大版本号,若以城市为单位,在一次全量更新中,每个城市对应的地图基础数据包会有一个相同的大版本号;小范围更新部分城市的增量部分,会有一个小版本号;所述地图基础数据包也可以称之为地图基线包,可以理解的是,全量更新得到的只有大版本号的数据包,即地图基础数据包。
[0082]在步骤S205中,根据所述地图数据更新信息获取需要更新的区域以及在该区域内的更新范围。
[0083]在步骤S206中,根据所述区域以及所述区域内的更新范围生成地图增量包。
[0084]可以理解的是,所述步骤S205至步骤S206可以具体包括:
[0085]若所述需要更新的区域以城市为单位,即以城市为单位对更新数据进行打包,生成地图增量包;所述服务器根据所述地图数据更新信息获取需要更新数据的城市以及实际在该城市中的更新范围;如北京市更新14号地铁线,服务器根据地铁线路数据的坐标范围,计算出需要更新数据的城市为北京市,更新范围具体是ID为35-40的数据块。
[0086]其后,按照上述需要更新的城市以及该城市的更新范围,生成对应更新范围的新的数据块,即地图增量包,也称新的patch (补丁)包,所述地图增量包是基于某个大版本号的地图基线包的小版本的离线数据补丁包,即更新的增量数据以小版本补丁包的形式进行打包,所述增量数据就是指上次全量更新导出之后的新数据;在本实施例中,数据打包前命名为:beijingsh1.patch,打包后命名可以为:bei jingshi29_patch.zip。
[0087]优选的,该实施例中还可以对小版本的patch包的容量大小进行限制,控制所述地图增量包的数据容量大小为其对应的地图基础数据包的数据容量大小的10%。进一步优选的,一个地图基础数据包最多配置有一个地图增量包,也就是说,如果在同一个地图基础数据包下需要二次打包地图增量包时,则要兼容之前版本地图增量包,从而可以保证客户端的逻辑简单,以便用户最多只需要处理一个地图增量包和地图基线包的融合。
[0088]在步骤S207中,将所述地图基础数据包和所述地图增量包进行融合,得到地图全量数据包。
[0089]本实施例中,由于确定出需要对全量数据进行更新,即预测所生成的地图增量包的容量大小超过预设阈值,需要对地图基础数据包进行重新处理和打包;也就是说,将所述地图基础数据包和所述地图增量包进行融合,得到地图全量数据包,且将所述地图全量数据包作为新的地图基础数据包并存储;可具体的,若地图增量包的容量大小超过对应的地图基础数据包的数据容量大小的30%,则将该地图增量包直接与地图基础数据包相融合,作为新的大版本号的基线包,即地图全量数据包。
[0090]在步骤S208中,根据所述地图全量数据包生成更新提示信息,并将所述更新提示信息发送给客户端。
[0091]在步骤S209中,接收所述客户端根据所述更新提示信息发送的第三请求更新指令,所述第三请求更新指令指示下载所述地图全量数据包;
[0092]在步骤S210中,根据所述第三请求更新指令向客户端发送所述地图全量数据包。
[0093]可以理解的是,所述步骤S208、步骤S209和步骤S210可以具体包括:
[0094]在服务器生成所述地图全量数据包后,会根据所述地图全量数据包生成更新提示信息并发送至客户端,以提示用户地图基础数据包有更新;所述客户端根据所述更新提示信息选择是否需要更新,若需要,则向所述服务器发送第三请求更新指令,所述第三请求更新指令指示下载所述地图全量数据包,即新的地图基础数据包;所述服务器接收所述第三请求更新指令,并根据指示向所述客户端发送所述地图全量数据包。
[0095]由上述可知,本实施例中提供的地图数据处理方法,根据地图数据更新信息获取需要更新的区域以及在该区域内的更新范围,从而生成地图增量包,并提示和发送至客户端进行下载更新,由于在该方案中,可以通过生成地图增量包,并发送至客户端以供更新下载,进一步的,对地图增量包的容量大小加以限制,并将地图增量包与地图基础数据包进行融合;所以,相对于现有技术只能进行全量替换的方式而言,可以大大降低更新的数据包的大小,不仅便于用户下载,可以大大节省用户的带宽流量,以及节省服务器的存储空间等资源,而且可以提高离线数据包的生产效率、缩短地图数据更新的周期、以及提高客户端更新地图数据时的效率。
[0096]第三实施例
[0097]请参阅图3,图3为本发明第三实施例提供的地图数据处理方法的流程示意图。所述方法步骤包括:
[0098]在步骤S301中,获取地图数据更新信息。
[0099]在步骤S302中,判断是否需要对全量数据进行更新。
[0100]可以理解的是,所述步骤S301和步骤S302可以具体包括:
[0101]其中,该实施例中提供的地图数据处理方法是基于服务器侧进行;可选的,在该实施例中,服务器中可以预先设置有地图基础数据包(也可称为地图基线包),所述地图基础数据包根据地图基础数据生成;若以城市为单位,如生成北京市的大版本号为29的版本数据,数据打包前命名为:beijingsh1.dat,打包后命名为:beijignshi29.zip。
[0102]在服务器获取了地图数据更新信息后,可根据地图数据更新信息预测所生成的地图增量包的容量大小,以此来判断是否需要对全量数据进行更新;其中,所述全量数据可以是指全国的地图数据,对全量数据进行更新的意思是,结合地图数据更新信息,需要对原有的地图基础数据包进行重新处理和打包。
[0103]在本实施例中,若预测所生成的地图增量包的容量大小超过预设阈值,则确定需要对全量数据进行更新;优选的,若预测所生成的地图增量包的数据容量大小超过对应的地图基础数据包的数据容量大小的30%,则判断需要对全量数据进行更新;相反的,若预测所生成的地图增量包的容量大小未超过预设阈值,则确定不需要对全量数据进行更新。
[0104]在步骤S303中,确定不需要对全量数据进行更新时,根据所述地图数据更新信息获取需要更新的区域以及在该区域内的更新范围。
[0105]在步骤S304中,根据所述区域以及所述区域内的更新范围生成地图增量包。
[0106]可以理解的是,所述步骤S303和步骤S304可以具体包括:
[0107]在一种实施方式下,当确定不需要对全量数据进行更新时,则根据所述地图数据更新信息,生成地图增量包。若所述需要更新的区域以城市为单位,即以城市为单位对更新数据进行打包,生成地图增量包;所述服务器根据所述地图数据更新信息获取需要更新数据的城市以及实际在该城市中的更新范围;如北京市更新14号地铁线,服务器根据地铁线路数据的坐标范围,计算出需要更新数据的城市为北京市,更新范围具体是ID为35-40的数据块。
[0108]其后,按照上述需要更新的城市以及该城市的更新范围,生成对应更新范围的新的数据块,即地图增量包,也称新的patch (补丁)包,其中该地图增量包会有一个对应的小版本号,代表不同时效性的地图数据的标识。所述地图增量包是基于某个大版本号的地图基线包的小版本的离线数据补丁包,即更新的增量数据以小版本补丁包的形式进行打包,所述增量数据就是指上次全量更新导出之后的新数据;在本实施例中,数据打包前命名为:bei jingsh1.patch,打包后命名可以为:bei jingshi29_patch.zip。
[0109]优选的,该实施例中还可以对小版本的patch包的容量大小进行限制,控制所述地图增量包的数据容量大小为其对应的地图基础数据包的数据容量大小的10%。
[0110]进一步优选的,该实施例中,可以将所述地图增量包与地图基础数据包的基线文件bei jingsh1.dat合并打包成文件作为该城市最新版本的地图数据包,可命名为beijignshi29_all.zip。可以理解的是,打包完成后,可以将该地图数据包,及其对应的配置信息一并上线到服务端。
[0111]在步骤S305中,根据所述地图增量包生成更新提示信息,并将所述更新提示信息发送给客户端。
[0112]在步骤S306中,接收所述客户端根据所述更新提示信息发送的第一请求更新指令,所述第一请求更新指令指示下载所述地图增量包。
[0113]在步骤S307中,根据所述第一请求更新指令的指示向所述客户端发送所述地图增量包。
[0114]可以理解的是,所述步骤S305、步骤S306和步骤S307可以具体包括:
[0115]该实施例中,在服务器生成所述地图增量包后,会根据所述地图增量包生成更新提示信息并发送至客户端,以提示用户当前地图数据有更新;所述客户端根据所述更新提示信息选择是否需要更新,若需要,则向所述服务器发送第一请求更新指令,所述第一请求更新指令指示下载所述地图增量包;所述服务器接收所述第一请求更新指令,并
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1