计算机工程与应用 ›› 2018, Vol. 54 ›› Issue (18): 74-81.DOI: 10.3778/j.issn.1002-8331.1801-0266
文卫东1,李 鸯2,李文海2
WEN Weidong1, LI Yang2, LI Wenhai2
摘要: 为提升树形结构模式和级联关系模式下的查询执行效率,提出一种行列混合式存储方法。通过在列存中引入分组概念,形成逻辑上完整但局部上独立的列组物理单元。研究分析了现有单纯行存储和列存储的优势和潜在不足,并在此基础上通过模式驱动对这一存储方法进行物理设计,使得研究能够适用主流的列存架构。基于开源框架Avro的列存内核Trevni,研究对所提方法予以实现以期显著降低列存到元组转换过程中的开销,同时保证数据交换仅限于查询所需的列。为提高在复杂模式下的可用性,基于union对存储结构进行优化,使得访问能够集中于有效的单元中,并基于空值支持关系查询场景中不满足外关键字约束的模式。实验基于十亿条TPCH数据进行,通过构建三层嵌套分组模式执行查询。结果表明,所提方法较传统行列存储方法效率有显著提升。