基于SQLServer的空间数据存储器的设计与实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
长春理工大学学报
Journal of Changchun University of Science and Technology
第7卷第3期2012年3月
Vol.7No.3Mar.2012
基于SQLServer 的空间数据
存储器的设计与实现
刘宝娥
(集宁师范学院,内蒙古乌兰察布,012000)
[摘
要]
随着信息技术的发展,数据量的逐渐膨胀以及分布式地理信息系统GIS 中的发展,对空间数据以及地理数据
的管理提出了更高的要求,而传统的关系型数据库难以满足空间数据存储以及地理信息系统客户端应用程序连接的需要,由此,应通过以面向实体的数据模型为基础,通过SQLServe 的关系型数据库的管理系统,以相应的功能以及数据引擎技术,实现了对海量空间数据的一体化存储,满足了地理信息系统的实际发展需求。[关键词]SQLServe ;空间数据;存储器;设计;实现
[中图分类号]
TP311.132.3
[文献标识码]
A
[作者简介]
刘宝娥(1975-),女,在职硕士,讲师,研究方向为计算机教学。
空间数据管理包括空间数据模型和空间数据库两个方面的内容体系。当前,地理信息系统基础软件平台所沿用的空间数据模型,从而在一定程度上导致了空间实体关系以及时空变化的相关描述与表达、数据的组织、空间的分析等方面具有较大的局限性,难以满足新时期空间信息系统基础软件平台的以及应用系统发展的实际需要,由于现实对象较多,从而导致了空间关系日渐复杂,要描述空间对象之间的关系需要大量的数据,由此,对空间复杂数据的管理应基于空间数据模型,构建空间数据库系统。通过以地理信息系统软件的发展需求为基础,结合MAPGIS 面向实体的空间数据模型以及SQLServer 数据库的应用特点,实现了利用空间数据引擎实现对空间数据与属性数据的一体化存储方式的设计和实现。
一、空间数据存储器系统设计
(一)空间数据模型
对空间数据模型的研究以及设计在当前地理信息系统(GIS )发展过程中有着重要的作用。空间数据模型MAPGIS 中采用了面向对象的设计原则和思想,通过以地理实体为中心,实现对面向实体的空间数据模型的构建和发展。建立观察范围内部的地理世界的视图模式。该模型以描述实体特性以及实体之间关系为基础,实现对人类理解的地理世界语义环境的模拟。MAPGIS 空间数据模型以地理数据库—数据集—类为数据组织的层次,也就是非空间的实体抽象为了实际的对象,而空间的实体则被抽象地定义为要素,具有同样类型结构的要素构成了要素类,同样类型的对象构成了对象类。若干要素类以及对象类组成了要素集,要素集的汇集则构成了地理的信息数据库。由此,从相应体系的结构上可分为参照系、要素类、对象类、关系类、动态类、注记类、修饰类、要素数据集、子类型、几何网络、域集和规则集。从而实现了对空间数据存储系统的整体设计和系统定义。
(二)空间数据引擎
空间数据引擎(MAPGIS-SDE )实现了空间数据库解决方案,空间数据引擎基于关系数据库系统(RDBMS )以及地理信息系统之间的中间件部分,实现了对空间数据模型到关系数据模型RDBMS 之间的关系映射,并通过关系型的数据库存储以及管理和快速检索的以TB 为单位的海量数据库。空间数据引擎具有以下几个方面的特点:
1.引擎机制。MAPGIS-SDE 在服务器端以及客户端存在分布,客户端以软件的应用为基础,并且未上层的应用客户提供了SDE 接口,实现了对用户标准空间存储、查询以及分析提供了服务体系,承接了客户端需求。服务器端以及客户端之间的数据传输模式采用了异步的缓冲机制,通过服务器端,将所要提取的数据存放入缓冲区,而后整批发向客户端,实现相应的应用模式,从而在很大程度上提高了网络传输的效率。
2.接口技术。空间数据存储以及空间数据服务的核心在于空间数据存储器,为有效保证空间数据存储器的跨平台的特性以及对商业数据库的访问效率的保障,空间数据库的引擎应通过一致性服务接口的提供,针对不同的数据库采用不同接口技术的使用,例如,针对SQLServer 可采用ODBC 和ADO 接口技术。
3.物理部署。空间数据存储系统的引擎,能实现与数据库管理系统服务器部署在同一服务器上,或是分开部署在不同的服务器上,可根据实际的需要对空间存储系统进行相应的部署,从而有效减轻数据库服务器荷载,提高相应数据库的运行效率。
(三)存储器系统架构
空间数据存储器由空间数据库引擎、商业数据库两部分组成。具体实用于空间是数据库。空间数据库引擎实现了对各类空间数据的存储管理。该类数据包括数据字典、表、存储过程等等,并面向用户提供了访问的接口。数据字典提
----237
供了最终用户所需要的数据信息,数据字典信息与空间数据模型密切相关。数据字典的总体结构分为两个类别,分别是管理字典和数据字典。数据字典根据空间信息模型分为六大部分或体系:矢量数据、子类型数据、关系类数据、域集数据、规则集数据和几何网络数据。而管理字典则在很大程度上实现了对相应数据的管理,实现了版本的记录、日志的记录等,每一种数据都通过若干的信息表构成,具有其各自的系统框架。
(四)系统性能
1.数据库端性能的提高。空间数据库设计性能的良好与否,与空间数据系统的效率和质量直接相关。空间数据系统通过对存储过程中的优点的利用实现了对数据库操作性能的提高。通过将基于事务的大量的SQL语句加入到存储过程中,不仅能有效增强SQL语句的产讯功能,提高了检索的效率,建立了灵活的检索模式,同时能完成相对较为复杂的判断和运算,在实际的网络环境操作过程中,存储过程能有效减少网络传输流量,同时能有效保护数据的完整性和安全性。
2.提高中间件访问效率。空间数据引擎服务器端采用异步缓冲机制,可将获取结果集中的数据全部缓冲到内部数据文件中,以减少SQL语句执行次数和网络传输数据量。
二、系统实现
(一)存储策略与系统模块
空间数据模型MAPGIS中以地理数据库存储以及管理地理空间数据,并通过基于文件以及基于数据库两种存储两种策略。本文探讨基于商业数据库的空间数据存储。
以SQLServer为基础的空间数据存储器大概可以分为四个层次:地理数据库层、对象管理层、数据管理层和数据存储层四个。地理数据层处于最上层,是对象和管理调用层。并通过向用户提供存储和访问数据接口。对象的管理层主要为实现要素类以及对象类等各种类型的数据形式的创建以及以实体为基础的操作。数据管理层主要实现对数据字典的管理。而数据存储层则包含了对数据存储驱动器以及商业数据库管理系统两个部分。实现了对地理信息系统GIS数据在关系数据库中的集成化的存储,并基于相应的空间数据建立空间数据库。
(二)数据存储模型
空间数据库系统将空间数据引擎(SDE)作为地理信息系统GIS应用程序以及关系数据库管理系统的中间层,实现了空间数据以及属性数据的统一集成管理,并且其集成在关系数据库中进行管理。通过利用关系型数据库中强大的数据库管理功能体系,能将存在复杂关系的地理空间信息数据存储在同一张关系表中,从而能实现连续、无缝以及还来那个的空间数据存储模式。在相应系统的实际实现过程中,空间数据的搜索引擎主要采用二进制数据存储模型,地理空间数据以二进制的形式存储在几何表中,每个地理实体对应
几何表中的一行,而几何列以二进制形式存储的只未图形数据,空间信息表依旧存储包围其形状的最小矩形坐标信息。
(三)存储示例
MAPGIS空间数据引擎实现了面向实体空间模型到关系数据模型的映射。通过对空间数据引擎相应接口的调用,实现挂了类实体数据添加到了关系数据库中,将具有同样类型的实体信息记录到空间参照表中(MPDB_SREF),并且在要素类信息表(MPDB_FCLS)几何表中添加信息记录,同时根据要素的ID生成了若干数据表实现对空间数据的存储,具体而言,相应表格体系中MA表中存储简单要素类属性信息,MF表存储各组成要素空间信息,MIL表用于存储实体图形信息。实现了对不同类别空间信息的存储。
三、结论
地理信息系统以空间数据库为基础。通过关系数据库的利用安全、高效地实现了地理信息系统数据的集成化存储和管理,从而推动了地理信息系统的发展,是相应系统发展的必然趋势。空间数据库引擎为空间数据库实现提供了相应的技术,解决了关系数据库以及地理信息系统应用之间的接口问题,实际上是实现了空间数据库的存取问题。空间的数据系统在空间表达能力、数据安全、信息共享以及空间索引等方面都具有自身的特点,并且已成功应用于MAPGIS。
MAPGIS支持面向实体的空间数据模型,该空间数据模型以地理实体及其关系的描述为核心,实现了二维和三维的空间表达。空间数据库以大型的数据库管理系统为建设的基础,借助于DBMS实现了对数据的有效管理。建立了多源空间的集成管理,同时也有效保证了数据的完整性、数据的共享和数据的安全。空间数据引擎建立适应海量数据存储和管理的数据组织机制和空间索引机制,提供了高效的查询功能。系统提供符合国际标准的访问接口。
参考文献:
[1]金玲玲,朱紫焱,王喜凤,等.基于SQLServer的空间数据存储器的设计与实现[J].微计算机信息,2007(16).
[2]王佞,罗大庸,张航.基于SDE的空间数据库的研究与实现[J].
计算机与数字工程,2006(4).
[3]田茵,张云苑.数据复制技术及实现方法[J].实验技术与管理,2003(4).
[4]郝铭,安刚,黄大刚,等.体全息存储器的设计与实现[J].南开大学学报:自然科学版,2007(4).
[5]杨雪,魏艳旭,杨丽君.多源空间数据的集成与共享探讨[J].科协论坛(下半月),2007(11).
[6]蔡万景,刘莹.基于Web的SQLServer远程备份管理系统的设计与实现[J].科技信息,2009(19).
[7]吴孟泉,崔伟宏,梅新.基于空间数据引擎的数据库设计与构建[J].计算机工程,2007(6).
[8]王富东.利用I/O端口实现大容量数据存储器的扩展[J].工业控制计算机,2000(1).
-
---238