论文部分内容阅读
随着遥感技术的快速发展,多传感器、多时相、高空间分辨率、高光谱分辨率的遥感数据量也越来越多,数据类型也越来越复杂。传统的单机集中式数据存储方式无法满足高效、安全存储海量遥感数据的需求。因此,有必要探索一种遥感数据存储方式,以解决遥感数据膨胀带来的一系列问题。以Hadoop平台为基础的分布式数据存储技术为海量异构遥感数据的高效、安全存储提供了解决方案。本研究分别针对结构化数据和非结构化数据两种数据类型设计数据存储模型,其中在结构化数据节点中,部署基于Microsoft Visual Studio 2010和SQLServer 2008开发的结构化、关系型SQL数据库,用以存储近地非成像高光谱数据和属性数据;在Hadoop集群中,利用Hadoop分布式文件系统(Hadoop Distributed File System,HDFS),存储按照一定规则拆分后的卫星遥感影像数据块。为避免系统搭建过程中不必要的资源浪费,预先在虚拟环境下搭建伪分布式Hadoop集群,并在此基础上设计了卫星遥感影像数据存储模型和系统网络拓扑结构。为保证系统安全运行,在系统与用户之间引入Web服务器作为桥梁,实现了用户与系统的物理隔离,用户命令和系统数据均通过Web服务器转发;同时分别在不同层面上设置了如双电源、双硬盘、RAID 1、用户权限控制等系统安全机制。在千兆交换网内搭建包含Hadoop集群、Web服务器和结构化数据存储节点的分布式遥感数据存储系统,从而实现了遥感数据的分布式存储,并验证了系统的稳定性和高效性。主要研究结果如下:(1)实现了构化数据的存储。利用Microsoft Visual Studio 2010和SQLServer2008进行开发,设计了C/S模式的结构化数据管理系统,并部署在集群中的结构化数据存储节点中,可以实现近地非成像高光谱数据和属性数据这两种结构化数据的存储,进而实现结构化数据与非结构化数据的分离,减小了系统开销。(2)搭建了基于虚拟化平台的伪分布式Hadoop集群。利用虚拟机软件可以以传统PC机为硬件基础,虚拟出若干Hadoop集群节点,通过网络配置,实现Hadoop集群的伪分布式搭建。(3)设计了基于Hadoop的卫星遥感影像数据分布式存储模型和网络拓扑结构。通过对卫星遥感影像的递归四等分拆分编号的方式,可以在Hadoop集群中实现对整幅较大的卫星遥感影像数据的分布式存储,并形成“影像名-波段名-影像块名”的树形卫星遥感影像数据分布式存储模型。设计了星型网络拓扑结构,通过千兆交换机将各节点相连。(4)实现了非结构化遥感数据的分类型、分布式高效安全存储,并进行了系统性能验证。搭建了包含1个Namenode节点和13个Datanode节点的全分布式Hadoop集群、Web服务器和结构化数据节点遥感数据分布式存储系统。设计网络拓扑、业务流程和安全机制,实现了海量异构遥感数据的分类型、分布式高效安全存储。以一景数据量大小为885 MB的LandSat-8卫星遥感影像数据作为测试数据,分别测试单机数据服务器数据上传/下载速度和分布式系统数据上传/下载速度。分布式系统上传的平均速度为64.52 MB/s,单机数据服务器上传的平均速度24.48 MB/s。分布式系统的数据上传效率高于单机数据服务器的数据上传效率,且上传速度更稳定。分布式存储系统下载的平均速度为71.38 MB/s,单机数据服务器下载的平均速度31.52MB/s。分布式系统的数据下载效率高于单机数据服务器的数据下载效率。利用分布式系统可以实现对海量异构遥感数据的高效稳定存储,从而为更全面、更准确的遥感数据分析提供保障。