随着这些年GIS行业的蓬勃发展,GIS应用已经深入到了越来越多的行业。
以一个有高清卫星影像作底图的GIS系统为基础,然后在此基础上加载各种行业数据,并开发行业相关的业务功能,更有利于提升业务功能的实用性,也更有利于业务数据的分析呈现和方案决策等。
然而,GIS也是一个有一定技术门槛的领域,从我们所接触各行各业的用户来看,只是一个卫星影像底图的加载,就让不少用户成功入坑。
其实,你遇到的这个坑,我们早就替你踩过了!
如果你想将所在行业数据与业务功能在高清卫星影像上作展示,你就需要一个GIS系统作为基础。
虽然现在的GIS开源平台有很多,但各有各的优缺点,如果在GIS方面又几乎0经验的话,那么就会存在一定的学习成本,也可能难以避免地会地踩一些坑。
这里,我们只讲一个我们曾在为客户开发GIS系统时,踩过的关于高清卫星影像瓦片加载的坑。
在我们所遇到的客户中,有很多用户都需要将海量卫星影像的瓦片进行散列存储,也就是一个瓦片存储为一个独立的文件。
我们很早以前承接一些GIS项目时,也是这么做的,由于当时的瓦片地图数据量只涉及到一个市或一个县,刚开始问题并没有突显出来。
直到在一个项目中要需要加载好几个省的数据时,我们就遇到了地图瓦片加载卡顿,地图瓦片复制慢,地图更新维护不方便等一系问题。
我们也曾试图用各种数据库存储瓦片后再调用,虽然效率有所提升,但依然不能让客户满意。
眼见项目验收的日期一天一天逼近,那种无比煎熬的日子,真是让人记忆犹新。
不过很幸运的是,我们在经过一轮又一轮的反复尝试之后,终于设计出了一种便于海量数据存储的方法。
再结合研发的高效检索算法之后,其流畅的加载效果才终于赢得了用户的满意,项目最终也顺利通过了验收!
那种命悬一线,九死一生的感觉,不知道你是否也曾体验过呢?
可谓是一朝被蛇咬,十年怕井绳。
从此以后,但凡有用户想按瓦片方式存储海量卫星影像时,我们都会苦口婆心的与对方沟通他可能会遇到的问题,让人感到欣慰的是几乎所有用户都欣然接受了我们的建议,我们也对大家的信任一直心存感激。
这里需要强调的是,并不是说瓦片散列存储就完全不对,而是当量太大的时候就很容易遇到效率瓶颈!
试想一下,如果把每一个地图瓦片比作一本书的话,散列的地图瓦片就像是图书馆中的书没有放到书架上一样,而是就这么往地上一扔,如果要从这堆书里找出想要的那本,得找到什么时候呢?
虽然地图瓦片是有编号的,且是有规则的,但当瓦片数量达到海量级别时,势必带来加载效率低下,从而导致地图显示存在卡顿、不流畅的问题。
当然,你完全可以通过加大硬件设备的投入,全部用高速硬盘存储,用高昂的CPU和主板等硬件去对冲检索效率低下的问题。
虽然问题是解决了,但它不是最经济实惠的,我认为也是非常不可取的。
如果我们能在较为普通的硬件设备上,通过更好的存储方法,以及更科学合理的算法设计,也能达到高效检索加载,让地图显示更流畅,这不是很好吗?
先将散列的卫星影像有序打包为多个文件,每个文件就相当于图书馆的一个书架。
然后,再通过高效检索的软件算法,在可以大大地提升瓦片加载效率的同时,更新维护海量地图数据也极为方便,因为我们可以将整个文件用另一个新文件进行无损平替。
该卫星影像的海量存储与检索技术,不依赖于任何数据库和第三方插件,我们在水经注的所有产品中都用到了该项技术。
基于该项技术的经验总结,我们专门申请了一项名为《一种基于瓦片地图的地图绘制方法》的发明专利。
最近,该项发明专利证书已下发,这里为大家作一下简要的分享。
《一种基于瓦片地图的地图绘制方法》的发明专利证书,如下图所示。
发明专利证书第一页
发明专利证书第二页
《一种基于瓦片地图的地图绘制方法》的发明专利详细信息,如下图所示。
发明专利详细信息
水经注从事GIS行业多年,其中也踩过不少坑,我们同时也在不断总结经验,并将这些经验技术应用到产品中,也会不时地将一些经验总结成为文档与你分享!
每个行业都有各自的经验和窍门,有时候你突然间所谓的顿悟,可能只是别人的基本功,你所遇到的99%的问题,别人可能都已经解决过了,我们只有加强相互学习交流,才能促使彼此更快的积累经验,更快的进步!
你有一个苹果,我有一个苹果,我们交换一下,一人还是一个苹果;你有一个经验,我有一个经验,我们交换一下,一人就有两个经验。
希望我们不时分享的些许经验总结或GIS资源,能让你在GIS相关的工作中少走弯路,也希望你能不吝与我们分享你的宝贵经验。
期待你的分享!