合法的经济化的GIS解决方案

有客户提出如下要求:

   基于WEB

   提供电子地图的基本功能(无非是缩放、鹰眼,拖曳,标注[文本,简单的点,面])

   GIS数据与业务数据整合,业务数据存储在SQL SERVER 2005中

 

这里问题的关键就是SQL SERVER 2005了。

 

   SQL SERVER算是商业数据库中对空间数据支持的最晚的一个了吧,

   所以才有大名鼎鼎的MsSqlSpatial,在SQL SERVER 2008未出来之前,赢得了无数名声。

   但是微软做了一个表面对自己有利,但可能对自己造成一个长达5-10年的不利影响,只在SQL SERVER 2008支持空间数据功能。

   其实即使是中国这个微软产品的狂热拥趸的市场,无论是政府采购还是企业采购,如果选择SQL SERVER作数据库,SQL SERVER 2005也占据绝大多数市场, 在我看来SQL SERVER 2005版本刚刚进入成熟期,2008版本还不够成熟,你不见2008 的HOTFIX一个接一个,SP1出来后还是不停的有补丁的补丁出现, 对比SQL 2000,  保守估计SQL SERVER 2005的生命周期应该也有7-10年吧。

   总而言之,我觉得这个是微软的一个小气的商业败笔。如果他把空间数据打包成一个类似POSTGRESQL的POSTGIS的扩展补丁免费发放,同时兼容SQL  2005/2008,将大大巩固和提高他的产品的占有率,对于微软来说,这不是一个多大的技术难题吧。

   好了,这是个幻想,抱怨过了,还是要提出一个解决的方案:

   最终,基于SQL SERVER 2005 (+MsSqlSpatial)+ POSTGIS整合。

 

   当然如果是极小型的应用,你可以合法直接用SQL SERVER 20008的EXPRESS版,当然同时会具备EXPRESS版的种种限制。

   至于非法的,我就不说了,我还是很拥护合法的东西的。

 

   对于开源的GIS数据库,POSTGRESQL 的POSTGIS算是比较有名了,几乎所有的WEB GIS平台都支持了,除了那些二百五。

   最终证明,这个选择在经济上是正确的,在技术上是痛苦的。

   我们的整个架构是JAVA EE平台的,GEOSERVER也顺理成章的当选了。

   但是,GEOSERVER 所使用的GEOTOOLS至今未提供一个好用的SQL SERVER的gt2-jdbc-sqlserver包,老的GEOSERVER1的版本

倒是有人写了个,但是未看到被正式纳入版本,只能算是个通房小丫头,并且老的GEOSERVER1所具备的混乱架构不太适合二次开发。

   对比一下GEOSERVER 2和1就会感到这种差距,GEOSERVER 2 基于的GEOTOOLS的版本也是做了巨大的升级的,参照老的版本作新的版本是完全行不通的。仔细看了gt2-jdbc-sqlserver的源码,新的gt2-jdbc-sqlserver包完全与MsSqlSpatial不搭边,而且由于刚开 发出来,有很多低级的BUG。

   所以为了使得GIS数据与业务数据整合, 必须要写一个MsSqlSpatial的gt2-jdbc实现。

   略去其中种种的痛苦不说,中间我甚至有些放弃了,向客户提出升级到SQL SERVER 2008,不过还是被驳回了,主要是SQL 2005已经采购了,而且客户的客户是都是用的这个版本的SQL SERVER。只好悻悻的继续痛苦并痛苦着。

   当然,结局不是杯具,我终于写出了这个版本gt2-jdbc实现,实现了最初的目的,为党和国家省下了一大笔钱。

   我被幸福了。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值