GIS共享平台建设需求说明.docx
《GIS共享平台建设需求说明.docx》由会员分享,可在线阅读,更多相关《GIS共享平台建设需求说明.docx(14页珍藏版)》请在冰点文库上搜索。
GIS共享平台建设需求说明
GIS共享平台需求说明
1.概述
1.1.系统背景
在现代化统计的社会信息系统中,由85%以上的数字均具有地理属性,地理信息系统正应用于各个领域。
地理信息系统可以提供给用户各种空间数据,以在日常中给用户提供各种防火措施,在发生火灾的情况下给用户提供各种辅助决策方案,为火灾的防范和处理提供各种科学、快捷的解决通道。
1.2.现状分析
GIS共享平台,为各部门和各行业提供统一的基础数据和信息标准,推进GIS技术在全区的使用。
这大大加快了信息化建设中原有业务系统与现代化的GIS平台整合的步伐,进一步提高了办公的效率。
2.系统建设方案
2.1.系统建设目标
本系统的建设目标是为建立统一的GIS共享平台,为现在的业务系统以及将来的GIS应用系统提供标准的GIS接口。
2.2.系统建设原则
2.2.1.实用先进性
采用业界先进且成熟的技术,充分考虑所选产品升级时的平滑度,保证所选的软硬件具有较长的生命周期,系统建设坚持以需求为导向,立足于应用,重视软件系统开发投入。
2.2.2.开放性
系统的系统软件设计既要满足目前需要,又要考虑将来的发展,要能够根据业务的发展变化而不断扩展。
另外软件设计还要能够提供多软件提供商的可互联性和可移植性,不依赖于某一特定的计算机硬件和特定的操作系统,便于与其它系统进行信息交互。
2.2.3.安全可靠性
系统的不稳定和不安全会给管理带来严重的损失,因此可靠性和安全性是一个重要前提,也是有关信息工程建设的重点要求之一,因可靠性和安全性产生的后果直接关系到利益和安全。
所以系统的软硬件设计必须符合有关规定,采用安全认证的硬件设备与软件,做到切实有效防止外界的非法入侵与恶意破坏。
要做到系统内部的安全性、系统平台的安全性以及用户的管理的安全性。
要求提供方便有效的安全控制手段。
2.3.系统建设的技术路线
WebGIS就是展现于网络上的GIS。
在上世纪八十年开始,出现的大量GIS软件,基本上都是C/S架构的,也就是首先需要在本机上装有专业的GIS软件,然后用户根据需求使用这些GIS软件。
当然这种桌面端的GIS软件有其天然的优势,比如开发相对简单,不需要Internet支持,以及可以做更多的复杂功能、响应相对迅速等优势。
但是同时,其缺点更是不容忽视。
首当其冲的便是不便于推广,而不便于推广的原因在于C/S系统其本身的天然的劣势:
不便于更新,不便于跨平台,不便于用户在不安装指定客户端的情况下使用。
基于B/S的GIS系统越来越多的开始提供服务,并且在RIA(富客户端)技术、AJAX(动态网页)技术的涌现和成熟,WebGIS也基本能展现出与C/S一样的效果和功能。
而WebGIS的大发展,更是用户的需求,地图服务提供商的大规模扩张便是最好的证明。
当前GIS技术发展的最新趋势是采用关系数据库或对象关系数据库管理空间数据,如ESRI的ArsSDE,构成了GIS数据服务器,可以充分利用RDBMS数据管理的功能,利用SQL语言对空间与非空间数据进行操作,同时可以利用关系数据库的海量数据管理、事务处理(Transaction)、记录锁定、并发控制、数据仓库等功能,使空间数据与非空间数据一体化集成。
系统将采用关系数据库管理空间数据和属性数据,确保空间和非空间数据的一体化集成。
2.3.1.开发方式
地理信息系统根据其内容可分为两大基本类型:
一是应用型地理信息系统,以某一专业、领域或工作为主要内容,包括专题地理信息系统和区域综合地理信息系统;二是工具型地理信息系统,也就是GIS工具软件包,如ARC/INFO等,具有空间数据输入、存储、处理、分析和输出等GIS基本功能。
而消防地理信息系统是一种应用型的系统。
应用型的地理信息系统的开发方式有以下三种:
1.独立开发
指不依赖于任何GIS工具软件,从空间数据的采集、编辑到数据的处理分析及结果输出,所有的算法都由开发者独立设计,然后选用某种程序设计语言,如VisualC++、Delphi等,在一定的操作系统平台上编程实现。
这种方式的好处在于无须依赖任何商业GIS工具软件,减少了开发成本,但一方面对于大多数开发者来说,能力、时间、财力方面的限制使其开发出来的产品很难在功能上与商业化GIS工具软件相比,而且在购买GIS工具软件上省下的钱可能还抵不上开发者在开发过程中绞尽脑汁所花的代价。
所以我们不提倡这种开发方式。
2.单纯二次开发
指完全借助于GIS工具软件提供的开发语言进行应用系统开发。
GIS工具软件大多提供了可供用户进行二次开发的宏语言,如ESRI的ArcView提供了Avenue语言,MapInfo公司研制的MapInfoProfessional提供了MapBasic语言等等。
用户可以利用这些宏语言,以原GIS工具软件为开发平台,开发出自己的针对不同应用对象的应用程序。
这种方式省时省心,但进行二次开发的宏语言,功能极弱,一些高级功能的实现比较复杂,所以对开发周期可能形成一定的影响。
3.集成二次开发
集成二次开发是指利用专业的GIS工具软件,如ArcView、MapInfo等,实现GIS的基本功能,以通用软件开发工具尤其是可视化开发工具,如Delphi、VisualC++、VisualBasic、PowerBuilder等为开发平台,进行二者的集成开发。
这种开发放方式同以上两种方式比较有开发资金占用少,开发周期短,功能实现全面的优点。
2.3.2.WebGIS的框架
ØWebGis中间件
开发时,我们要选择适合自己的中间件。
不同的中间件有其特性,如果是一般项目,tomcat等是很合适的,其使用方便,相关技术支持和资料也很好查找。
但是如果是大型的集群项目,Weblogic和WebShpere可能是更好的选择,但是这两个中间件首先配置就是有难度的,同时不同的版本,可能对某些jar包的支持存在问题。
ØWebGis地图服务器
在WebGIS中,与其他一般的Web工程有明显区别的就体现在地图服务器上面。
一般的地图服务器都由已有的软件商提供了解决方案,比较流行的有AGS、Geoserver、MapServer、SuperServer等。
利用这些地图服务器我们能很好的实现地图的发布以及对一些空间查询和空间操作的支持。
ØWebGis业务服务器
业务服务器是Web项目里不可获取的一环。
不管是利用哪些已有框架编写,比如Spring、Struts、Hibernate等,我们一般还是会将业务服务器的实现分为三个层次,即有名的MVC模式。
而不同的框架里这三个层次的实现各有差别。
ØWebGis数据
WebGIS的数据大致可以分为三种,一种是地图、影像数据,一种是空间属性数据、一种是业务数据。
地图、影像数据一般是一些png或者其他格式的数据组成。
3.业务功能
3.1.GIS功能
•在地图上选中商务楼,进一步察看商务楼信息。
•在地图上选中街镇,进一步察看该街镇的所有商务楼信息。
•在地图上放大、缩小、移动地图。
•在其他的模块选中某个商务楼,如按查询条件查询到的楼宇信息,可以在地图上定位并突出显示。
3.2.商务楼信息
•显示某个商务楼的外观,包括该商务楼具有多少栋、每一栋的楼层数,是否具有裙楼等。
•移动鼠标选中某一个楼层,可以进一步查看到楼层的平面布局。
3.3.楼层平面
某个楼层的房间平面分割。
选中某个房间,可以显示该房间的目前出租企业、历史出租纪录。
点击某个房间,可以进一步查询所出租的企业的详细情况。
3.4.GIS数据录入
❿解决多个部门录入的企业在地图上定位冲突的问题:
企业在地图上的定位是通过楼宇的位置实现的,因此工商、税务、质监、统计等部门提供的企业如果需要定位到地图上,都是通过指明该企业所对应的楼宇实现。
这样,不同部门录入的相同企业不会在地图上的位置出现偏差。
❿指定楼宇对应在地图的位置可以使用鼠标在地图上直接点击方式实现。
3.5.查询
在地图上选定某个大楼。
点击查询该大楼的楼宇信息,进入楼宇效果图。
在楼宇效果图点击某个楼层,可以进入该楼层的平面图。
楼层的平面图可以选中某房间,定位到该房间的出租的企业资料。
3.6.接口的标准化
在应用系统及接口方面,其整体规划主要指系统的建设必须充分考虑与现有各历史遗留系统、后期应用系统的扩充建设,以及各相关的各单位部门的互联和信息交换,设计统一的标准接口规范,保证系统的开放性。
在系统建设整体规划中,必须从各层面考虑其应遵守的各种标准和规范,包括规范、业界规范,以保证系统的互联、可扩展性、开放性、安全性等。
由于涉及到不同部门之间的数据交换,所以我们需要从整体考虑建立一套数据交换的标准,包括数据的内容,数据项的编码对照规则等。
3.7.GIS数据的维护
•对于一个GIS系统,其数据采集的工作一般是比较大的。
•对于本系统,我们已经提供了的地图信息,这部分的内容日后需要维护的工作量比较少。
需要维护的GIS空间数据包括:
•每个商务楼在地图上的定位,这个可以在界面上通过点击鼠标实现。
•重点商务楼的效果(楼层数、外观),可以使用现成的绘图工具来完成。
•每个楼面的平面布局,可以使用现成的绘图工具来完成。
4.系统功能设计
4.1.地理服务管理器
对图层进行规范化,比如自动调整图层顺序,对图层数据进行合法性检查;自动封闭多边形、自动剔除悬线等。
对来自任意应用系统对图形数据的请求,自动从相应的数据库中提取图形数据,并且组织成发布文件,返回给应用子系统。
该模块还负责对图层的显示参数进行调整,比如图例、标注样式、显示比例等。
4.2.制图工具箱
提供各种工具实现业务图形、专题图的制作等。
并且可以实现图形格式的转换、图形裁减等。
4.3.空间分析工具箱
为各业务分析模块提供底层支持,如缓冲区生成、图形叠加拼和、局部拓扑关系调整、最短路径计算、分析以生成各种专题图。
4.4.综合文档管理器
为各种业务设计分析报表的模板,并且可以根据设置的排版格式自动生成报表。
4.5.构件化开发平台
4.5.1.应用整合和信息门户
应用整合的关键是要实现组织结构信息和权限管理信息的跨应用共享和同步。
应用整合的成功标志不仅仅在于用户“一次登录”的实现,更重要的是,还必须实现组织结构信息的单点维护和权限管理的机制统一,否则“一次登录”的稳定性和可用性将大打折扣。
每个应用都必然涉及组织结构信息和权限管理机制。
在传统的开发模式下,在不同的应用中,虽然组织结构的基本概念类似,但是数据结构、功能、特性和性能指标则迥然不同。
这就意味着当用户单位增加了新员工或者有员工离职时,系统管理人员必须手工在各应用中面对不同的操作界面,按照不同的操作要求,进行相应的人员调整和变动。
当应用程序很多时,这种方式不但工作量很大很枯燥、而且还很容易出错,往往会影响所有应用的正常运转。
权限管理的情形与此略有不同但大体接近,此处不再赘述。
为了解决手工同步组织结构信息所存在的问题,有必要建立一个底层平台。
系统通过这个底层平台提供的应用整合框架,进行组织结构信息和权限管理机制的同步、共享和复用。
该框架应该具有“广谱”特性,即:
能够适应应用开发的各种模式(无论该应用基于Java技术,还是基于.Net技术),以松耦合的方式实现应用的整合。
4.5.2.工作流模型
4.5.2.1.工作流管理平台
工作流构件化协作应用开发平台专门针对业务流程重组和业务流程自动化的信息平台。
纯浏览器的应用界面,更实现了系统的平台无关性,为用户的系统扩展提供了有力的技术保证。
设计强大的流程管理平台赋予自定义流程的能力,一方面它可以适应业务过程重组以及人员变动等需求的变更,另一方面它又是扩展自身工作流应用的工具。
工作流管理平台的特性:
Ø多组织
Ø特定业务无关
Ø与各种业务紧密集成
Ø支持各种高级特性和全球标准的
Ø可扩展的
4.5.2.2.Web表单系统
Web表单系统是工作流管理平台配套使用的业务处理表单引擎。
表单引擎为良友集团的系统管理人员提供了基于纯浏览器技术的可视化表单定义工具,利用此表单定义工具,用户无需编程即可以自行定义业务处理的Web界面,并将定义好的Web表单与工作流管理平台中定义的流程进行绑定。
大大提高了系统的可扩展性。
Web表单系统的特点有:
❿全面采用基于浏览器技术的可视化界面进行管理和维护。
❿支持对表单进行任意层次的分组。
❿支持在不同的环节使用不同的表单(组)。
❿支持每个环节使用多个表单。
❿表单中的数据可以成为工作流程条件判断的参数依据。
❿表单中的数据可以来源于不限数量的多个数据表,必要时可以自动创建这些表。
❿可以针对每个环节中的每个表单的每个字段进行授权。
❿可以使用任何URL作为环节中的一个表单,这种外挂“表单”可以与表单定义系统定义的表单进行数据共享。
4.6.信息集成
信息集成是指将各种类型的数据整合到一个运行平台里,并使之能够相互间协调工作。
不同类型的数据分别具有不同的数据特性,如:
•业务数据的特性需要通过数据库技术来反映现实世界的实际业务,可以通过各种报表、分析图来进行展现。
业务数据主要包括基本信息(企业、商务楼)及动态信息。
•空间数据用来反映二维、三维的空间信息。
空间数据是通过矢量来表达的。
地图管理系统(GIS)、楼宇的平面展现将使用到空间数据。
•文档数据主要是一些文字信息如文章、报告、新闻等。
该平台应具有以下两个重要的特征点:
1)信息集成,包括以下类型信息的集成
•业务数据:
如企业数据库、商务楼数据库等。
•空间数据:
如地图信息GIS、商务楼及楼层布局的矢量信息。
•文档数据:
如基于数据的分析报告、工作动态等。
2)数据集成,实现数据连接和交换。
•各部门实现数据互通。
•都可能利用到平台的业务数据、空间数据、文档数据提高工作效率。
5.空间数据库设计
5.1.数据库建库原则
共享性和独立性统一先进性与经济性统一减少数据冗余历史轨迹保留。
5.2.分布式空间数据库存储技术
一般认为GIS已经步入由传统的技术驱动转向应用驱动的发展阶段。
GIS在项目级、部门级应用中已取得巨大效益,但在继续深入到企业化、社会化的过程中,遇到恶劣前所未有的数据共享难题。
在整个GIS中最基础的部分就是数据,数据同时也是GIS项目中最昂贵的部分,一般占整个系统建设成本的50%~80%。
现实情况,一是随着GIS的广泛应用,社会上积累了大量的GIS数据资源;二是GIS系统被认为是信息孤岛,各应用部门总是根据自己的具体情况和应用需求选择不同的GIS平台,从而导致GIS数据在数据结构、数据模型、数据格式上都存在很大的差异,数据难以共享。
在数据库领域中也存在着不同数据库系统之间的互操作问题。
解决这个问题的最广泛也是最成功的方法是分布式多数据库技术。
该平台采用分布式多空间数据库系统,实现对分布的、异构的空间数据的共享。
5.2.1.分布式多空间数据库系统
一个分布式多空间数据库(或称为全局空间数据库)是由若干个已经存在的相关的空间数据库集成的。
这些相关数据库(称为本地、参考或局部空间数据库)分布在由计算机网络连接起来的多个场地上,并且在加入到多空间数据库系统之后仍具有自治性。
如果参与空间数据库之间存在异构性,则称之为异构型分布式多空间数据库(一般简称多空间数据库系统)。
多空间数据库系统在参与空间数据库之上为全局用户提供一个统一存取数据的环境,使得全局用户像使用一个空间数据库系统一样使用多空间数据库系统。
对多空间数据库系统进行管理,并提供透明访问的软件叫做分布式多空间数据库管理系统。
5.2.2.空间数据的分布
所谓空间数据的分布是指分布式空间数据库中的数据并不是存储在一个场地的计算机存储设备上,而是按照某种逻辑划分分散地存储在各个相关的场地上。
这是由地理信息系统本身的特性决定的。
首先,地理信息的本质特性就是区域性,具有明显的地理参考;其次,地理信息又具有专题性,通常不同的部门收集和维护自己领域的数据。
因此对空间数据的组织和处理也是分布的。
多空间数据库系统是在已经存在的若干个空间数据库之上,为全局用户提供一个统一存取空间数据的环境,并且又规定了本地数据由本地拥有和管理,所以采用分割式的组织方式――所有的空间数据只有一份,按照某种逻辑划分分布在各个相关的场地上。
这种逻辑划分在分布式数据库中叫做数据分片。
实际上,分布式多空间数据库系统的集成所遇到的大部分问题都是由于空间数据的分片引起的。
5.2.3.分布式多空间数据库的集成
一般把涉及同一类数据但在处理方法,以及数据模型、数据格式上存在各种差异的数据源称为异构数据源。
在GIS领域中,这种异构数据源随处科建。
分布式多空间数据库的目标就是要将两个或多个已经存在的异构空间数据库以信息集成的方式联系起来,实现信息共享。
也就是将两个或多个物理上分布异构的空间数据库,在逻辑上集成为一个虚拟的空间数据库。
全局用户可以查询这个虚拟的数据库,就好像它已经被物化了。
既然式虚拟数据库,分布式多空间数据库一般不存储数据,而是将全局用户的查询翻译成一个或多个对参与空间数据库的查询,然后将那些参与数据库对全局用户查询的回答进行综合处理,最后把结果返回给全局用户。
为了能够将物理上分布异构的空间数据库集成为逻辑上统一的整体,分布式多空间数据库基本上采取了“异构同化,同构整体化”的集成思想。
5.2.4.对象关系模型
对象关系数据库实际上是关系数据库(RDB)和面向对象的数据库(OODB)这两者的一种折中方案,或者说是关系数据库和面向对象的数据库不断融合的结果。
关系数据库是现在的主流数据库,这主要是由于关系数据库技术在数据库系统方面发展得非常完善,有强大的管理功能和可操纵性,而且,关系模型具有坚实的数学基础。
但是,关系数据库高度结构化的数据模型使得它难以表达现实世界中的复杂对象,如超文本、图形、图象、测绘、地理空间等非结构化数据;由于数据类型简单、固定,RDB只能存储表征事物属性的数据,而无法抽象化地模拟事物行为,从而对事物的信息记录是不完全的。
而面向对象的数据库基本上解决了这些问题。
随着面向对象的思想发展起来的OODB,有很多突出的优点:
1.引入对象和类概念。
对象是其自身所具有的状态特征及可以对这些状态施加的操作结合在一起所构成的独立实体。
类是对一组客观对象的抽象。
它把某一组对象所共有的特征(包括结构特征和行为特征)集中起来,以说明该组对象的性质和具有的功能。
OODB管理的数据称为对象,实际操作对类来进行。
对象本身具有的特性和类的层次特性,使得OODB能够清楚有效地描述现实世界中事物的分类,理解和管理各类信息数据。
从而使OODB的语义表达能力较RDBMS强的多。
2.增加管理数据内在动态联系的能力。
从对象和类的概念中,我们知道OODB不仅管理对象的状态,还可以管理对象的行为,这就是我们强调的RDBMS所不具备的管理数据内在动态联系(即抽象数据)的能力,在把这些抽象类型数据向OODB存储的过程中,其抽象特性能被完整保存,所以,OODB的结构与行为是统一的,相关联的。
这一特点又使得OODB具有表达知识的能力,具有演绎和推理功能,这也是OODB能够提供决策信息的原因。
3.OODB提供一组预定义类型,支持非常复杂的数据类型所提供的这些预定义类型可以扩展,用户可以自定义系统没有的新数据类型。
这些新的类型数据与系统原有的类型数据在系统级上具有完全相同的操作方式,从而减少用户编程量,减少网络通讯开销,保证数据的一致性。
5.2.5.时间轴技术
基础地形数据以及遥感影像以测绘标准的1:
2000的图幅进行切割,然后存储到Oracle数据库中。
而且每个存储单元中,每一个要素都连接到一个时间轴,这样当数据变化时,数据库中只记录变化部分的数据。
因此,数据实际上是可以分布式存储的,但对最终用户而言,他们只看到某一个时间客户一个完整的数据图。
当时间设置在最新的刻度时,则查询的是历史数据。
因此,通过对一个时间轴的管理,可以对历史资料进行查询统计,对现状和历史进行对比分析。
这样的优点在于:
1可以表达经常变化的事物。
2变化的部分通过网络传递时,不需要很大的网络带宽。
3利于高效的备份和还原。