- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于水下地形分析中空间数据存储与管理方法的探讨髙宋寒
摘要:本文主要介绍了水下地形分析中关于水深, TIN数据的数据库存储解决方案。从空间数据在水下地形分 析中存储和管理的需求进行了分析,概述了其中所涉及到的 几个数据模型,并对当前关系型数据库空间数据存储的几种 方法做了比较,最后根据数据模型的特点,给出了一个基于 大数据二进制数据流存储并利用四叉树做索引的空间数据 的数据库存储方案。本文中主要探讨了水下地形分析中空间 数据在数据库中的存储和管理的方法。
关键词:二进制数据流;数据存储;四叉树
一.空间数据在水下地形分析中存储和管理的必要性
随着数据库以及编程访问技术的不断成熟和完善,用数 据库来代替传统的文件形式管理数据,并利用数据库访问接 口编程来维护,就能很好地解决文件形式所带来的缺点,同 时,又可以实现一些新功能满足实际工作中的需要,还能实 现与GIS平台的结合进行数据的信息管理。长期以来,在航 道系统中,水下地形分析是一项重要的工作,而数据则是进 行这项工作的基础。这里的数据,主要是大量离散的水深数 据,还有建立TIN (不规则三角网)生成DTM (数字地面模 型)过程中的辅助数据。在当前水下地形分析应用中,原始 数据大多数是以文件形式来存放和管理的,比如,水深点数 据直接以外业实测后得到的CAD图形文件形式保存。
一 ?数据库设计时的原则及目标
考虑一些所要管理的数据,主要是水深数据,辅助数据 TIN数据。对于这样的数据对象,考虑到数据之间的相关性 (比如水深数据和其派生的三角网数据的联系),时间和空 间产生的版本的差异性以及在水下分析应用过程中的一般 流程,在进行数据库结构设计的时候需要遵循一些原则:(1) 尽量减少空间数据存储的冗余量;(2)提供稳定的空间数据 结构,在用户需要改变时,该数据结构能迅速做相应的变化;
(3)满足用户对空间数据及时访问的需要,并能高效地提 供用户所需的空间数据检索结果(4)在空间数据和相关元 数据元素间维持联系,使元数据正确对空间数据进行描述。
二?数据库设计时涉及的空间数据模型
在进行数据库设计时首先要考虑涉及的空间数据模型。 水深数据,是最重要的原始数据,其信息主要是三维坐标 (X , Y, Z)和其ID号;辅助数据,主要是建立DTM过程 中生成的三角网数据,是由水深数据派生出来的。三角网数 据主要有组成三角形的顶点信息,三角形编号等。根据水深 数据和辅助数据间的关系以及其作用地位,还有编程的需 要,同时为了减少数据冗余,不采用面向对象的方式,而是 拓扑结构方式来描述其模型。
三.数据库设计和相关程序解决方案
现阶段有两种空间数据的关系型数据库存储方案:关系 模型(Relational Model )和对象关系模型(Object Relational Model )o关系模型的具体存储又分为普通几何 方式和二进制编码方式两种。关系模型的普通几何方式似乎 可以比较好地满足我们的数据模型的存放需求。但是鉴于需 要处理的数据特点,这样的方式有一个严重影响性能的缺 点,那就是容易导致记录数量庞大,影响记录的检索等操作, 并且由于数据库表记录的最大存储数量有限,很容易引起表 记录溢出,特别是采用的数据库为小型数据库,比如Access 的时候。因此,不能使用关系模型的普通几何方式。考虑关 系模型的二进制编码方式和对象关系模型。这两者的相似点 是图形数据直接采用二进制来存储。它是把几何实体的图形 信息编码成连续的二进制数据流,能以二进制,或Raw、或 图形类型字段存储在数据库中。在数据库中,存放这样的数 据的字段一般称为BLOB (Binary LargeObject)字段,是大 二进制数据的缩写。可以借用二进制编码方式,将数据信息 放置于一个BLOB字段中,只不过所存取的不仅只是对象, 也可能是若干数据集信息。基于对数据的检索,存取的方 式和频繁度等因素的考虑,还需要做点工作。
生成TIN建立DTM并且进行分析的前提是水深数据,为 了便于程序对水深数据的检索和空间过滤等操作,可以采用 四叉树做索引的思想来确定每条表记录存放的水深数据点 实体的集合。四叉树法顾及所处地域的空间实体大小和空间 实体密度来确定分割的深度。由于水深数据是点状实体,在 确定其与四叉数索引块的空间关系时候,只需要借助点在矩 形内的简单算法就可以,这就使得水深数据集的确定过程高 效而快速。
对于TIN数据,由于是辅助数据或者说是中间数据,对 其保存不是必须的(完全根据用户的喜好决定存放与否), 又派生自水深数据,根据生成其的条件不同又会有着明显不 同的结果,所以对于TIN数据,重点在于在存放好空间数 据的同时,维护好需要选择保存的那些TIN数据生成条件的 信息,比如生成TIN的最大边长限制,参与生成的水深数据 等。另
文档评论(0)