栅格瓦片与矢量瓦片
地图缓存技术
地图服务的性能需求越来越高
- 缓存技术大大提高了地图服务的性能,对用户体验也比较好
- 缓存技术降低了服务器端压力,不在需要进行动态出图
- 地图缓存或瓦块地图可以支持众多客户端并发浏览
地图缓存技术是一种非常有效的提高在线地图访问效率的方式,用空间换取时间的方式。
空间数据较为复杂
地图或者地图的某个范围会被较为频繁访问
返回客户端的地图结果相对固定
地图缓存的分类
- 栅格瓦片:地图中所有图层切分并存储为栅格格式的地图瓦片
目前使用最广、技术成熟的地图技术
- 矢量瓦片:矢量图层以矢量瓦片的形式进行切分和存储
矢量瓦片创建效率高
矢量瓦片传输和渲染速度快
栅格瓦片和矢量瓦片的对比
项目 | 矢量瓦片 | 栅格瓦片 |
---|---|---|
地图瓦片 | 将矢量数据通过不同的描述文件来组织和定义,在客户端实时解析数据完成绘制 | 预先在服务端绘制好固定的PNG或其他格式的图片集合 |
瓦片体量 | 小 | 大 |
生成瓦片效率 | 高 | 低 |
更新机制 | 持平 | 持平 |
样式修改 | 支持 | 不支持 |
前端技术要求 | 高(HTML5) | 低 |
显示差异 | 有差异 | 无差异 |
成熟度 | 一般 | 高 |
应用场景 | 特殊(移动端、风格修改) | 广泛 |
管理机制 | 持平 | 持平 |
栅格瓦片的原理与机制
通过分层分块生成切片文件的思路进行缓存构建,并且从坐标系、地图、图层风格以及数据范围等方面考虑了缓存更新问题。
栅格瓦片的常用类型
-
UGCV5:存储于本地磁盘目录文件
-
MongoDB:存储于MongoDB分布式文件系统
瓦片格式 | 存储方式 | 存储位置 | 支持的平台 | 分发方式 |
---|---|---|---|---|
UGCV5 | 本地磁盘文件目录 | ouput输出路径\cache\ | Linux、Windows | 可直接拷贝文件分发 |
MongoDB | MongoDB分布式文件系统 | 数据存储于指定目录,地图的切图结果为切片库中的一个切片集 | Linux、Windows | 支持在MongoDB系统间直接拷贝分发 |
分布式存储缓存
地图缓存存储在分布式文件系统中,提升地图瓦片的存取速度和支持的并发数
部分内容来源网络,如有侵犯到您的权益请联系leeke98@foxmail.com进行下架处理