论文部分内容阅读
由于RDF(Resource Description Framework)数据具有表达灵活,数据交换方便等优点,其数据量在以惊人的速度增长。传统的RDF数据存储系统或以关系数据库为存储后端,或以本地存储方式存储数据,但是这些存储方式在存储大规模的RDF数据时都面临着扩展性问题。在存储大规模RDF数据时,需要降低数据的存储空间并加速查询处理。但目前提出的存储方式不够紧凑且存在大量的冗余数据,导致在生成查询计划和执行过程中消耗了大量的时间。高扩展的RDF数据存储系统TripleBit旨在为大规模RDF数据提供一个高效的存储和查询方案。利用RDF数据特点,系统将RDF数据表达成一个位图矩阵。为了降低数据占用空间,在数据存储时针对各个数据表特征和作用设计了相应的压缩算法。在底层具体存储时采用了基于内存的存储方式降低了系统在存储和查询时的I/O开销,并采用了数据分块的存储方法,既使得存储管理方便又使得存储结构紧凑,加速了查询处理。为了提高RDF数据查找的速度,系统设计了两类索引分别加速系统数据块的定位和谓词未知的查询处理。在查询RDF数据时,系统基于启发式规则简单有效地生成查询计划。在执行查询计划时,根据查询类型采用不同的执行策略,并利用并行执行子系统提高连接查询操作的效率。对于多变量的查询计划,采用二步执行策略减少查询过程中产生的中间结果,并动态地调整查询计划。与目前流行RDF数据存储系统RDF-3X进行性能对比测试的结果表明,在存储空间上比RDF-3X至少降低了40%,在查询性能上比RDF-3X至少提升了3倍。实验进一步表明,TripleBit所采用的查询计划生成方式和索引技术对查询处理性能的提升有很大的帮助。