内存数据库并行化查询技术研究

被引量 : 0次 | 上传用户:man168176
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着大容量内存的出现和内存价格的逐渐降低,内存数据库开始被广泛使用。内存数据库带来性能提升的同时,也带来了新的挑战。由于内存存取速度的增长难以匹配处理器速度的增长,导致在数据查询中,内存访问延迟已经成为数据库查询的主要代价之一。多核处理器的出现,使得上述问题更加严重。与此同时,数据规模的增大,导致数据处理过程中出现临时错误和数据倾斜的机会增加,查询算法需要一定的纠错能力,避免整个任务的重新执行。多线程并行访问共享Cache造成的访问冲突会给查询执行性能造成负面影响。此外,有限的内存带宽和多核处理器各个核心间的负载不均衡也影响了线程的执行效率。因此,需要充分利用共享Cache多核处理器的处理性能,减少共享Cache访问冲突对内存数据库查询优化。面向多核处理器的此类优化尚有许多问题需要解决。本文针对数据库查询的并行执行进行研究。针对连接查询存在的性能瓶颈,在共享Cache多核处理器环境下进行连接查询的相关优化。主要工作和创新点如下:提出了基于数据划分策略的多线程并行聚集连接算法。针对内存受限的服务器,分别提出了Radix-Join算法和Sort-Merge Join算法的并行算法,并针对多核共享Cache环境下对算法进行了优化。在数据划分阶段,提出了一种自适应的划分策略,使得多线程执行可以随可用内存大小变化策略;在聚集连接阶段,提出了基于数据规模灵活变化的并行连接执行策略,并优化了聚集连接时的内存访问。上述优化技术能够较大减少多线程执行时的共享Cache访问冲突和处理器核心间的负载不均衡,提高了线程的执行效率。针对传统连接算法缺少灵活的调度和必要的容错能力,提出了基于MapReduce的连接并行执行框架。与Radix-Join算法类似,该框架主要分为Map和Reduce两个阶段,适合使用数据划分策略。本文分析了内存连接的各个阶段对Join算法性能的影响,提出了一种可利用MapReduce的动态机制,避免传统并行连接算法实现的数据任务分派不均和容错问题。算法使用MapReduce编程框架,并通过封装分块标记减少MapReduce Join执行过程中标记和排序的计算开销,使算法性能显著提高。实验结果表明,该算法在共享内存体系结构下在性能上相比已有算法有显著提升。
其他文献
二级公路作为公路运输系统的主体,为国家输送着大量矿产资源及重要物资,但由于气候和交通荷载条件恶劣,车辆超载现象严重,二级公路的沥青混凝土路面发生了多种病害问题,而层
<正> 四川西境樂山峨嵋一帶,三叠紀飛仙關系上部石灰岩中,往往有縫合線構造(styloltic Structure)之存在。以其外形奇特,頗引人興趣;故著者就發見處採集標本數塊攜返研究;聞
期刊
金融风险是一个综合概念,且金融风险的结构非常复杂,所以对金融风险的管理是一项繁杂的系统工程。探索与研究如何利用金融衍生产品来管理我国金融风险具有现实而深远的意义。
[目的]低钠血症是与发病率和死亡率增加有关的最常见的电解质紊乱。本研究的目的是探讨住院患者低钠血症的患病率及相关病因以及低钠血症对患者死亡预后的影响,以进一步提高
功率集成电路集信号处理、传感保护、功率传输于一身,其出现大大降低了电路系统成本、提高了系统可靠性,减小了系统的体积,实现了系统小型化、智能化。功率集成电路在4C电子
高比能量锂离子电池目前遇到的最大问题为由使用液态可燃性有机电解液带来的循环稳定性差和安全隐患问题。聚合物电解质具有与电极材料间的反应活性低、质量轻、易成薄膜、粘
本文试图对康德的启蒙思想作一较为系统的梳理,并力图在其批判哲学体系中为这一启蒙思想寻找理论根基。康德认为启蒙就是要确立人的主体性地位,让人有勇气使用自己的理智,“替一
本文对某雷达陀螺精密三相交流电源进行了研究和分析。课题采用开关点预置PWM逆变控制方案。在对几种开关点预置PWM控制方法的分析比较中,计算获得一组低次谐波消除(SHE)PWM控制
二氯代芳胺是重要的精细化工原料,也是重要的农药、医药中间体。本论文研究实验以W-4型Raney-Ni作为催化剂,选择了适当的抑制脱氯试剂(即助催化剂),对2,5-二氯硝基苯的加氢连续性实
当前,培养创新精神和实践能力已经成为我国整个教育改革的热点。围绕这一目标,各地开展了广泛的课程与教学改革,上海市以研究性课程的开发和实践作为突破口,正尝试构建一套由“基