论文部分内容阅读
空间数据(spatial data)是一种典型的多维度数据(multi-dimensional data),与传统的字符数字型数据(alphanumeric data)的显著区别在于空间(多维度)数据通常具有更复杂的结构和更大的数据集合,并且在应用领域上空间数据与传统数据也有较大的区别。这些显著的差异使得传统数据存储管理和查询处理机制无法较好地应对空间(多维度)数据管理的需求。考虑到不同应用领域更大规模的数据查询处理和存储管理的应用需求,在“十一五”863项目“基于先进计算架构的高性能空间分析中间件”和“基于新软硬件体系结构的网络地图服务器关键技术研发”的支持下,本文研究分布式环境下空间数据存储和查询处理技术,具体包括:分布式环境下的空间数据索引,分布式文件系统数据传输协议,高效空间查询算法等方面的内容。论文的主要贡献和创新点如下:
1.提出了一种高效的空间数据查询处理算法。该算法用于解决当两个查询数据集合相同时的全局最近邻(All-k-Nearest-Neighbors,AkNN)问题。不同于现有算法采用的直接遍历索引结构来获得结果,该算法分为两个阶段,在第一阶段计算局部的近邻(Nearest Neighbors,NNs)结果,然后根据第一阶段的NNs结果获得第二阶段全局查询的搜索空间。同时,为进一步提高算法效率,还提出优化策略来降低算法的I/O和CPU开销。与其他算法相比,该算法极大地提升查询处理效率和性能。实验和分析表明该算法可以高效地加速查询处理的过程,在最优的情况下,查询处理过程中的磁盘开销可以降低75%,整体查询时间可以降低60%。同时该算法可以将计算过程和MapReduce计算框架结合起来,实现算法的并行化。
2.提出并实现了针对分布式文件系统数据随机访问的协议。针对随机读取过程中所读取的数据长度变化导致的传输浪费,该协议采用允许用户在连接初始化过程中配置传输数据块(PACKET),设置最合适的传输数据块长度。引入数据节点阻塞机制避免浪费传输数据和随机读取过程中反复建立TCP连接问题。实验表明该文件传输协议能够有效提升分布式文件系统随机读取的性能,降低了数据传输过程中网络带宽的开销,避免客户端与分布式文件系统的数据节点重复建立连接所导致的开销,从而在整体上保证随机读取过程中高效的数据传输。
3.提出并实现了基于分布式文件系统的空间索引(Spatial Access Methods,SAMs)。该索引结构结合树形(tree-like)索引系统的特点和分布式文件系统的特性,优化索引的物理组织结构,调整节点分布方式,有序化索引节点内部数据,采用分级缓存机制平衡计算节点的负载和性能。该索引结构充分利用分布式文件系统的优势,为用户提供与单机系统上一致的语义,从而可以充分利用现有的空间数据查询处理算法,而不需要针对分布式索引结构重新设计查询处理算法。
4.提出并实现了基于分布式文件系统的空间矢量数据查询处理的框架。该框架以HDFS系统为存储支撑技术,将空间数据和索引文件存储在HDFS中。运行时系统包含了查询处理和索引建立模块,并提供面向索引系统的多数据集缓存管理机制。空间查询处理依托于索引结构或MapReduce计算框架,采用基于规则的方法选择最优的执行方式完成查询处理过程,上述研究成果已应用在织女星地理信息系统中。