一种数据库查询加速引擎装置、方法及存储介质制造方法及图纸

技术编号:36933884 阅读:8 留言:0更新日期:2023-03-22 18:56
本申请公开了一种数据库查询加速引擎装置、方法及存储介质,涉及数据库技术领域,包括:引擎通道适配器和与主机服务器建立通信连接的主机通道适配器;与引擎通道适配器和主机通道适配器连接的Infiniband接口,用于获取主机服务器在对数据查询请求响应时产生的数据处理指令和从关系型数据库中查找到的待处理数据并传输至引擎通道适配器;与引擎通道适配器建立通信连接的FPGA模块,用于获取数据处理指令和待处理数据并基于数据处理指令对待处理数据进行数据处理操作,将数据处理结果传输至引擎通道适配器以便将数据处理结果发送至主机服务器。本申请通过数据库查询加速引擎装置可以实现数据库的快速查询操作,以减少时间损耗。损耗。损耗。

【技术实现步骤摘要】
一种数据库查询加速引擎装置、方法及存储介质


[0001]本专利技术涉及数据库
,特别涉及一种数据库查询加速引擎装置、方法及存储介质。

技术介绍

[0002]数据库是一种数据记录存储系统,它支持数据的存储、搜索和解析。它被广泛应用于商业、工业、智能家居和医疗保健等领域。用户可以通过查询数据库来发现隐藏在数据集中的信息。通过对数据库的查询会触发各种数据操作,比如排序、筛选、连接和聚合等操作。随着传感器网络技术的发展和信息化社会的不断推进,数据库中存储的信息种类和数量日渐增加,这为用户端数据库快速查询响应带来了巨大挑战。
[0003]现有的大多数研究对查询操作进行了分解,只在FPGA(Field Programmable Gate Array,即现场可编程逻辑门阵列)上实现了排序、选择等关键操作。但是,中间处理结果需要在主机和FPGA加速板卡之间进行通信,这将导致过多的数据传输开销,在FPGA上处理数据的速度优势被大量的数据传输过程严重影响,导致数据库查询操作的时间开销过大。此外,各种类型的数据库查询也需要加速引擎具备不同的数据处理操作和分析能力。

技术实现思路

[0004]有鉴于此,本专利技术的目的在于提供一种数据库查询加速引擎装置、方法及存储介质,能够实现数据库的快速查询操作,以减少时间损耗。其具体方案如下:第一方面,本申请公开了一种数据库查询加速引擎装置,包括:引擎通道适配器以及与主机服务器建立通信连接的主机通道适配器;一端与所述引擎通道适配器连接、另一端与所述主机通道适配器连接的Infiniband接口,用于通过所述主机通道适配器获取所述主机服务器在对数据查询请求进行响应时产生的数据处理指令,以及通过所述主机通道适配器获取所述主机服务器从关系型数据库中查找到的与所述数据处理指令对应的待处理数据,并将所述数据处理指令和所述待处理数据传输至所述引擎通道适配器;与所述引擎通道适配器建立通信连接的FPGA模块,用于获取所述引擎通道适配器发送的所述数据处理指令和所述待处理数据,以及基于所述数据处理指令对所述待处理数据进行相应的数据处理操作,并将数据处理结果传输至所述引擎通道适配器,以便所述引擎通道适配器依次通过所述Infiniband接口以及所述主机通道适配器将所述数据处理结果发送至所述主机服务器。
[0005]可选的,所述FPGA模块包括缓冲器模块,所述缓冲器模块:控制缓冲器,用于存储通过所述引擎通道适配器发送的所述主机服务器在对数据查询请求进行响应时产生的数据处理指令;数据缓冲器,用于存储通过所述引擎通道适配器发送的所述主机服务器从关系型数据库中查找到的与所述数据处理指令对应的待处理数据。
[0006]可选的,所述FPGA模块包括若干数据处理子模块;其中,任一所述数据处理子模块,用于根据被分配的所述数据处理指令对相应的所述待处理数据进行相应的数据处理操作以得到相应的数据处理结果。
[0007]可选的,所述FPGA模块,还包括:设置于每一所述数据处理子模块与所述缓冲器模块之间的AXI4总线,用于将从所述控制缓冲器中选择的所述数据处理指令以及所述数据缓冲器中保存的相应的所述待处理数据发送至相应的所述数据处理子模块,并将所述数据处理子模块得到的所述数据处理结果返回至所述缓冲器模块进行保存。
[0008]可选的,所述缓冲器模块,还包括用于存储每一所述数据处理子模块通过所述AXI4总线发送的所述数据处理结果的结果缓冲器。
[0009]可选的,任一所述数据处理子模块,还包括:控制存储器,用于存储所述AXI4总线发送的所述数据处理指令;数据存储器,用于存储所述AXI4总线发送的所述待处理数据;结果存储器,用于存储基于所述数据处理指令对所述待处理数据进行相应数据处理操作得到的所述数据处理结果,并将所述数据处理结果通过所述AXI4总线发送至所述结果缓冲器中。
[0010]可选的,任一所述数据处理子模块,包括:排序单元,用于根据所述控制存储器中存储的表征执行数据排序操作的第一数据处理指令对所述数据存储器中相应的所述待处理数据进行数据排序操作,并将排序后数据存储至所述结果存储器中;和/或,筛选单元,用于根据所述控制存储器中存储的表征执行数据筛选操作的第二数据处理指令对所述数据存储器中相应的所述待处理数据进行数据筛选操作,并将筛选后数据存储至所述结果存储器中;和/或,连接单元,用于根据所述控制存储器中存储的表征执行数据连接操作的第三数据处理指令对所述数据存储器中相应的所述待处理数据进行数据连接操作,并将连接后数据存储至所述结果存储器中;和/或,聚合单元,用于根据所述控制存储器中存储的表征执行数据聚合操作的第四数据处理指令对所述数据存储器中相应的所述待处理数据进行数据聚合操作,并将聚合后数据存储至所述结果存储器中。
[0011]第二方面,本申请公开了一种数据库加速查询方法,应用于数据库查询加速引擎装置,包括:通过主机通道适配器获取主机服务器在对数据查询请求进行响应时产生的数据处理指令,以及所述主机服务器从关系型数据库中查找到的与所述数据处理指令对应的待处理数据;将所述数据处理指令和所述待处理数据通过Infiniband接口传输至引擎通道适配器,以便所述引擎通道适配器将所述数据处理指令和所述待处理数据发送至FPGA模块;通过所述FPGA模块获取所述引擎通道适配器发送的所述数据处理指令和所述待处理数据,并基于所述数据处理指令对所述待处理数据进行相应的数据处理操作以得到相应的数据处理结果;
将所述数据处理结果传输至所述引擎通道适配器,以便所述引擎通道适配器依次通过所述Infiniband接口以及所述主机通道适配器将所述数据处理结果发送至所述主机服务器。
[0012]第三方面,本申请公开了一种数据库查询加速引擎系统,包括主机服务器以及前述的数据库查询加速引擎装置。
[0013]第四方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的数据库加速查询方法。
[0014]可见,本申请提供了一种数据库查询加速引擎装置,包括引擎通道适配器以及与主机服务器建立通信连接的主机通道适配器;一端与所述引擎通道适配器连接、另一端与所述主机通道适配器连接的Infiniband接口,用于通过所述主机通道适配器获取所述主机服务器在对数据查询请求进行响应时产生的数据处理指令,以及通过所述主机通道适配器获取所述主机服务器从关系型数据库中查找到的与所述数据处理指令对应的待处理数据,并将所述数据处理指令和所述待处理数据传输至所述引擎通道适配器;与所述引擎通道适配器建立通信连接的FPGA模块,用于获取所述引擎通道适配器发送的所述数据处理指令和所述待处理数据,以及基于所述数据处理指令对所述待处理数据进行相应的数据处理操作,并将数据处理结果传输至所述引擎通道适配器,以便所述引擎通道适配器依次通过所述Infiniband接口以及所述主机通道适配器将所述数据处理结果发送至所述主机服务器。
[0015]由此可见,可以通过本申请提供的上述数据库查询加速引擎装置对数据进行本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库查询加速引擎装置,其特征在于,包括:引擎通道适配器以及与主机服务器建立通信连接的主机通道适配器;一端与所述引擎通道适配器连接、另一端与所述主机通道适配器连接的Infiniband接口,用于通过所述主机通道适配器获取所述主机服务器在对数据查询请求进行响应时产生的数据处理指令,以及通过所述主机通道适配器获取所述主机服务器从关系型数据库中查找到的与所述数据处理指令对应的待处理数据,并将所述数据处理指令和所述待处理数据传输至所述引擎通道适配器;与所述引擎通道适配器建立通信连接的FPGA模块,用于获取所述引擎通道适配器发送的所述数据处理指令和所述待处理数据,以及基于所述数据处理指令对所述待处理数据进行相应的数据处理操作,并将数据处理结果传输至所述引擎通道适配器,以便所述引擎通道适配器依次通过所述Infiniband接口以及所述主机通道适配器将所述数据处理结果发送至所述主机服务器。2.根据权利要求1所述的数据库查询加速引擎装置,其特征在于,所述FPGA模块包括缓冲器模块,所述缓冲器模块:控制缓冲器,用于存储通过所述引擎通道适配器发送的所述主机服务器在对数据查询请求进行响应时产生的数据处理指令;数据缓冲器,用于存储通过所述引擎通道适配器发送的所述主机服务器从关系型数据库中查找到的与所述数据处理指令对应的待处理数据。3.根据权利要求2所述的数据库查询加速引擎装置,其特征在于,所述FPGA模块包括若干数据处理子模块;其中,任一所述数据处理子模块,用于根据被分配的所述数据处理指令对相应的所述待处理数据进行相应的数据处理操作以得到相应的数据处理结果。4.根据权利要求3所述的数据库查询加速引擎装置,其特征在于,所述FPGA模块,还包括:设置于每一所述数据处理子模块与所述缓冲器模块之间的AXI4总线,用于将从所述控制缓冲器中选择的所述数据处理指令以及所述数据缓冲器中保存的相应的所述待处理数据发送至相应的所述数据处理子模块,并将所述数据处理子模块得到的所述数据处理结果返回至所述缓冲器模块进行保存。5.根据权利要求4所述的数据库查询加速引擎装置,其特征在于,所述缓冲器模块,还包括用于存储每一所述数据处理子模块通过所述AXI4总线发送的所述数据处理结果的结果缓冲器。6.根据权利要求5所述的数据库查询加速引擎装置,其特征在于,任一所述数据处理子模块,还包括:控制存储器,用于存储所述AXI4总线发送的所述数据处理...

【专利技术属性】
技术研发人员:王雄儒李明赵鑫鑫姜凯王帅
申请(专利权)人:山东浪潮科学研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1