瓦片数据MBTiles存储简介

地图制作者面对一个数以百万计的地图瓦片残酷的现实:大多数文件系统和传输协议对处理数以百万计的图像不是很有效,在磁盘为FAT32格式中,一个文件夹中最多含有65536个文件,HFS最多能列出32,767个文件,EXT3超过20000个文件时会变的很慢。不论是你通过USB还是网络来复制数以百万计的瓦片数据是低效并且缓慢的。MBTiles利用SQLite数据库来存储,并提供一种规范,使得数以百万的瓦片数据存储在一个文件中,而且SQLite数据库支持多种平台,所以使用MBTiles在移动设备上浏览瓦片数据是比较理想的方式。

  • 简单介绍下SQLITE

如果你之前使用过SQL数据库,比如MySQL或PostgreSQL),那么使用SQLite数据库会觉得很熟悉,您可以运行熟悉的SQL SELECT、INSERT、UPDATE语句,并创建表、索引、视图。SQLite和其他数据库之间的区别是:每个SQLite数据库只包含在一个文件,没有外部权限系统,数据库后台进程,或配置。每个.sqlite文件是一个独立的数据库,你可以从电脑复制一个.sqlite文件到移动设备中,它的行、表和索引都可完全使用。

SQLite是很小的并且是无处不在的:iTunes使用它来存储元数据,firfox使用它来存储缓存信息,还有一些其他产品(虽然过时了,但仍记忆犹新)

总之,SQLite非常适合作为一个便携式,单个文件解决方案和用于存储和网络地图服务。

  • 在SQL中使用瓦片坐标

在WEB地图介绍中我们看到,瓦片是参照了他们的z / x / y 形式坐标,在磁盘存储上,他们通常存储在以z、x为名字上的目录中,这样就有一个瓦片文件路径是0/0/0.png,MBTiles提供了这样一个功能:瓦片表

这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”这张表很容易查询并回答一个特定的瓦片或问题,例如“在这张地图中级别为8时有多少张瓦片?”

  • 使用视图引用冗余的图像

地图覆盖大面积的纯蓝色像海洋或空的土地,造成成千上万的重复、冗余的瓦片数据,例如,4/2/8的瓦片在太平洋中间,可能看起来就是一张蓝色图片

虽然它可能是一些处于第3级,但在16级可能存在数以百万计的蓝色图片,他们都完全一样。

MBTiles通过视图使用这些冗余瓦片数据可以减少占用的空间,而不是一个单一的、文字表,MBTiles实现者经常把瓦片表分成两种:一个用来存储原始图像和一个存储瓷砖坐标对应那些图片:

瓦片的表是这两个表的视图,允许成千上万的瓷砖坐标参考相同的图像大字段:

使用这种技术,MBTiles可以比普通文件系统存储更有效率  —有时提高60%或更多

  • MBTiles 在使用上

MBTiles是一种存储格式,他常被TileMill来导出或上传自定义地图。你可以通过MapBox ios SDK 来使用移动设备上MBTiles离线文件。

如何下载Mbtiles离线地图数据相关推荐

  1. 下载OpenStreetMap离线地图数据并搭载瓦片服务器

    一.下载OpenStreetMap离线地图数据 OpenStreetMap可以在Geofabrik Download Server进行下载. 红框部位可直接下载洲区域地图. 也可以点击洲名称,进入下载 ...

  2. 添加离线地图数据到三维地图服务器

    添加离线地图数据到三维地图服务器 发布时间:2020-03-03 版权: 搭建离线地图服务主要是两个步骤:一是:下载离线地图服务需要的地图数据:二是:将下载的离线地图数据发布成地图服务:只有做好这两步 ...

  3. 如何下载高德离线地图瓦片数据

    离线地图分为两种:一种叫"金字塔瓦片"数据,一种叫"矢量地图数据".我们看的在线地图比如,百度,谷歌,高德等等网页上的地图,都是金字塔瓦片:另外一种是手机上用来 ...

  4. 如何下载谷歌离线地图瓦片数据

    离线地图分为两种:一种叫"金字塔瓦片"数据,一种叫"矢量地图数据".我们看的在线地图比如,百度,谷歌,高德等等网页上的地图,都是金字塔瓦片:另外一种是手机上用来 ...

  5. 如何下载百度离线地图瓦片数据

    离线地图分为两种:一种叫"金字塔瓦片"数据,一种叫"矢量地图数据".我们看的在线地图比如,百度,谷歌,高德等等网页上的地图,都是金字塔瓦片:另外一种是手机上用来 ...

  6. 如何下载TMS离线地图瓦片数据

    离线地图分为两种:一种叫"金字塔瓦片"数据,一种叫"矢量地图数据".我们看的在线地图比如,百度,谷歌,高德等等网页上的地图,都是金字塔瓦片:另外一种是手机上用来 ...

  7. 基于高德离线地图数据实现GPS经纬度逆解析城市信息

    一.获取离线数据:        如果你只是想实现逆解析功能,那该步骤可以跳过,因为地图数据已经收集打包好了.直接文末找git路径就好了. 准备工作:python  numpy h5py   open ...

  8. 离线地图数据包下载(全国地图数据)及应用到手机APP

    Oruxmaps作为一款非常强大的户外gps导航软件,可以实现离线地图导航,在没有手机信号.飞行模式下都可以正常导航:同时功能强大,可以自定义离线地图,支持记录/跟踪轨迹.导入/导出航迹.根据航迹导航 ...

  9. 分享全国离线地图数据

    全国离线地图影像数据,最高分辨率为0.3米,数据为谷歌地球最新数据,无偏移无水印,WGS84投影,数据大小22TB 全球离线影像数据,分辨率为10米,无偏移无水印,WGS84投影 获取地址:http: ...

最新文章

  1. (Java常用类)日期时间类
  2. JavaSE基础chapter1Homework
  3. 将数字转换为中文表示
  4. python3.70 wxpy_python3.5中的wxpydeprectionwarning
  5. 汽车上的一些名词缩写解释
  6. build vue3 后压缩的文件在哪_Vue 3学习:4. 集成vuex
  7. javascript的规范
  8. sqlserver 2008完整安装教程
  9. MAC安装maven步骤
  10. 反洗钱不力,银行遭遇央行15亿天价罚单
  11. 程序员能力的四个境界
  12. 2020年全球及中国电源管理芯片(PMIC)行业发展现状及市场竞争格局分析,全球市场集中,德州仪器市占第一「图」
  13. 人类其实很脆弱,一个小小的条件变化,就能导致人没法享受元宇宙
  14. photoshop怎么设计淘宝天猫海报amp;nb…
  15. js 按照中文拼音来排序
  16. 【OpenBMC 系列】2.OpenBMC镜像编译流程
  17. 微信个性签名服务器维护,微信个性签名显示由于系统维护
  18. 我的世界服务器无限背包,我的世界无限背包存档
  19. 基于Unity hdrp制作的转盘抽奖程序
  20. java super父类方法_java super关键字,super调用父类构造方法详解

热门文章

  1. 01 K近邻算法 KNN
  2. H5与web的区别?
  3. mysql右下角图标没了_图标,教您怎么解决右下角图标不见了的问题
  4. 如何在右下角显示服务器图标,win7通知区域图标、电脑右下角图标显示和隐藏如何设置?...
  5. python画直线--2点法
  6. 快速用户体验研究方法
  7. unix 文件清理一例
  8. 【模拟】找规律填数字
  9. ctf pwn 萌新学习记录 基本rop(题目来自Wiki)
  10. 视频主观质量评价和视频客观质量评价