CN110442612B - 一种数据查询方法、电子设备及计算机可读存储介质 - Google Patents
一种数据查询方法、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN110442612B CN110442612B CN201910538939.6A CN201910538939A CN110442612B CN 110442612 B CN110442612 B CN 110442612B CN 201910538939 A CN201910538939 A CN 201910538939A CN 110442612 B CN110442612 B CN 110442612B
- Authority
- CN
- China
- Prior art keywords
- data
- query
- processor
- parameters
- query algorithm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24578—Query processing with adaptation to user needs using ranking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据查询方法、电子设备及计算机可读存储介质,通过获取的数据参数确定对应的查询算法,并根据对应的查询算法和数据参数确定数据访存模式,基于该数据访存模式执行查询算法对应的可执行文件以获取所需的查询结果,由此,本发明实施例根据数据参数动态适配查询算法,并根据适配的查询算法和数据参数动态适配数据访存模式,可以提高数据查询的效率,同时,可以提高计算资源利用率。
Description
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种数据查询方法、电子设备及计算机可读存储介质。
背景技术
数据查询算法是计算机领域常见且成熟的算法,应用场景非常广泛。例如top-k算法,top-k算法解决的问题是在一批数据中找出最大或者最小的k个数。该数据查询算法在CPU处理器上有很多成熟的实现,可以达到接近线性的时间复杂度。但是在某些大数据量或者高并发的应用场景下,基于CPU处理器的数据查询算法性能往往难以满足要求,从而成为整个应用程序性能的瓶颈。
发明内容
有鉴于此,本发明实施例提供一种数据查询方法、电子设备及计算机可读存储介质,以提高数据查询的效率。
第一方面,本发明实施例提供一种数据查询方法,所述方法包括:
获取原始数据的数据参数,所述数据参数包括原始数据的数据总量和查询参数,所述查询参数包括查询数据的数据量;
根据所述数据参数获取至少一个适配的查询算法模型,所述查询算法模型用于描述查询算法参数;
根据***硬件配置信息从所述至少一个适配的查询算法模型中确定查询算法;
根据所述查询算法和所述数据参数确定数据访存模式;
基于所述数据访存模式执行所述查询算法对应的可执行文件以获取查询数据。
可选的,根据所述数据参数获取至少一个适配的查询算法模型包括:
响应于所述原始数据的数据总量小于或等于第一阈值,获取基于第一处理器的至少一个适配的查询算法模型;
响应于所述原始数据的数据总量大于所述第一阈值,获取基于第二处理器的至少一个适配的查询算法模型。
可选的,根据所述数据参数获取至少一个适配的查询算法模型还包括:
响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与所述查询数据的数据量的差值小于或等于第二阈值,获取基于所述第二处理器的至少一个适配的并行全排序查询算法模型;
响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与所述查询数据的数据量的差值大于所述第二阈值,获取基于所述第二处理器的至少一个适配的并行部分排序查询算法模型。
可选的,所述第一处理器为CPU处理器,所述第二处理器为加速处理器。
可选的,根据所述查询算法和所述数据参数确定数据访存模式包括:
根据所述查询算法的空间复杂度和所述查询参数确定所述数据访存模式。
可选的,所述数据访存模式包括寄存器访存模式、寄存器+共享内存访存模式和全局内存访存模式。
可选的,基于所述数据访存模式执行所述查询算法对应的可执行文件以获取所述查询数据包括:
根据所述查询算法和数据参数配置执行环境参数,所述执行环境参数包括硬件配置信息;
根据所述执行环境参数执行所述查询算法对应的可执行文件以获取所述查询数据。
可选的,所述数据查询的类型为top-k查询。
第二方面,本发明实施例提供一种电子设备,包括存储器、CPU处理器和加速处理器,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述CPU处理器或所述加速处理器执行用以实现如本发明实施例第一方面所述的方法。
第三方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行以实现如本发明实施例第一方面所述的方法。
本发明实施例公开了一种数据查询方法、电子设备及计算机可读存储介质,通过获取的数据参数确定对应的查询算法,并根据对应的查询算法和数据参数确定数据访存模式,基于该数据访存模式执行查询算法对应的可执行文件以获取所需的查询结果,由此,本发明实施例根据数据参数动态适配查询算法,并根据适配的查询算法和数据参数动态适配数据访存模式,可以提高数据查询的效率,同时,可以提高计算资源利用率。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其它目的、特征和优点将更为清楚,在附图中:
图1是本发明实施例的数据查询方法的流程图;
图2是本发明实施例的数据查询方法的过程示意图;
图3是本发明实施例的数据查询装置的示意图;
图4是本发明实施例的电子设备的示意图。
具体实施方式
以下基于实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、过程、流程、元件和电路并没有详细叙述。
此外,本领域普通技术人员应当理解,在此提供的附图都是为了说明的目的,并且附图不一定是按比例绘制的。
除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图1是本发明实施例的数据查询方法的流程图。如图1所示,本发明实施例的数据查询方法包括以下步骤:
步骤S100,获取原始数据的数据参数。其中,数据参数包括原始数据的数据总量和查询参数,查询参数包括查询数据的数据量。在一种可选的实现方式中,数据查询为top-k查询,也即在原始数据中查询按照预定的数据项排序前k位的数据。例如,原始数据为同一类商品的销售情况,查询销售量前100的商品数据。其中,原始数据的数据总量为该类商品的所有商品数据,查询数据的数据量为销售量前100的商品数据量。可选的,查询参数还可以包括参考值offset,也即,在原始数据中查询排名第offset位到第(offset+k)位的数据。
步骤S200,根据原始数据的数据参数获取至少一个适配的查询算法模型。其中,查询算法模型用于描述查询算法参数,查询算法参数包括算法名称以及查询算法性质等,例如查询算法的名称是A,性质为基于全排序的GPU算法。
在一种可选的实现方式中,步骤S200进一步可以包括:
响应于原始数据的数据总量小于或等于第一阈值,获取基于第一处理器的至少一个适配的查询算法模型,响应于原始数据的数据总量大于第一阈值,获取基于第二处理器的至少一个适配的查询算法模型。其中,第一处理器可以为CPU处理器,第二处理器可以为GPU或APU等加速处理器。由于在原始数据的数据量较小时,若采用GPU等加速处理器,不仅无法发挥大规模并行体系结构的优势,还会造成额外的开销,因此,在本实施例中,在原始数据的数据总量较小时,采用CPU处理器进行数据查询,以提高计算资源的利用率。在原始数据的数据总量较大时,采用GPU等加速处理器进行数据查询,以提高数据查询效率。
进一步可选的,步骤S200还包括:
响应于原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与查询数据的数据量的差值小于或等于第二阈值,获取基于所述第二处理器的至少一个适配的并行全排序查询算法模型,响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与查询数据的数据量的差值大于所述第二阈值,获取基于所述第二处理器的至少一个适配的并行部分排序查询算法模型。
也就是说,在原始数据的数据总量较大,且原始数据的数据总量与查询数据的数据量相差不大时,采用基于第二处理器(例如GPU等加速处理器)的并行全排序查询算法模型,例如GPU-bitonic算法(基于GPU 处理器的双调排序算法)等。例如,原始数据为同一类商品的销售情况,查询销售量前10000的商品数据。其中,该类商品的所有商品数据共有12000条。由于所要查询的数据量与总数据量相差不大,因此,可以将该类商品按销售量大小进行全排序。在原始数据的数据总量较大,且原始数据的数据总量与查询数据的数据量相差较大时,采用基于第二处理器(例如GPU等加速处理器)的并行部分排序查询算法模型(例如选择排序等)。例如,原始数据为同一类商品的销售情况,查询销售量前100 的商品数据。其中,该类商品的所有商品数据共有12000条。由于所要查询的数据量与总数据量相差较大,因此,可以采用并行部分排序算法模型,例如,基于优先队列的GPU top-k算法等。由此,可以减小计算资源的浪费,提高计算资源的利用率。
步骤S300,根据***硬件配置信息从至少一个适配的查询算法模型中确定查询算法。其中,***硬件配置信息可以包括***中加速处理器的显卡数量等信息。由此,可以进一步提高计算资源的利用率。
步骤S400,根据查询算法和数据参数确定数据访存模式。在一种可选的实现方式中,根据查询算法的空间复杂度和查询参数确定数据访存模式。
以下以GPU处理器的内存结构为例来对数据访存模式进行说明,应理解,本实施例并不对此进行限制。
数据访存模式对程序性能有直接的影响,为了更加高效的处理数据查询问题,本实施例对数据访存模式进行动态的选取。其中,访存模式需要根据GPU处理器的内存结构进行选择。GPU处理器中通常有三种最主要的内存结构,分别是register file(寄存器)、shared memory(共享内存)、global memory(全局内存),表(1)以一种GPU处理器为例。从空间限制和性能两方面说明了三种内存结构的特点。
表(1)
内存结构类型 | 空间大小 | 性能 |
寄存器 | 96KB | 访问速度最快 |
共享内存 | 小于64KB | 访问速度较快 |
全局内存 | 4-32GB | 访问速度较慢 |
在本实施例中,根据所确定的查询算法和数据参数确定数据访存模式。可选的,本实施例以三种数据访存模式为例来进行说明,分别是寄存器访存模式、寄存器+共享内存访存模式以及全局内存访存模式。应理解,上述三种数据访存模式仅仅是示例性的,其他数据访存模式(例如共享内存访存模式等)或数据访存模式的组合均可应用在本实施例中。
在一种可选的实现方式中,依据数据访存模式对应的性能定义其优先级,如表(2)所示。
表(2)
优先级 | 数据访存模式 |
1 | 寄存器访存模式 |
2 | 寄存器+共享内存访存模式 |
3 | 全局内存访存模式 |
其中,高优先级的数据访存模式具有更高的存取效率,往往相差几个数量级,比如共享内存访存模式的性能通常情况下大约为全局内存访存模式的性能的100倍。由此,数据访存模式选用不当会对查询算法的性能有直接的负面影响。
选择数据访存模式必须考虑GPU各内存结构的空间限制,所确定的查询算法对于空间复杂度的要求必须约束于特定的硬件存储空间。例如,采用基于堆排序的查询算法,若查询数据量k较大,共享内存中无法存放大小为k的堆,则不能采用共享内存访存模式。
在本实施例中,根据查询算法和数据参数来动态适配数据访存模式,以在保证满足存储空间限制的前提下尽可能高优先级的数据访存模式,由此,可以进一步提高数据查询效率。
步骤S500,基于所述数据访存模式执行所述查询算法对应的可执行文件以获取所述查询数据。其中,查询算法对应的可执行文件存储在算法库中。在一种可选的实现方式中,根据查询算法和数据参数配置执行环境参数,并根据执行环境参数执行查询算法模型以获取查询数据。其中,执行环境参数包括硬件配置信息。可选的,在原始数据的数据总量小于等于第一阈值时,配置CPU处理器的执行环境参数。在原始数据的数据总量大于第一阈值时,根据适配的查询算法模型确定GPU显卡的数量,配置GPU处理器的执行环境参数。由此,本实施例可以根据查询算法模型和数据参数动态配置处理器的执行环境参数,以进一步提高处理效率和计算资源利用率。
本发明实施例通过获取的数据参数确定对应的查询算法,并根据对应的查询算法和数据参数确定数据访存模式,基于该数据访存模式执行查询算法对应的可执行文件以获取所需的查询结果,由此,本发明实施例根据数据参数动态适配查询算法,并根据适配的查询算法和数据参数动态适配数据访存模式,可以提高数据查询的效率,同时,可以提高计算资源利用率。
图2是本发明实施例的数据查询方法的过程示意图。如图2所示,将数据A输入至参数获取单元21,参数获取单元21用于获取数据A的数据参数并将数据参数传输至算法模型适配单元22和访存模式适配单元23。其中,数据A的数据参数包括数据A的数据总量N和查询数据的数据量k。例如,数据A为在某次联赛中所有考生的测试数据,查询数据为总成绩排名前100名的考生的测试数据。
算法模型适配单元22根据数据A的数据总量N和查询数据的数据量k来获取至少一个适配的查询算法模型,并根据***硬件配置信息从至少一个适配的查询算法模型中确定查询算法,将确定的查询算法的名称发送至访存适配单元23。可选的,在数据A的数据总量N小于等于第一阈值时,适配基于CPU处理器的查询算法模型。由于数据A的数据总量较小,采用GPU等加速处理器,不仅不能极大地提高数据查询的效率,还造成了计算资源的浪费。由此,本实施例在数据量较小时,采用CPU处理器来进行数据查询以提高计算资源利用率。在数据A的数据总量N大于第一阈值时,适配基于GPU等加速处理器的查询算法模型。CPU处理器在计算能力和数据吞吐量方面具有局限性,因此,本实施例在数据A的数据总量较大,采用GPU等加速处理器的查询算法模型以提高数据查询的效率。
在数据查询过程中,往往需要对数据A进行排序。在一种可选的实现方式中,在数据A的数据总量N大于第一阈值,且数据A的数据总量N与查询数据的数据量k的差值小于等于第二阈值时,适配基于GPU 等加速处理的并行全排序查询算法模型。例如,数据A为在某次联赛中所有考生的测试数据,查询数据为总成绩排名前10000的考生的测试数据。假设该次联赛中共有12000个考生,则将这12000个考生的按总成绩进行全排序,由此,可以提高数据查询效率。在数据A的数据总量N 大于第一阈值,且数据A的数据总量N与查询数据的数据量k的差值大于第二阈值时,适配基于GPU等加速处理的并行部分排序查询算法模型。例如,数据A为在某次联赛中所有考生的测试数据,查询数据为总成绩排名前100位的考生的测试数据。假设该次联赛中共有12000个考生,若将这12000个考生的按总成绩进行全排序,在取出前100位考生的测试数据,显然会造成计算资源的浪费。由此,本实施例在数据A的数据总量N与查询数据的数据量k相差较大时,采用部分排序查询算法模型,以提高计算资源的利用率。
访存模式适配单元23根据适配的查询算法和数据A的数据参数确定数据访存模式,并将确定的数据访存模式发送至执行单元24。具体地,根据适配的查询算法的空间复杂度和查询数据的数据量等确定数据访存模式。在本实施例中,制定各数据访存模式的优先级,适配满足条件的优先级最高的数据访存模式。例如,适配的查询算法的空间复杂度和查询数据的数据量均可采用寄存器访存模式、共享内存访存模式和全局内存访存模式,则选择优先级最高的寄存器访存模式作为本次数据查询的数据访存模式。
执行单元24根据确定的查询算法名称从算法库25中获取该查询算法对应的可执行文件,并基于确定数据访存模式和查询算法可支持的GPU 显卡数量等配置执行环境参数,之后执行查询算法对应的可执行文件以输出查询数据a。
本发明实施例通过获取的数据参数确定对应的查询算法,并根据对应的查询算法和数据参数确定数据访存模式,基于该数据访存模式执行查询算法对应的可执行文件以获取所需的查询结果,由此,本发明实施例根据数据参数动态适配查询算法,并根据适配的查询算法和数据参数动态适配数据访存模式,可以提高数据查询的效率,同时,可以提高计算资源利用率。
图3是本发明实施例的数据查询装置的示意图。如图3所示,本实施例的数据查询装置3包括参数获取单元31、算法模型适配单元32、访存模式适配单元33和执行单元34。
参数获取单元31被配置为获取原始数据的数据参数。其中,数据参数包括原始数据的数据总量和查询参数,所述查询参数包括查询数据的数据量。算法模型适配单元32被配置为根据所述数据参数获取至少一个适配的查询算法模型,并根据***硬件配置信息从所述至少一个适配的查询算法模型中确定查询算法,所述查询算法模型用于描述查询算法参数,所述查询算法参数包括查询算法名称和查询算法性质等。访存模式适配单元33被配置为根据所述查询算法和所述数据参数确定数据访存模式。执行单元34被配置为基于所述数据访存模式执行所述查询算法对应的可执行文件以获取所述查询数据。
在一种可选的实现方式中,算法模型适配单元32进一步被配置为响应于所述原始数据的数据总量小于或等于第一阈值,获取基于第一处理器的至少一个适配的查询算法模型,响应于所述原始数据的数据总量大于所述第一阈值,获取基于第二处理器的至少一个适配的查询算法模型。
在另一种可选的实现方式中,算法模型适配单元32进一步被配置为响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与所述查询数据的数据量的差值小于或等于第二阈值,获取基于所述第二处理器的至少一个适配的并行全排序查询算法模型,响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与所述查询数据的数据量的差值大于所述第二阈值,获取基于所述第二处理器的至少一个适配的并行部分排序查询算法模型。其中,第一处理器为CPU处理器,第二处理器为GPU处理器、APU处理器等加速处理器。
在一种可选的实现方式中,访存模式适配单元33进一步被配置为根据查询算法的空间复杂度和所述查询参数确定所述数据访存模式。其中,数据访存模式包括但不限于寄存器访存模式、寄存器+共享内存访存模式和全局内存访存模式。寄存器访存模式的优先级大于寄存器+共享内存访存模式大于全局内存访存模式。
在一种可选的实现方式中,执行单元34进一步被配置为根据所述查询算法和数据参数配置执行环境参数,并根据所述执行环境参数执行所述查询算法对应的可执行文件以获取所述查询数据。其中,执行环境参数包括硬件配置信息,例如GPU显卡的数量等。
本发明实施例通过获取的数据参数确定对应的查询算法,并根据对应的查询算法和数据参数确定数据访存模式,基于该数据访存模式执行查询算法对应的可执行文件以获取所需的查询结果,由此,本发明实施例根据数据参数动态适配查询算法,并根据适配的查询算法和数据参数动态适配数据访存模式,可以提高数据查询的效率,同时,可以提高计算资源利用率。
图4是本发明实施例的电子设备的示意图。电子设备采用异构***架构,异构***架构可以为CPU+GPU、CELL BE、APU、CPU+MIC等。本实施例的电子设备4以采用CPU+GPU异构***架构为例进行说明。如图4所示,电子设备4:至少包括一个CPU处理器41至少一个GPU处理器42;以及,与CPU处理器41和GPU处理器42通信连接的存储器43;以及,与扫描装置通信连接的通信组件44,通信组件44在CPU 处理器41或GPU处理器42的控制下接收和发送数据;其中,存储器 43存储有可被至少一个CPU处理器41或GPU处理器42执行的指令,指令被至少一个CPU处理器41或GPU处理器42执行以实现以下步骤:
获取原始数据的数据参数,所述数据参数包括原始数据的数据总量和查询参数,所述查询参数包括查询数据的数据量;
根据所述数据参数获取至少一个适配的查询算法模型,所述查询算法模型用于描述查询算法参数;
根据***硬件配置信息从所述至少一个适配的查询算法模型中确定查询算法;
根据所述查询算法和所述数据参数确定数据访存模式;
基于所述数据访存模式执行所述查询算法对应的可执行文件以获取所述查询数据。
具体地,电子设备4包括:一个或多个CPU处理器41、一个或多个GPU处理器42以及存储器43,图4中以包括一个CPU处理器41和一个GPU处理器42为例,其中CPU处理器或GPU处理器用于执行本实施例中的数据查询方法的至少一个步骤。CPU处理器41、GPU处理器42和存储器43可以通过总线或者其他方式连接,图4中以通过总线连接为例。存储器43作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。CPU处理器41或GPU处理器42通过运行存储在存储器43中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现本发明实施例的数据查询方法。
存储器43可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器43可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施方式中,存储器43可选包括相对于CPU 处理器41和/或GPU处理器42远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
存储器43存储有一个或者多个模块,当一个或者多个模块被CPU 处理器41或GPU处理器42执行时,执行上述任意方法实施方式中的数据查询方法。
本发明的另一个实施例涉及一种非易失性存储介质,用于存储计算机可读程序,所述计算机可读程序用于供计算机执行上述部分或全部的方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等) 或处理器(processor)执行本申请各实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果,未在本实施方式中详尽描述的技术细节,可参见本发明实施方式所提供的方法。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据查询方法,其特征在于,所述方法包括:
获取原始数据的数据参数,所述数据参数包括原始数据的数据总量和查询参数,所述查询参数包括查询数据的数据量;
根据所述数据参数获取至少一个适配的查询算法模型,所述查询算法模型用于描述查询算法参数;
根据***硬件配置信息从所述至少一个适配的查询算法模型中确定查询算法;
根据所述查询算法和所述数据参数确定数据访存模式;
基于所述数据访存模式执行所述查询算法对应的可执行文件以获取查询数据。
2.根据权利要求1所述的方法,其特征在于,根据所述数据参数确定获取至少一个适配的查询算法模型包括:
响应于所述原始数据的数据总量小于或等于第一阈值,获取基于第一处理器的至少一个适配的查询算法模型;
响应于所述原始数据的数据总量大于所述第一阈值,获取基于第二处理器的至少一个适配的查询算法模型。
3.根据权利要求2所述的方法,其特征在于,根据所述数据参数获取至少一个适配的查询算法模型还包括:
响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与所述查询数据的数据量的差值小于或等于第二阈值,获取基于所述第二处理器的至少一个适配的并行全排序查询算法模型;
响应于所述原始数据的数据总量大于所述第一阈值,且所述原始数据的数据总量与所述查询数据的数据量的差值大于所述第二阈值,获取基于所述第二处理器的至少一个适配的并行部分排序查询算法模型。
4.根据权利要求2或3所述的方法,其特征在于,所述第一处理器为CPU处理器,所述第二处理器为加速处理器。
5.根据权利要求1所述的方法,其特征在于,根据所述查询算法和所述数据参数确定数据访存模式包括:
根据所述查询算法的空间复杂度和所述查询参数确定所述数据访存模式。
6.根据权利要求1或5所述的方法,其特征在于,所述数据访存模式包括寄存器访存模式、寄存器+共享内存访存模式和全局内存访存模式。
7.根据权利要求1所述的方法,其特征在于,基于所述数据访存模式执行所述查询算法对应的可执行文件以获取查询数据包括:
根据所述查询算法和数据参数配置执行环境参数,所述执行环境参数包括硬件配置信息;
根据所述执行环境参数执行所述查询算法对应的可执行文件以获取所述查询数据。
8.根据权利要求1-3、5或7中任一项所述的方法,其特征在于,所述数据查询的类型为top-k查询。
9.一种电子设备,包括存储器、CPU处理器和加速处理器,其特征在于,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述CPU处理器或所述加速处理器执行用以实现如权利要求1-8中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行以实现如权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910538939.6A CN110442612B (zh) | 2019-06-20 | 2019-06-20 | 一种数据查询方法、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910538939.6A CN110442612B (zh) | 2019-06-20 | 2019-06-20 | 一种数据查询方法、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110442612A CN110442612A (zh) | 2019-11-12 |
CN110442612B true CN110442612B (zh) | 2022-04-15 |
Family
ID=68428686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910538939.6A Active CN110442612B (zh) | 2019-06-20 | 2019-06-20 | 一种数据查询方法、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442612B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064856A (zh) * | 2011-10-21 | 2013-04-24 | ***通信集团重庆有限公司 | 一种基于信度网的资源推荐方法和装置 |
CN106844232A (zh) * | 2016-12-23 | 2017-06-13 | 北京北大众志微***科技有限责任公司 | 一种面向多核处理器的共享末级高速缓存访存方法和装置 |
CN107918676A (zh) * | 2017-12-15 | 2018-04-17 | 联想(北京)有限公司 | 结构化查询的资源优化方法及数据库查询*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014123552A1 (en) * | 2013-02-08 | 2014-08-14 | Mellmo Inc. | Executing database queries using multiple processors |
US20160098411A1 (en) * | 2014-10-03 | 2016-04-07 | The Regents Of The University Of Michigan | Querying input data |
-
2019
- 2019-06-20 CN CN201910538939.6A patent/CN110442612B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103064856A (zh) * | 2011-10-21 | 2013-04-24 | ***通信集团重庆有限公司 | 一种基于信度网的资源推荐方法和装置 |
CN106844232A (zh) * | 2016-12-23 | 2017-06-13 | 北京北大众志微***科技有限责任公司 | 一种面向多核处理器的共享末级高速缓存访存方法和装置 |
CN107918676A (zh) * | 2017-12-15 | 2018-04-17 | 联想(北京)有限公司 | 结构化查询的资源优化方法及数据库查询*** |
Also Published As
Publication number | Publication date |
---|---|
CN110442612A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220173987A1 (en) | Distributed assignment of video analytics tasks in cloud computing environments to reduce bandwidth utilization | |
CN110837410B (zh) | 任务调度方法、装置、电子设备及计算机可读存储介质 | |
CN110750341B (zh) | 任务调度方法、装置、***、终端设备及存储介质 | |
CN107748696B (zh) | 一种任务调度的方法及终端设备 | |
US20170039485A1 (en) | System and Method for Balancing Computation with Communication in Parallel Learning | |
CN110389816B (zh) | 用于资源调度的方法、装置以及计算机可读介质 | |
CN111142938B (zh) | 一种异构芯片的任务处理方法、任务处理装置及电子设备 | |
CN105518625A (zh) | 具有高带宽存储器接口的计算硬件 | |
CN105900064A (zh) | 调度数据流任务的方法和装置 | |
CN110969198A (zh) | 深度学习模型的分布式训练方法、装置、设备及存储介质 | |
CN111695672A (zh) | 用于提高ai引擎mac利用率的方法 | |
CN112561079A (zh) | 分布式的模型训练装置、方法及计算机程序产品 | |
CN106155806A (zh) | 一种多任务调度方法及服务器 | |
JP7412489B2 (ja) | 連合学習方法及び装置、電子機器、記憶媒体ならびにコンピュータプログラム | |
CN114298322A (zh) | 联邦学习方法和装置、***、电子设备、计算机可读介质 | |
CN111338787B (zh) | 一种数据处理方法及装置、存储介质、电子装置 | |
US11941528B2 (en) | Neural network training in a distributed system | |
CN109885384B (zh) | 任务并行度优化方法、装置、计算机设备及存储介质 | |
CN116089477B (zh) | 分布式训练方法及*** | |
CN110442612B (zh) | 一种数据查询方法、电子设备及计算机可读存储介质 | |
CN110851245A (zh) | 一种分布式异步任务调度方法及电子设备 | |
US8949249B2 (en) | Techniques to find percentiles in a distributed computing environment | |
Rosenberg | Guidelines for data-parallel cycle-stealing in networks of workstations ii: On maximizing guaranteed output | |
CN112214627A (zh) | 搜索方法、可读存储介质和电子设备 | |
CN113343017B (zh) | 图像特征点相似度的确定方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |