论文部分内容阅读
随着资源描述框架(Resource Description Framework,RDF)应用领域的扩大,RDF数据量也飞速增长。分布式存储以其高吞吐量、并行化处理、高扩展性和高可用性的优势成为目前解决大规模数据存储和管理问题的有效方法。分布式存储的关键技术之一是有效的数据分割,然而RDF图顶点幂律特性,数据的不断更新变化为RDF数据分割提出严峻挑战。另外,存储与索引是实现数据高效检索的关键,由于RDF数据本身存在语义和结构两方面特征,如何结合语义和结构两方面特征存储和索引RDF数据是另一项重要的挑战。本文针对RDF数据分割和索引存在的问题和挑战展开研究,主要研究包括以下几个方面。(1)面向静态RDF图数据的多层平衡分割。针对现有多层图分割算法面对RDF图顶点关系不对称、顶点幂律性问题所出现的粗化速度过慢,分割不平衡等问题,提出一种基于能量标签传播的RDF图平衡分割算法。算法改进了标签传播算法的更新和传播机制,利用模块度更新节点标签,利用能量衰减策略控制标签传播规模。最后在粗化图上通过引入的平衡调节机制控制图分割的平衡性。为了提高算法分割质量和分割效率,算法还提出了针对唯一属性顶点和高度顶点的初始分割图优化策略。实验验证该算法能够有效提高顶点粗化速度、均衡顶点的粗化规模,控制图分割平衡性。(2)面向动态增量RDF图数据分割。针对RDF数据及存储节点的伸缩变化问题,提出一种支持增量的RDF图分割算法。算法设计基于边割和负载均衡的双目标函数,实现对增量数据的有效分割。算法首先改进了 路贪婪图分割算法,依据目标函数实现已有数据和部分初始增量数据分割。然后对增量数据分别从元组增删、整体分割状态调整和存储节点伸缩变化三方面给出数据动态变化时图分割的调整方案。实验验证该算法能够有效的处理增量数据分割,维持分布式系统整体性能的稳定。(3)面向深度RDF双层索引存储方案。针对元组模式检索时频繁的连接操作及SPARQL复杂查询中普遍存在链式结构信息所反映的语义关联特征,提出一种基于路径的双层索引存储方案。在索引的过滤层,利用路径模板树索引筛选符合条件的全路径集合。在索引的匹配层,通过分层边索引实现已知谓语的有效路径匹配。同时在每个分层边索引上实现了基于k2-tree的元组压缩存储与检索。实验验证本文所提出的双层索引方案能够有效的处理复杂查询,降低检索时中间结果连接规模,提高存储空间的利用率。(4)面向广度分布式RDF索引方案。针对现有星型结构相关研究中存在的构建规模不均、分割副本率高、分割效率低和分布式索引连接边频繁通信问题,提出一种基于星型结构的分布式RDF索引方案。该索引方案首先依据RDF图节点广度优先搜索方式获得的基本粒度单元构建权重图,并实现基于权重图的分割。然后在每个存储节点创建压缩链接索引,实现基于星型结构的快速检索。同时,为避免压缩编码相互转换,实现了基于压缩的逻辑操作。实验验证了本文提出的基于星型结构的分布式索引能够有效提高查询并行性和检索效率。