论文部分内容阅读
随着卫星技术的发展遥感影像元数据不断积累,传统的空间数据库已很难满足对快速增长数据的存储和查询。大数据技术为海量遥感影像元数据的存储、查询、分析提供了便利。面对遥感影像元数据的数据量大、计算复杂度高等特点,本文提出了DKD-Tree和SFTGridIndex两种算法。它们是基于HDFS存储和Spark分布式计算对海量遥感元数据构建空间索引和查询的方法。 SFTGridIndex是对网格索引算法的改进,并在Spark上并行化。SFTGreidIndex针对分布均匀和更新频率快的数据集,能够快速构建索引,并实现实时查询。该算法提出了三点改进:其一,提出了胖网格、瘦网格和原网格概念。胖网格可以保证查询的正确性,瘦网格可以提高查询效率,原网格可以对多边形集合进行拆分;其二,提出了一种对多边形集合数据进行拆分的新方式;其三,提出了一种避免完全覆盖分区的查询方法。 DKD-Tree算法针对分布不均匀和更新频率较慢的数据集构建索引,基于DKD-Tree算法的查询大大缩减了空间查询范围,提高了查询效率。本算法可以随着数据量的增长,增加集群节点保证查询的实时性,具有很好的扩展性,有利于构建大型地理信息系统。该算法提出了三点改进:其一,提出了一种对空间多边形集合进行拆分的方法;其二,提出了在分布式环境下,利用双队列对树形结构进行拆分的方法;其三,提出了一种在海量数据下进行分页的方法,它保证翻页实时查询,避免每次查询都使用集群,且提高集群使用率。 本文的贡献主要包含以下两个方面: 1.针对分布均匀和更新频率较快的数据集,提出了一种基于网格索引算法在Spark分布式环境下进行改进和并行化的SFTGridlndex算法。 2.针对分布不均匀和更新频率较慢的数据集,提出了一种基于KD-Tree算法在Spark分布式环境下进行改进和并行化的DKD-Tree算法。