欢迎来到论文网! 加入收藏 | 设为论文网 | 网站地图 | Tags标签 | RSS
论文网 论文网8200余万篇毕业论文、各种论文格式和论文范文以及9千多种期刊杂志的论文征稿及论文投稿信息,是论文写作、论文投稿和论文发表的论文参考网站,也是科研人员论文检测和发表论文的理想平台,lunwenf@yeah.net。
您当前的位置:论文网 > 科技论文 > 计算机论文

全球多分辨率地形数据库的设计与实现

时间:2016-01-08  作者:朱 杰 苏小平

摘要:传统基于文件系统的地形可视化系统,面对海量数据具有很大局限性,利用空间数据库实现对海量空间数据的管理已经成为当前的主流技术,本文基于金字塔模型设计了全球多分辨率地形数据库,对数据文件进行有效合理的存取和管理,通过基于四叉树索引技术从海量地形数据中快速获取目标数据,提高实时渲染速度,最后简单介绍了客户端/服务器模式的数据库访问方法。
论文关键词:空间数据库,金字塔模型,多分辨率,数据引擎
  传统的地形可视化系统对地形数据的管理基本上都是基于文件系统,这在数据量较小时可以提供较快的数据存取。然而,随着数字地球(DE:Digital Earth)和全球信息网格(GIG:Global Information Grid)概念的相继提出,具有多分辨率、海量数据的大规模虚拟地形场景使得文件系统在数据的存取和管理上存在很大的局限性。由于无法预先将整个场景的数据全部装载至内存中,文件系统只能将大型场景分割成若干小场景,导致索引速度大幅降低,相互之间也难以实现查询等空间操作[1]。另外,文件系统也无法解决数据安全、并发操作、网络共享等问题。而空间数据库恰好能弥补这些不足,目前,空间数据库在一些大型三维GIS系统中已经开始应用,通过利用空间数据库的对象建模、数据共享、分布计算以及空间查询等优点,可以实现三维场景数据的动态加载、远程存取、高逼真度实时空间漫游等特性,足以替代文件系统在传统地形可视化系统中的地位。因此,全球虚拟地形场景要求通过空间数据库完成海量地形数据的存储管理,实现地形数据的动态调度和实时渲染。
  2 全球多分辨率地形数据库的设计
  在文献[2]中提出了一种基于海量数据库的DEM动态可视化方法,通过Oracle 8i数据库完成海量DEM数据的存储、管理和实时调度。基本思路是先利用等间隔划分方法对海量DEM数据进行空间划分,形成一个金字塔结构,然后将金字塔结构中一层DEM数据以一个数据表存储到Oracle数据库中,并以二进制大对象(BLOB: Binary Large Object)作为DEM数据存储的数据类型。BLOB是一种非结构性的数据,它可以进行任意的裁减与添加等操作,在存储空间方面,可以在一条记录中处理高达4GB的数据。当原始DEM数据在数据库中存储时,它首先被分解为块,组织成二进制的数据流,然后根据数据库原点和块的大小创建其索引。DEM数据表包括层数据管理表与层数据表两种,层数据管理表包含对数据库中DEM数据的总体描述信息,而层数据表存储DEM实体数据。实时调度时,采用多线程技术实现前后台两个数据页缓冲区之间的交换,其中Oracle数据库负责为后台缓冲区提供实时数据。该方法充分利用了Oracle数据库的优势和普通个人计算机的硬件渲染能力,实现了海量DEM数据的存储、管理、动态装载和渐进描绘。这种方法实际上代表了目前基于海量数据的地形可视化与空间数据库的典型结合模式,也是今后海量数据存储管理的主要发展方向。
  2.1 需求分析
  地形数据的存储单元,主要包括两类:文件型和数据库型。文件系统存储方式,一般适用于小型应用系统。与文件型存储单元相比,数据库在检索速度、管理、并发控制能力方面有着明显的优势,特别是现代数据库采用了缓存、聚类等技术,使索引速度提高了几十倍,在多用户并发访问环境下,数据库的优势会更加明显。全球多分辨率地形数据库需要实现的功能包括:全球多分辨率地形数据的存储与管理、全球多分辨率地形可视化数据的快速调度以及基于网络环境的客户端/服务器模式的数据库访问。
  2.2 语义描述
  地形数据的调度是按照一定的顺序规则进行查询,因而地形数据信息的存储是有规则的。本文中,先将地形数据按照金字塔模型存储在文件中,然后由文件导入数据库。金字塔是一种多分辨率层次(mufti-resolution hierarchy)模型,即采用倍率方法构建,形成多个分辨率层次。
  数据库的结构与金字塔模型是相对应的,每一层对应于数据库的一个表,每一条记录对应于每一个数据块,数据块存储的位置与所在层的位置相对应。这种结构使文件和数据库保持一致,包括层的编排、块的编排、块的索引等,使存储与管理更加灵活。
  2.3 逻辑结构设计(E-R关系图)
  根据E-R图,将概念模型转换为逻辑关系数据模型。本文在金字塔模型上建立的数据库,每个LOD级别为一层一个表,每一层由相应的数据块构建,不足的行或列由原行或原列块数计算。表的命名即可以LOD层命名,如“LOD0”,也可以附加上行和列的块数,如“LOD_X_Y”。每个地形数据块为表中的一条记录,包括行号、列号和数据三个字段组成。
  字段名
  数据类型
  行号
  列号
  数据
  Integer
  integer
  BLOB
  例如:
  0
  0
  二进制数据
  采用数据库存储数据,本文通过大二进制存储类型(Oracle9i中是BLOB类型,Sql server中是image类型)存储地形数据,包括DEM数据和纹理数据。Oracle9i中以BLOB字段类型存储二进制大对象,包括三种形式:声像数据、二进制数据和大文本数据。最常见的应用是存储图形、声音等对象,此外大型的二进制对象、OLE对象也可以通过BLOB类型存入数据库,如果文本对象过大,超出了文本类型的规定长度,则必须用BLOB字段进行存储(本文的地形块数据就属于此类)。在Sql server中,它提供了两种特殊数据类型 text和image用于定义BLOB数据。SQL Server的基本存储单元是页,每页2KB。一条记录必须存放在一页内,不能跨页存储,因此SQL Server中的每条记录的最大尺寸为1962个字节。对于一般数据类型的字段,其值直接存储在分配的数据页中,而对于text和image类型数据,值是存放在另分配的数据页中的,内容通过数据链串在一起。数据库记录的text和image类型数据字段内放的是数据链地址指针,这种存储机制使text和image类型数据可达2GB。因此,在经常使用的编程环境中如不能直接支持BLOB字段,需要调用相应的函数完成BLOB的使用。
  3 全球多分辨率地形数据入库模式的设计
  基于数据库的多分辨率地形数据的调度,首先是要在数据库中存储数据。本文按照金字塔模型生成的数据文件,包括DEM数据文件和纹理数据文件,通过数据库接口将数据文件中的每个数据块依次导入到数据库中相对应的字段,并生成相应的记录。
  以SQL Server为例,采用ADO接口访问并操作数据库。ADO(ActiveX Date Object)是Microsoft数据库应用程序开发接口,是建立在OLE DB之上的高层数据库访问技术。ADO技术基于COM(Component Object Modal),具有COM组建的诸多优点,可以用来构造可服用应用框架,被多种语言支持,能够访问关系数据库、非关系数据库及所有的文件系统。另外,ADO还支持各种客户/服务器模块与基于Web的应用程序,具有远程数据服务RDS(Remote Data Service)的特性,是远程数据存取的发展方向。

查看相关论文专题
-------------------------------------------------------------------------
加入收藏  打印本文
上一篇论文:基于人机交互的界面设计研究
下一篇论文:移动自组网的分簇算法研究
科技论文分类
科技小论文 数学建模论文
数学论文 节能减排论文
数学小论文 低碳生活论文
物理论文 建筑工程论文
网站设计论文 农业论文
图书情报 环境保护论文
计算机论文 化学论文
机电一体化论文 生物论文
网络安全论文 机械论文
水利论文 地质论文
交通论文
相关计算机论文
最新计算机论文
读者推荐的计算机论文