GIS开发:mbtiles数据合并

简介: GIS开发:mbtiles数据合并

mbtiles是一个sqlite的数据库,用来按照一定组织格式格式存储切片地图数据,常用在单机、移动端的地图包中,在地图数据的发布,对比直接的切片文件数据,具有存储统一,便于移动拷贝。

在通过互联网下载的数据,转换成mbtiles后,发现数据不够,又需要重新下载,下载的时候,还需要将前边的数据再下载一遍,对于高级别的切片,下载时间还是挺慢的。

mbtiles本身就是一个sqlite数据库,这个可以通过java、C#等开发语言进行开发,所以,可以通过开发,将两个或者多个mbtiles数据进行合并。

下图是mbtiles文件的表结构:
image.png
metadata是切片的一些常用信息,map是切片的索引信息,images是具体的存储切片文件数据,是以二进制信息将图片存储到数据库中。

在mbtiles的合并中,metadata中的bounds信息,需要根据各个mbtiles的文件,取最大的范围,或者根据几个mbtiles计算最大范围,要是范围不够,发布后数据也不能访问全面。
image.png
合并时,要对比map中的索引信息,根据zoom_level、tile_column、tile_row组合进行判断,如存在的数据,就不需要写入了,不存在的数据,首先将以上信息写入到表中,在生成tile_id的guid,在images表中,以生成的guid和切片的图片,组合写入到表中,这样就达到数据合并的效果。
image.png

相关文章
|
2月前
|
存储
kettle开发篇-行扁平化
kettle开发篇-行扁平化
83 0
|
2月前
|
Ubuntu 数据可视化 Shell
一键访问多功能数据解决方案:如何轻松构建和管理APITable智能多维表格
一键访问多功能数据解决方案:如何轻松构建和管理APITable智能多维表格
58 0
|
10月前
|
存储 SQL 关系型数据库
GIS系统中WKT、SRID、EPSG概念解析
之前一直对WKT、EPSG、SRID不是很理解,总是混淆,今天看了一下,清晰了很多,顺便总结一下。
335 0
|
存储 JavaScript 前端开发
GIS开发:简单的数据差值
GIS开发:简单的数据差值
126 0
GIS开发:简单的数据差值
|
前端开发 定位技术 Python
GIS开发:分享osm切片计算
GIS开发:分享osm切片计算
194 0
|
存储 编解码 定位技术
GIS开发:tianditu切片计算
GIS开发:tianditu切片计算
159 0
|
JSON Java 定位技术
GIS开发:使用开放API获取数据
GIS开发:使用开放API获取数据
215 0
|
SQL 存储 NoSQL
GIS开发:使用空间数据库
GIS开发:使用空间数据库
193 0
|
定位技术 Python
GIS开发:开源影像切割
GIS开发:开源影像切割
142 0
|
存储 监控 负载均衡
海量非结构化数据存储中的小对象合并技术
随着人工智能, IoT 等技术的推广普及,智能监控,智能制造等新兴领域蓬勃发展,涌现出了越来越多的海量非结构化数据存储需求。