平台服务离线部署+渲染定制化
有这样一种场景,一些地理数据是不能外传的,甚至在数据的结构上比较特殊,但同时希望用到GeoHey平台上的功能对数据处理。
数据不能上传,和使用在线的平台服务是非常矛盾的两个条件。GeoHey在线平台已经满足了通用的一些数据来源例如:shapefile、postgresql、csv等,可是个性化的数据结构层出不穷,“一万个读者眼里有一万个哈姆雷特”,同样,一万份数据就可能会有一万种数据结构上的特征。
但即便是这样,我们依然可以解决。
在前不久,我们便遇到这样一个案例:
甲方希望可以使用GeoHey在线平台上的数据可视化功能来渲染他们的地理数据,但是他们的数据绝大部分都是不能外传的,直接使用在线平台功能是不可能了。
而且,他们的数据有一个明显的特征,每份数据的几何数据基本上是一样的,都是中国的行政划分,每份数据的属性数据在变化。他们的数据价值重点在属性数据上,且这部分数据是不能外传的,几何数据可以重复利用。
我们把所有会用到的几何数据(中国行政划分)存放于数据库中,作为固定不变的基础数据,将GeoHey的平台服务以及地图渲染引擎离线部署在甲方的服务器上,这样,引擎渲染地图时,从数据库中读取空间数据,再读取服务器上的属性数据,做数据匹配最后生成地图瓦片。这样便可以保证,属性数据一直在甲方的服务器上流动,不会外传。
当然,我们只是在渲染引擎之前可以支持的数据来源上追加了甲方这种类型的数据来源,之前所支持的“shapefile、postgresql”等 依然支持。
我们通过离线部署平台服务并在渲染引擎中追加数据来源的方法解决了甲方的问题。