一种可重构数据库查询加速处理器及系统技术方案

技术编号:36187523 阅读:11 留言:0更新日期:2022-12-31 20:55
本发明专利技术涉及数据库设计领域,具体提供了一种可重构数据库查询加速处理器,包括主机服务器和FPGA,所述主机服务器分析用户需求并控制加速器,所述FPGA进行加速器处理;FPGA包括控制器、内存和数据路径,所述控制器接收来自主机服务器的请求并管理内存访问数据,还控制所述数据路径保证数据按照正确的方向流动;数据路径用于数据处理和计算,用于TPC

【技术实现步骤摘要】
一种可重构数据库查询加速处理器及系统


[0001]本专利技术涉及数据库设计领域,具体提供一种可重构数据库查询加速处理器及系统。

技术介绍

[0002]数据库是一种记录保存系统,它支持数据的存储、搜索和分析。它被广泛应用于工业、商业、智能家居、个人助理和医疗保健等领域。用户可以通过查询数据库来发现隐藏在数据集中的信息。通过对数据库的查询会触发各种数据操作,比如排序、连接和数据选择等。
[0003]随着传感器网络技术的发展和信息化社会的不断推进,数据库中大量数据的产生和收集,对快速查询响应提出了很大的挑战。
[0004]现有的大多数研究对查询进行了分解,只在FPGA上实现排序、选择等关键操作。但是,中间处理结果需要在主机和FPGA之间通信,这将导致过多的数据传输开销。在FPGA上进行高吞吐量处理的优势被大量的数据运转严重削弱。
[0005]此外,各种类型的数据库查询也需要具备不同的数据处理操作和分析。为此,一种全新的基于FPGA的可重构数据库查询加速处理器亟待相关领域研究者的设计和研发。

技术实现思路

[0006]本专利技术是针对上述现有技术的不足,提供一种实用性强的可重构数据库查询加速处理器。
[0007]本专利技术进一步的技术任务是提供一种设计合理,安全适用的可重构数据库查询加速系统。
[0008]本专利技术解决其技术问题所采用的技术方案是:
[0009]一种可重构数据库查询加速处理器,包括主机服务器和FPGA,所述主机服务器分析用户需求并控制加速器,所述FPGA进行加速器处理;
[0010]所述FPGA包括控制器、内存和数据路径,所述控制器接收来自主机服务器的请求并管理内存访问数据,还控制所述数据路径保证数据按照正确的方向流动;
[0011]所述数据路径用于数据处理和计算,用于TPC

DS进行查询。
[0012]进一步的,需要在所述FPGA内进行排序时,所述控制器包括一个数据块存储器,所述数据块存储器具备分离功能;
[0013]将数据分成块可以加快排序速度,数据分发到存储器的过程中需要记录数据块存储器的使用情况,防止数据块存储器溢出。
[0014]进一步的,所述FPGA包括DRAM、比较器Equi

checker、比较器Range checker、分类器Bitonic sorter、BRAM以及控制器,所述DRAM连接Flash插件;
[0015]在选择阶段,所述FPGA从父数据中筛选所需数据,将数据移动到DRAM中,使逻辑电路可以直接获取数据,然后,开始选择阶段的计算,数据开始从DRAM流到比较器Equi

checker和比较器Range checker,如果比较结果显示数据符合用户请求,则向控制器发送命中信号,然后将数据存储在BRAM中。
[0016]进一步的,如果比较结构显示数据符合用户请求,则向控制器发送命中信号,所述控制器决定将数据存储在具体的数据块存储器中,然后将数据存储在BRAM中,当遇到数据块存储器溢出问题时,数据会写回DRAM,以确保数据能被正确保留。
[0017]进一步的,数据选择过后,首先对数据进行排序,然后进行比较和合并,在所述选择阶段已经在数据块存储器之间进行了排序,仅需处理一个数据块存储器内的数据即可;
[0018]首先确保要联接的数据块存储器中的表是相关的,然后对存储数据块存储器中的数据通过分类器Bitonic sorter进行排序,最后通过比较器Equi

checker、比较器Range checker以及分类器Bitonic sorter比较并合并两个表的数据。
[0019]进一步的,所述比较器Equi

checker进行确认两个数据是否相关,所述比较器Range

checker决定接下来读取具体表,
[0020]从BRAM分配一个小空间BRAM_join来临时存储合并的数据;开始时,数据从BRAM流到比较器Equi

checker和比较器Range

checker进行比较,如果数据是相关的,那么数据将被合并,然后存储在BRAM_join中。
[0021]进一步的,TPC

DS进行查询时,从父数据中筛选所有合格的数据都存储在BRAM中,下一步连接需要应用的不同表,为了排序合并连接,体系结构中会有排序器Sort engine和合并器Merge engine,在这个阶段,使用排序器来组织数据,然后使用合并来组合不同表的数据,随后,RDP聚合Aggregation表中的数据,并对相关数据再次进行合并;
[0022]最后,对表进行排序Sort engine并输出结果。
[0023]一种可重构数据库查询加速系统,包括主机服务器和FPGA,所述主机服务器分析用户需求并控制加速器,所述FPGA进行加速器处理;
[0024]所述FPGA包括DRAM控制模块、比较器Equi

checker模块、比较器Range checker模块、分类器Bitonic sorter模块、BRAM控制模块以及控制器,所述DRAM控制模块连接Flash插件;
[0025]从父数据中筛选所需的数据,首先,将数据移动到DRAM控制模块中,使逻辑电路以直接获取数据,数据开始从DRAM控制模块流到比较器Equi

checker和比较器Range checker,如果比较结果显示数据符合用户请求,则向控制器发送命中信号,然后将数据存储在BRAM中。
[0026]本专利技术的一种可重构数据库查询加速处理器及系统和现有技术相比,具有以下突出的有益效果:
[0027]本专利技术可重构数据库查询加速处理器不仅支持不同的查询操作,而且可以通过共享FPGA上的通用模块来提高资源的利用率。
[0028]数据搜索引擎也可以根据需求重新配置,并能支持不同的设计参数。在TPC

DS上的实验表明,本专利技术提出的RDP方案在CPU上比传统方案提高了56.5%的吞吐量。与此前的FPGA设计相比,RDP在整体性能上有23.8%的优势,同时节省了13.6%的FPGA资源。
附图说明
[0029]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现
有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0030]附图1是一种可重构数据库查询加速处理器的流程示意图;
[0031]附图2是一种可重构数据库查询加速处理器中TPC

DS查询流程示意图。
具体实施方式
[0032]为了使本
的人员更好的理解本专利技术的方案,下面结合具体的实施方式对本专利技术作本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种可重构数据库查询加速处理器,其特征在于,包括主机服务器和FPGA,所述主机服务器分析用户需求并控制加速器,所述FPGA进行加速器处理;所述FPGA包括控制器、内存和数据路径,所述控制器接收来自主机服务器的请求并管理内存访问数据,还控制所述数据路径保证数据按照正确的方向流动;所述数据路径用于数据处理和计算,用于TPC

DS进行查询。2.根据权利要求1所述的一种可重构数据库查询加速处理器,其特征在于,需要在所述FPGA内进行排序时,所述控制器包括一个数据块存储器,所述数据块存储器具备分离功能;将数据分成块可以加快排序速度,数据分发到存储器的过程中需要记录数据块存储器的使用情况,防止数据块存储器溢出。3.根据权利要求2所述的一种可重构数据库查询加速处理器,其特征在于,所述FPGA包括DRAM、比较器Equi

checker、比较器Range checker、分类器Bitonic sorter、BRAM以及控制器,所述DRAM连接Flash插件;在选择阶段,所述FPGA从父数据中筛选所需数据,将数据移动到DRAM中,使逻辑电路可以直接获取数据,然后,开始选择阶段的计算,数据开始从DRAM流到比较器Equi

checker和比较器Range checker,如果比较结果显示数据符合用户请求,则向控制器发送命中信号,然后将数据存储在BRAM中。4.根据权利要求3所述的一种可重构数据库查询加速处理器,其特征在于,如果比较结构显示数据符合用户请求,则向控制器发送命中信号,所述控制器决定将数据存储在具体的数据块存储器中,然后将数据存储在BRAM中,当遇到数据块存储器溢出问题时,数据会写回DRAM,以确保数据能被正确保留。5.根据权利要求4所述的一种可重构数据库查询加速处理器,其特征在于,数据选择过后,首先对数据进行排序,然后进行比较和合并,在所述选择阶段已经在数据块存储器之间进行了排序,仅需处理一个数据块存储器内的数据即可;首先确保要联接的数据块存储器中的表是相关的,然后对存储数据块存储器中的数据通过分类器Bitonic sorter进行排序,最后通过比较器Equ...

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

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

1