[发明专利]一种基于RDMA的分布式内存数据库查询引擎系统有效
申请号: | 201710455604.9 | 申请日: | 2017-06-16 |
公开(公告)号: | CN107329814B | 公开(公告)日: | 2020-05-26 |
发明(设计)人: | 段翰聪;陈超;郭江涛;梁君健;李博洋;闵革勇;李林;张建 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50;G06F16/25;G06F16/245;H04L12/803 |
代理公司: | 成都行之专利代理事务所(普通合伙) 51220 | 代理人: | 田甜 |
地址: | 610000 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 rdma 分布式 内存 数据库 查询 引擎 系统 | ||
本发明公开了一种基于RDMA的分布式内存数据库查询引擎系统,包括:多个查询引擎模块、任务调度模块、元数据信息收集模块、任务执行模块;元数据信息收集模块为每张表的每个列生成统计信息;主查询引擎模块将SQL语句解析为逻辑计划,将逻辑计划发送给任务调度模块;任务调度模块生成物理计划将物理计划发送给查询引擎模块;主查询引擎模块生成至少两个子任务并下发到多个从查询引擎模块;从查询引擎模块将子任务加入任务队列,当前任务完成后,通过RDMA的方式,将数据发送给后继子任务,所有子任务完成后,通知客户端在从查询引擎系统获取结果数据,实现了如何降低了分布式内存数据库查询引擎的数据传输开销,提高了查询速度的技术效果。
技术领域
本发明涉及分布式内存数据库研究领域,具体地,涉及一种基于RDMA的分布式内存数据库查询引擎系统。
背景技术
在当前的数据库市场,传统数据库已经渐渐退出历史舞台,NoSQL和NewSQL增长势头十分强劲。NewSQL是对所有新型可扩展、高性能数据库的简称,它们不仅有NoSQL对海量数据库的存储管理能力,还保持了传统数据库支持ACID和SQL等特性。但是磁盘读写速度较慢,极大地阻碍了NewSQL数据库的执行速度,因此诞生了面向联机分析处理(OLAP,OnlineAnalytical Processing)的大规模分布式内存数据库。分布式内存查询引擎是NewSQL的核心部分,负责整个查询任务的SQL解析和查询任务执行。
Spark-SQL是一种数据仓库查询引擎,负责接受用户的SQL语句,在HDFS上进行数据处理,Spark-SQL底层采用Spark计算模型而不是MapReduce计算模型。Spark-SQL采用了基于内存的列簇存储方案;“部分DAG执行引擎”,对SQL语句进行了基于代价的查询优化;同时支持语言级别的数据共同分片等方式对传统的Hive进行优化。
Impala是Cloudera开源的大数据查询引擎,采用MPP架构,通过进程间通信的方式,能够极大地提高系统的执行效率。Impala在生成查询计划的时候,遵循两个基本目标:最大程度地进行并行化;最大化数据局部性,尽可能减少网络传输。
Spark-SQL和Impala提供了很好的查询性能,但是它们多个查询引擎进程之间都采用基于TCP/IP的socket进行通信,由于TCP网络的复杂性和高延迟,大数据查询引擎的数据量又十分庞大,查询任务的主要瓶颈都在网络传输上。
综上所述,本申请发明人在实现本申请发明技术方案的过程中,发现上述技术至少存在如下技术问题:
在现有技术中,现有的大规模分布式内存数据库查询引擎存在任务执行过程中海量数据传输速度慢的技术问题。
发明内容
本发明提供了一种基于RDMA(远程直接数据存取)的分布式内存数据库查询引擎系统,解决了现有的大规模分布式内存数据库查询引擎存在任务执行过程中海量数据传输速度慢的技术问题,实现了如何降低了分布式内存数据库查询引擎的数据传输开销,提高了查询速度的技术效果。
为解决上述技术问题,本申请提供了一种基于RDMA的分布式内存数据库查询引擎系统,所述系统包括:
多个查询引擎模块、任务调度模块、元数据信息收集模块、任务执行模块;其中,查询引擎模块包括主查询引擎模块和从查询引擎模块;元数据信息收集模块从分布式内存数据库存储引擎收集数据分布情况,为每张表的每个列生成统计信息;主查询引擎模块基于关系代数的变换将SQL语句解析为逻辑计划,将逻辑计划发送给任务调度模块;任务调度模块根据执行引擎数据分布情况和RDMA的数据传输特性,生成物理计划将物理计划发送给查询引擎模块;主查询引擎模块根据物理计划生成至少两个子任务,并将子任务下发到多个从查询引擎模块;从查询引擎模块将子任务加入任务队列,当前任务完成后,通过RDMA的方式,将数据发送给后继子任务,所有子任务完成后,通知客户端在从查询引擎系统获取结果数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710455604.9/2.html,转载请声明来源钻瓜专利网。