一种数据检索处理方法和系统技术方案

技术编号:35856181 阅读:14 留言:0更新日期:2022-12-07 10:43
本申请公开了一种数据检索处理方法和系统,该方法包括:SSD控制器接收来自处理器的数据处理命令;所述SSD控制器获取所述数据处理命令中携带的过滤参数,其中,所述过滤参数用于指示所述SSD控制器过滤出符合所述过滤参数的数据;所述SSD控制器根据所述过滤参数在所述SSD中保存的数据库表进行检索,并将检索到的数据发送给所述处理器。通过本申请解决了现有技术中数据检索过程中需要将大量数据拷贝到内存之后再进行过滤所导致的效率比较低的问题,本申请通过SSD控制器进行了数据的过滤,减少了数据从SSD到内存的拷贝,摆脱了SSD拷贝到内存的瓶颈限制,从而提高了数据检索的效率。率。率。

【技术实现步骤摘要】
一种数据检索处理方法和系统


[0001]本申请涉及到数据处理领域,具体而言,涉及一种数据检索处理方法和系统。

技术介绍

[0002]结构化查询语言(Structured Query Language,简称SQL)是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。简单来说,SQL语句就是对数据库进行操作的一种语言。
[0003]SQL语句被广泛应用在数据库系统中,数据库系统运行在计算设备上(例如服务器),计算设备架构基本是相同,几乎所有的计算设备均包括中央处理器(简称为CPU)、硬盘和内存。数据库会使用表来保存数据,这些表均保存在硬盘中。在需要对数据库中的数据进行操作的时候,会首先将表中所有数据均从硬盘拷贝到内存中,然后从内存保存的数据中再进行数据的筛选和处理。
[0004]除了SQL语句之外,在其他类型的数据检索中,也是首先将大量数据拷贝到内存中,然后再在内存中进行数据过滤,这也涉及到硬盘到内存的拷贝过程,因此也会受到内存拷贝瓶颈的限制,导致数据检索效率比较低。

技术实现思路

[0005]本申请实施例提供了一种数据检索处理方法和系统,以至少解决现有技术中数据检索过程中需要将大量数据拷贝到内存之后再进行过滤所导致的效率比较低的问题。
[0006]根据本申请的一个方面,还提供了一种数据检索处理方法,包括:SSD控制器接收来自处理器的数据处理命令,其中,所述SSD控制器设置在SSD上,所述SSD通过所述SSD控制器连接所述处理器,所述SSD控制器用于对所述SSD中的数据进行处理;所述SSD控制器获取所述数据处理命令中携带的过滤参数,其中,所述过滤参数用于指示所述SSD控制器过滤出符合所述过滤参数的数据;所述SSD控制器根据所述过滤参数在所述SSD中保存的数据库表进行检索,并将检索到的数据发送给所述处理器。
[0007]根据申请的另一个方面,还提供了一种SSD控制器,所述SSD控制器用于执行一条或多条计算机指令,其中,所述一条或多条计算机指令被所述SSD控制器执行以实现上述的方法步骤。
[0008]根据本申请的另一个方面,还提供了一种数据检索处理方法,包括:处理器将数据处理命令发送至SSD控制器,其中,所述SSD控制器设置在SSD上,所述SSD通过所述SSD控制器连接所述处理器,所述SSD控制器用于对所述SSD中的数据进行处理;所述数据处理命令中携带有过滤参数,所述过滤参数用于指示所述SSD控制器过滤出符合所述过滤参数的数据;所述处理器接收所述SSD控制器发送的数据,其中,所述数据是所述SSD控制器根据所述过滤参数在所述SSD中保存的数据库表进行检索得到的。
[0009]根据本申请的另一个方面,还提供了一种处理器,所述处理器用于执行一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现上述的方法步
骤。
[0010]根据本申请的另一个方面,还提供了一种数据检索处理系统,包括:上述的处理器和上述的SSD控制器。
[0011]在本申请实施例中,采用了SSD控制器接收来自处理器的数据处理命令,其中,所述SSD控制器设置在SSD上,所述SSD通过所述SSD控制器连接所述处理器,所述SSD控制器用于对所述SSD中的数据进行处理;所述SSD控制器获取所述数据处理命令中携带的过滤参数,其中,所述过滤参数用于指示所述SSD控制器过滤出符合所述过滤参数的数据;所述SSD控制器根据所述过滤参数在所述SSD中保存的数据库表进行检索,并将检索到的数据发送给所述处理器。通过本申请解决了现有技术中数据检索过程中需要将大量数据拷贝到内存之后再进行过滤所导致的效率比较低的问题,本申请通过SSD控制器进行了数据的过滤,减少了数据从SSD到内存的拷贝,摆脱了SSD拷贝到内存的瓶颈限制,从而提高了数据检索的效率。
附图说明
[0012]构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0013]图1是根据相关技术中的用SQL语句进行检索的数据流向图;
[0014]图2是根据本申请实施例的数据检索处理方法的流程图一;
[0015]图3是根据本申请实施例的数据检索处理方法的流程图二;
[0016]图4是根据本申请实施例的处理器与SSD控制器的交互流程图;
[0017]图5是根据本申请实施例的数据检索处理系统的示意图;以及,
[0018]图6是根据本申请实施例的软件架构的示意图。
具体实施方式
[0019]需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
[0020]需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0021]考虑在现有技术中,数据检索的过程中,会将大量数据首先从硬盘中拷贝到内存中,然后在内存中进行数据检索。例如,对于使用SQL语句进行的数据查询来说,首先将SQL语句所查询的数据所在的数据库表的所有数据均复制(或称为拷贝)到内存中;然后再根据SQL语句中的参数从内存中的数据库表中过滤出想要的数据。为了提高SQL语句的执行速度,一般情况下,均会采用增加内存的方式,这种方式虽然增加了内存但是仍然无法避免或者减少从硬盘到内存的拷贝过程,而该数据拷贝过程会受到硬件瓶颈的限制,从而使得数据检索的效率变低。
[0022]例如,SQL语句:SELECT name,country FROM Websites。该语句用于从一张名为Website(网站)的表格中选择name(名称)列和country(国家)列。在执行的过程中,CPU向硬盘发送读取命令,该读取命令用于从硬盘中将Websites表读取到内存中,然后,CPU再从内
存中的Websites表格中进行数据筛选,筛选出name列和country列。在这个处理过程中,会存在瓶颈影响SQL语句的执行效率。下面以固态硬盘(Solid State Disk或Solid State Drive,简称SSD)为例进行说明。固态硬盘又称固态驱动器,是用固态电子存储芯片阵列制成的硬盘。
[0023]图1是根据相关技术中的用SQL语句进行检索的数据流向图,图1示出了相关技术中的检索方案,在该检索方案中,经过了一个读取(read)到拷贝(copy)到搜索(search)的过程。如图1所示,CPU可以通过高速串行总线(peripheral component interconnect express,简称为PCIe)连接不同的SSD,每个SSD均被分为了多个存储块(block),其中,每个SSD均设置一个SSD控制器(Controller)。在执行SQL语句时,CPU通过PCIE向SSD控制器发送读取命令,即图1中示本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据检索处理方法,包括:固态硬盘SSD控制器接收来自处理器的数据处理命令,其中,所述SSD控制器设置在固态硬盘SSD上,所述SSD通过所述SSD控制器连接所述处理器,所述SSD控制器用于对所述SSD中的数据进行处理;所述SSD控制器获取所述数据处理命令中携带的过滤参数,其中,所述过滤参数用于指示所述SSD控制器过滤出符合所述过滤参数的数据;所述SSD控制器根据所述过滤参数在所述SSD中保存的数据库表进行检索,并将检索到的数据发送给所述处理器。2.根据权利要求1所述的方法,在将所述检索到的数据发送给所述处理器之前,所述方法还包括:所述SSD控制器将根据所述过滤参数检索到的数据缓存在所述SSD控制器的缓存中;所述SSD控制器将所述检索到的数据发送给所述处理器,包括:所述SSD控制器将所述SSD控制器中缓存的所述数据发送给所述处理器。3.根据权利要求1所述的方法,其中,所述SSD控制器接收来自所述处理器的数据处理命令包括:所述SSD控制器通过高速串行总线PCIe接收来自所述处理器的数据处理命令,其中,所述数据处理命令为非易失性内存主机控制器接口规范NVMe命令。4.根据权利要求3所述的方法,其中,所述SSD控制器将检索到的数据发送给所述处理器包括:所述SSD控制器通过预先创建的数据输入流将检索到的数据发送给所述处理器,其中,所述数据输入流用于在所述SSD中以数据流的方式传输数据;所述SSD控制器在确定所述检索到的数据发送完毕之后,关闭所述数据输入流。5.根据权利要求1至4中任一项所述的方法,其中,所述过滤参数是根据SQL语句中携带的参数得到的,其中,所述SQL语句中携带的参数用于从所述数据库表中进行数据筛选。6.一种数据检索处理方法,包括:处理器将数据处理命令发送至SSD控制器,其中,所述SSD控制器设置在SSD上,所述SSD通过所述SSD控制器连接所述处理器,所述SSD控制器用于对所述SSD中的数据进行处理;所述数据处理命令中携带有过滤参数,所述过滤参数用于指示所述SSD控制器过滤出符合所述过滤参数的数据;所述处理器接收所述SSD控制器发送的数据,其中,所述数据是所述SSD控制器根据所述过滤参数在所述SSD中保存的数据库表进行检索得到的。7.根据权利要求6所述的方法,其中,所述处理器将所述数据处理命令发送至所述SSD控制器包括:所述处理器确定所述数据库表所在的存储块,其中,一块SSD上包括多个存储块;...

【专利技术属性】
技术研发人员:张先国
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

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

1