高德地图数据序列化的探索与实践

点击上方蓝字,关注高德技术!

1.

导读


高德既有上半身(导航服务、交通服务、步导服务、渲染服务、离线包等),为亿级用户提供基础的地图展示、搜索、导航、路况服务;又有下半身(数据采集、制作),源源不断地采集最新的数据,为用户提供最新最准的数据。

下半身采集的数据,需要经过处理,序列化为二进制数据,输送给上半身的各个应用。同时,上半身的各个服务间也需要数据传输,这些都需要将地图数据序列化为二进制数据。

地图数据包括道路、POI、水系、绿地、建筑等,可抽象为三类:点、线、面数据。再进一步抽象,可分为两类:几何数据和属性数据。

本文将分享高德技术团队在地图数据序列化领域的探索和实践。

2.

序列化的关键因素


序列化主要考虑以下几个因素:

  • 数据量:

    针对客户端App,流量消耗情况非常重要。高德地图对数据的新鲜度要求非常高,如京港澳高速开通,需要实时上线,让用户第一时间用最新的数据进行导航。数据更新快,会导致客户端缓存很快失效,需要实时从服务端请求最新数据。这就要求地图数据要尽量小,以减少服务带宽占用、用户流量消耗。

    针对离线数据,离线包的大小也非常重要。地图数据全国离线包动辄上G,对用户流量、下载速度和手机存储空间占用都是不小的消耗。

  • 扩展性:

    客户端App一方面无法控制用户软件更新,一方面又需要不停迭代为用户提供新功能。这就要求数据需要做到向前兼容和向后兼容。

    各服务间的数据传递最好也做到数据兼容。如无法兼容,则需要各服务同步修改、同时

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值