论文部分内容阅读
位置服务基于用户位置向用户提供各类实时服务,其既是一种重要的服务形态,也是现实世界中诸多应用的基础。诸如基于位置的智慧旅游推荐、面向限定时空域的城市公共服务推送、商圈消费群体精准实时定位等应用,首先需要快速查询出位置相关的空间区域对象,进而采用快速的相似匹配计算来实现信息的实时推荐与推送。位置相关的空间对象查询性能是保证实时性服务的重要影响因素。但空间对象的庞大规模和多样化与查询的连续性、高负载、实时性形成了一对矛盾,在海量空间对象的存储和访问管理上提出了巨大挑战。本文即针对位置相关服务的实时性需求,在海量空间对象的存储与访问优化等方面展开深入研究。本文面向位置服务相关应用中的空间对象查询需求,针对空间对象的空间特征引入GeoHash地理编码系统,并充分开采分布式内存计算架构的性能优势,设计了综合键值对存储结构和列式存储模式的分布式存储模型以及空间对象范围查询模型。为进一步提升各类应用的实时性响应性能,本文基于分布式内存计算架构的大内存和多核特征,设计了分布式的多级索引结构,优化了大规模空间对象的访问性能,并从理论分析、实验验证两个维度充分证明了提出模型的有效性和高效性。具体研究内容与成果如下:首先,针对传统数据库和大数据计算平台的处理模式差异,设计了大规模密集型的实验来验证二者在不同应用和数据集上的性能表现。主要基于二者在处理架构、存储介质以及查询策略等方面的差异,分别设计实验对索引、内存、磁盘I/O等影响大规模数据处理性能的核心因素展开性能测评,进而基于性能表现综合分析各计算平台对不同任务的适用性,为后续的大规模数据计算平台选型和大规模数据的计算优化提供了事实依据。其次,针对海量空间对象的存储需求和实时性访问约束,综合分析了现有的分布式存储系统的优缺点,提出融合空间编码技术和多版本数据的海量空间数据存储模型。该模型采用GeoHash编码将二维空间对象转换为一维字符串键值,进而与键值对存储模式、列存储模式融合设计了新型的底层数据存储结构,能支持任意属性的空间对象存储和面向不同列族的查询优化。同时,基于空间对象编码提供的“空间相邻性、编码相似性”的特点,充分利用多版本数据的管理机制,提出了“高精度编码,低精度存储”的管理策略,并理论证明了编码精度和查询性能之间的影响关系。大量的实验结果也表明所提出模型对海量空间对象具有很好的存储可扩展性和查询性能。最后,为进一步提升海量空间对象的实时性查询响应,本文充分开采了分布式内存计算平台的性能优势,设计了基于分布式内存的海量空间对象存储模型和查询优化架构。在充分利用GeoHash编码与键值对存储模式的基础上,本文充分兼顾内存空间的随机访问特性和有效管理需求,设计了基于RDD结构的空间对象内存存储模型,进而融合列式存储的数据局部加载优势,优化了不同应用对数据的访问性能,从硬件性能开采和存储策略两个角度最大化提升了空间对象的查询性能。同时,基于分布式内存环境设计了常驻内存的字典树索引结构,实现了高效的分布式查询架构。大量的实验结果表明,该内存存储模型在保证数据存储可扩展性的基础上,面对不同的查询负载更好地满足了实时查询响应。