首页> 中文学位 >面向内存数据库的软硬件协同访存优化研究
【6h】

面向内存数据库的软硬件协同访存优化研究

代理获取

目录

展开▼

摘要

数字资源的爆炸式增长为数据的实时分析和处理带来了巨大的挑战,传统数据库系统显得愈发力不从心。内存数据库系统突破了传统系统中磁盘I/O的性能瓶颈,为实时分析海量数据提供了可能性。然而,由于内存存取速度严重滞后于处理器的处理速度,内存访问制约了数据分析和处理的性能,逐渐演变为新的性能瓶颈。因此,提升内存访问性能是提高内存数据库系统性能的迫切需求。  基于内存数据库系统的访存流程分析,本文发现内存数据库系统的访存行为涉及两个方面。在软件层面,内存数据库系统依赖数据索引提升数据存取效率和空间管理效率,索引性能对内存数据库的访存性能具有重要影响。数据索引受不同存储介质的影响表现出巨大的性能差异。当新型非易失性内存(Non-VolatileMemory,NVM)作为主存构建大容量的内存数据库系统时,传统基于动态随机存储器(DynamicRandomAccessMemory,DRAM)的索引结构由于没有考虑NVM延迟高和写次数有限的问题,无法高效地应用于新型NVM设备。因此,如何充分利用NVM的特性设计和优化索引结构以提升数据的存取效率是亟待解决的问题。在硬件层面,地址转换以及高速缓存查询位于访存的关键路径上,对访存的整体性能具有至关重要的影响。内存数据库系统中的数据访问具有弱局部性的特征,这对于利用局部性原理工作的片上缓存是极不友好的。其次,内存容量的增加在加剧弱局部性的同时,也使数据访问呈现出重用距离长的特征,严重影响了地址转换和缓存查询的效率。因此,如何针对内存数据库系统的特性,优化地址转换和缓存查询技术是提升访存性能的关键。  本文面向内存数据库系统,从软件设计和硬件管理两个层面分别研究数据索引的设计、地址转换的优化以及高速缓存的优化,以加快访存速度,从而提升内存数据库系统的整体性能。本文主要包含以下三个方面的研究工作。  ①索引优化研究。针对传统哈希索引结构没有考虑NVM存在写延迟高、写入次数有限的问题,本文提出了一种基于NVM的高性能哈希索引结构——桶哈希(BucketHash)。与传统的哈希索引只包含一个节点不同,桶哈希将数据分散存储到多个节点中,并利用局部扩容的方式减少重哈希操作涉及的数据量,从而减少对NVM的写次数以及时间开销。此外,桶哈希利用一个辅助索引结构,以有序链表的方式将数据节点管理起来。因此,范围查找操作可以高效地在哈希索引上执行。实验结果表明,与传统的索引结构相比,桶哈希平均可以减少40%的NVM写次数,同时能够取得30%的性能提升。  ②地址转换优化研究。针对传统架构中转译后备缓冲区(TranslationLookasideBuffer,TLB)和页表缓存(PageTableCache,PTC)分离的结构无法自适应不同负载的需求,从而限制了地址转换效率这一问题,本文提出了一种统一TLB和PTC的结构,Unified-TP。Unified-TP将TLB和PTC元素存储在一个结构中,以提供动态调整两类元素数量的可能性。同时,本文优化了LRU替换算法,使Unified-TP全局地识别元素的冷热程度,以提升缓存空间利用率和缓存命中率,从而减少内存数据库系统在内存访问时所需的地址转换开销。实验结果表明,与传统的分离结构相比,Unified-TP平均减少36.14%的TLB缺失,并取得13.97%的性能提升。  ③缓存优化研究。针对传统缓存的“无差别存储”机制会向缓存中引入许多无用的数据,从而降低缓存命中率这一问题,本文提出了一种软硬协同的缓存优化机制——FilterPredictor。FilterPredictor包含预测模块和RCache模块。其中,预测模块根据TLB和页表的访问信息以粗粒度的方式预测数据的重用性;而RCache模块以细粒度的方式对预测模块筛选出的数据再次预测,以减少预测误差。FilterPredictor通过对数据重用性的预测,降低无用数据对缓存的污染,从而减少内存数据库系统在内存访问时的访存开销。实验结果表明,与传统缓存管理机制相比,FilterPredictor可以提升6.51%~13.72%的缓存命中率。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号