论文部分内容阅读
随着大数据时代的到来,在低空领域具有显著优势的无人机逐渐成为精准遥感数据获取的重要工具之一。由于数据量庞大,对于不同来源、不同时间的遥感数据,现阶段缺少标准化的数据处理流程及合理的存储和可视化模型。为了高效管理和充分利用数量庞大的无人机数据,发挥无人机的优势,本课题设计了一种支持高并发的多维多源无人机遥感数据的展示平台。本文结合分布式集群和NoSQL技术,从数据存储结构、缓存策略两个方面对系统实现进行优化;并以植被监测应用为目标,设计了相应的系统应用功能。主要完成的工作如下:(1)为解决海量无人机数据的存储问题,设计了一种基于HBase的数据存储结构。在完成无人机原始数据预处理的基础上,为了缩短数据I/O操作时间,用Hilbert编码建立索引。针对无人机数据的多维多源特性,分析遥感数据局部性特征,设计了具有可扩展性的HBase存储表结构。另外,数据存储采用低配置、多服务器集群方式,只需增加服务器的数量就可以满足不断增长的数据量对存储空间的需求。(2)为了加快地图浏览的响应速度,提高系统的并发能力,设计了一种基于Redis的缓存策略。系统采用基于内存的Redis作为缓存数据库,能够降低对磁盘的直接访问频率,提高系统响应速度。在分析用户浏览地图行为特征和瓦片金字塔结构的基础上,设计了一种邻域预取的缓存策略。从广度、深度两个方面考虑,提前将与显示区域邻近的热点数据缓存到Redis中,并设置allkeys-lru算法为替换策略。实验证明,与传统的单张瓦片作为缓存粒度相比,邻域预取缓存策略的缓存命中率可以提高约34%。(3)为了更方便地完成平台开发,系统采用模型-视图-控制(Model-View-Control,MVC)模式作为开发框架。利用基于事件机制的异步I/O模型Node.js完成服务器端开发,提高系统并发能力。客户端主要利用开源JavaScript地图库OpenLayers,完成应用程序功能开发。在应用功能上,除了完成基本的可见光图像展示外,平台还支持时间维度的图像展示,以及不同波段多光谱图像的动态组合。另外,平台还为植被监测,提供了基本的测量、统计、shape文件生成和上传等功能。(4)为了测试系统的并发能力,搭建测试环境,设计了多组对比实验。与传统方式对比,从缓存命中率、系统平均响应时间和服务器吞吐量三项指标对系统并发能力进行评价。测试结果表明,本课题提出的解决方案,具有支持高并发的能力。此外,该系统还具有支持数据动态扩展的优势。