论文部分内容阅读
城市三维空间数据具有海量特性,以湖北省武汉市数据量为例,其地上下空间数据、属性数据、纹理数据总量高达TB级,不可能以单机文件格式存储,数据库服务器的引入正是为了缓解海量数据的存储问题。而三维GIS数据访问具有局部性、偶然性,因此搭建以普通PC为客户端和海量空间数据库为服务器的客户机/服务器(C/S)模式已成为解决这类问题的基本思路。客户端直接连接数据库服务器端,频繁的磁盘I/O会显著降低数据调度的效率,因此建立自适应的多级缓存机制,在服务器端将数据缓存在高速内存中,结合预调度技术,可有效提高三维空间数据调度效率,满足三维GIS实时可视化需求。在客户端和数据库服务器之间加入一层中间件——应用服务器,来提供服务器端缓存数据和预调度的功能是十分必要的。针对建筑模型、地质模型、道路网络模型、管线模型等模型的几何数据与纹理数据以及地形数据等内容,在应用服务器端建立多类型、多尺度的数据缓存。客户端请求数据时,在缓存算法和调度策略的保证下,可显著提高数据调度的效率。本文从加速三维GIS数据调度的需求出发,针对三维空间数据的特点,分析并设计了三维空间数据的表达与存储结构,围绕三维空间数据动态调度的数据流这条主线,对三维空间数据的多级缓存技术从具体设计和通信架构的角度,进行了深入的分析研究。论文的主要研究工作总结如下:1)分析了前人提出的各种数据模型,并结合三维空间数据的特点,采用面向对象的思想,设计了兼顾空间关系和属性关系的三维空间数据结构,该结构为三维空间数据的表达与存储奠定了基础。2)设计并实现了基于文件系统和数据库系统的三维空间数据库模型,该模型符合国家三维GIS标准,同时支持用户的扩展,可以满足海量三维空间数据存储和可视化的需求。其中文件系统作为海量三维空间数据的建模和编辑平台,具有灵活高效、移植性强的特点;数据库系统作为海量三维空间数据的统一管理平台,具有功能强大,安全性强的特点;两者之间的数据可以相互无损转换,共同满足单用户和多用户对三维GIS数据的使用。3)针对空间特征较强的空间要素对象、关联模型等空间数据,设计了顾及空间特征的缓存替换算法,该算法可根据用户的需要,高效地替换出指定空间区域中的缓存数据。针对空间特征不强的纹理、材质等空间数据,设计了顾及时间和命中率的缓存替换算法,该算法实现了传统算法的高效扩展。该缓存结构对海量空间数据的动态调度机制提供了有效支持。4)基于ACE自适配通信环境,设计了适于海量三维GIS多级缓存通信的应用服务器架构,对应用服务器的设计从I/O策略、并发策略和缓存策略方面做出了详细分析,并提出了多种可配置方案。客户端设计方面提出了连接池方案,减少网络服务资源的浪费。5)提出一种面向三维空间数据传输的应用层通信协议,包括数据处理,管理客户端向服务器端发送数据请求和服务器端针对客户请求发送具体三维空间数据;策略定制,管理客户端请求服务器端采取何种策略获取数据和发送数据;错误处理,管理接收方或发送方对错误的处理方式。同时,将三维空间数据分为几何数据、属性数据、纹理数据和空间关系数据,以方便服务器端发送数据和传输控制。在应用层上保障了三维空间数据网络传输的高效性与准确性,为三维空间数据的网络传输和集成共享提供了可参考的通信协议。6)选定了500M的测试数据,对应用服务器的不同策略集成的不同配置版本进行了吞吐量和响应时间的效率测试,指出了不同配置版本在不同的调度情况下性能表现的区别,以及不同策略对服务器性能的影响。并在多级缓存模式和单级缓存模式下,分别测试了客户端三维GIS可视化的情况,分析了多级缓存的优势和缺点所在。7)整个传输架构设计开发基于面向对象、跨平台的ACE网络开发工具包实现,ACE工具包是一个优秀的网络通信开发软件工具包,其应用领域一直在不断的扩大,本选题将ACE工具包结合进三维地理信息系统的研发中来也是对ACE理论的进一步实践和检验。在多级缓存、应用服务器架构和三维GIS通信协议方面实现了一定的创新,基于ACE通信框架,在数据库和客户端之间加入应用服务器,提供缓存数据功能,实现了了三维GIS系统多级缓存功能,有效地提高了海量空间数据的调度速度。提高海量三维GIS空间数据的调度效率是一个复杂而系统的工程,它与计算机的软、硬件结构和网络设备的效率紧密相关。本文单从多级缓存的角度对加速数据调度的关键问题进行研究和论证,并将试验结果应用到国家高技术研究发展计划(863计划)地球观测与导航技术领域重点项目的相关课题中。