CN111143587B - 一种数据检索方法、装置及电子设备 - Google Patents
一种数据检索方法、装置及电子设备 Download PDFInfo
- Publication number
- CN111143587B CN111143587B CN201911349875.1A CN201911349875A CN111143587B CN 111143587 B CN111143587 B CN 111143587B CN 201911349875 A CN201911349875 A CN 201911349875A CN 111143587 B CN111143587 B CN 111143587B
- Authority
- CN
- China
- Prior art keywords
- data
- index
- target data
- target
- type
- 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/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/53—Querying
- G06F16/532—Query formulation, e.g. graphical querying
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种数据检索方法、装置及电子设备,该方法包括步骤:通过获取检索请求信息,所述检索请求信息包括源数据特征值以及与所述源数据特征值对应的源数据类型;根据所述源数据类型与目标数据类型之间的对应关系确定所述源数据类型对应的索引数据块个数;创建每个所述索引数据块对应的线程;基于一个所述索引数据块启动一个所述线程,对多个所述线程并行搜索,以得到各个所述线程的搜索结果。本发明能够根据搜索请求中的源数据类型匹配对应的目标数据类型,并且基于目标数据类型对应的索引数据块个数进行多线程并行搜索。进而实现在中等级别数据量的搜索系统中能够提高数据搜索的精准度以及降低数据搜索的时延。
Description
技术领域
本发明涉及数据检索技术领域,尤其涉及一种数据检索方法、装置及电子设备。
背景技术
如果说把人工智能比喻人的大脑,那么数据检索就相当于人大脑的记忆中枢。在视觉人工智能系统中,体现人工智能“记忆”功能的就是海量的数据存储以及基于海量数据的快速查询与检索,所以海量数据场景下的高效查询与检索能力对于人工智能在具体场景中的应用至关重要。由于不同的使用场景对于数据量以及响应时间的要求也不一样,对于一个具体的应用场景来说,比如对中等级别数据来量的人像数据进行检索,需要平均效率、成本等因素选择一种合理的数据检索方式。
可见现有的检索方式不易使用在中等级别数据量的人像数据搜索场景进行人像数据搜索,即使搜索也会存在较大时延以及精准度低等问题。
发明内容
本发明实施例提供一种数据检索方法,能够有较高的精准度以及较小的时延等有益效果。
第一方面,本发明实施例提供一种数据检索方法,所述数据检索方法包括以下步骤:
获取检索请求信息,所述检索请求信息包括源数据特征值以及与所述源数据特征值对应的源数据类型;
根据所述源数据类型与目标数据类型之间的对应关系确定所述源数据类型对应的索引数据块个数,所述索引数据块存储有第一目标数据特征值;
创建每个所述索引数据块对应的线程;
基于一个所述索引数据块启动一个所述线程,对多个所述线程并行搜索,以得到各个所述线程的搜索结果,所述搜索结果包括与所述源数据特征值匹配的第二目标数据特征值,所述第一目标数据特征值的数量大于等于所述第二目标数据特征值的数量。
可选的,在所述获取检索请求信息之前,所述方法还包括步骤:
预先从目标数据库中读取目标数据特征值,并判断所述目标数据特征值的目标数据类型;
根据所述目标数据类型以及预设索引策略对所述目标数据特征值进行数据分块,得到对应的所述索引数据块,所述索引数据块设置在内存或者显存中;
将所述目标数据特征值保存到对应的所述索引数据块中;
待所有的所述目标数据特征值完成数据分块后统计所述索引数据块个数。
可选的,所述根据所述目标数据类型以及预设索引策略对所述目标数据特征值进行数据分块,得到对应的所述索引数据块的步骤包括:
将所述目标数据特征值按所述目标数据类型进行类型数据分块,得到对应的类型数据块;
将同一目标数据类型的目标数据特征值按所述预设索引策略进行索引数据分块,得到对应的所述索引数据块,所述同一目标数据类型对应的所述类型数据块包括所述同一目标数据类型对应的所述索引数据块。
可选的,所述目标数据特征值以数据表的形式存储在目标数据库中,所述将同一目标数据类型的目标数据特征值按所述预设索引策略进行索引数据分块,得到对应的所述索引数据块的步骤包括:
获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID;
获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID;
获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设分块个数;
基于所述预设目标特征值ID、所述预设数据表ID、以及所述预设分块个数并通过预设索引策略计算出所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在的所述索引数据块的数据块索引;
根据每个所述数据块索引对所述同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的所述索引数据块。
第二方面,本发明实施例还提供了一种数据检索装置,所述装置包括:
检索请求信息获取模块,用于获取检索请求信息,所述检索请求信息包括源数据特征值以及与所述源数据特征值对应的源数据类型;
数据块个数确定模块,用于根据所述源数据类型与目标数据类型之间的对应关系确定所述源数据类型对应的索引数据块个数,所述索引数据块存储有第一目标数据特征值;
线程创建模块,用于创建每个所述索引数据块对应的线程;
检索结果输出模块,用于基于一个所述索引数据块启动一个所述线程,对多个所述线程并行搜索,以得到各个所述线程的搜索结果,所述搜索结果包括与所述源数据特征值匹配的第二目标数据特征值,所述第一目标数据特征值的数量大于等于所述第二目标数据特征值的数量。
可选的,所述数据检索装置还包括:
目标数据类型判断模块,用于预先从目标数据库中读取目标数据特征值,并判断所述目标数据特征值的目标数据类型;
数据分块模块,用于根据所述目标数据类型以及预设索引策略对所述目标数据特征值进行数据分块,得到对应的所述索引数据块,所述索引数据块设置在内存或者显存中;
目标数据保存模块,用于将所述目标数据特征值保存到对应的所述索引数据块中;
索引数据块统计模块,用于待所有的所述目标数据特征值完成数据分块后统计所述索引数据块个数。
可选的,所述数据分块模块包括:
类型数据块分块单元,用于将所述目标数据特征值按所述目标数据类型进行类型数据分块,得到对应的类型数据块;
索引数据块分块单元,用于将同一目标数据类型的目标数据特征值按所述预设索引策略进行索引数据分块,得到对应的所述索引数据块,所述同一目标数据类型对应的所述类型数据块包括所述同一目标数据类型对应的所述索引数据块。
可选的,所述目标数据特征值以数据表的形式存储在目标数据库中,所述索引数据块分块单元包括:
特征值ID获取子单元,用于获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID;
数据表ID获取子单元,用于获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID;
分块个数获取子单元,用于获取所述同一目标数据类型的第一目标数据特征值中每个第一目标数据特征值所在数据表的预设分块个数;
索引计算子单元,用于基于所述预设目标特征值ID、所述预设数据表ID、以及所述预设分块个数并通过预设索引策略计算出所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在的所述索引数据块的数据块索引;
索引数据分块子单元,用于根据每个所述数据块索引对所述同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的所述索引数据块。
第三方面,本发明实施例还提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述实施例提供的数据检索方法中的步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例提供的数据检索方法中的步骤。
本发明实施例中,通过获取检索请求信息,所述检索请求信息包括源数据特征值以及与所述源数据特征值对应的源数据类型;根据所述源数据类型与目标数据类型之间的对应关系确定所述源数据类型对应的索引数据块个数,所述索引数据块存储有第一目标数据特征值;创建每个所述索引数据块对应的线程;基于一个所述索引数据块启动一个所述线程,对多个所述线程并行搜索,以得到各个所述线程的搜索结果,所述搜索结果包括与所述源数据特征值匹配的第二目标数据特征值,所述第一目标数据特征值的数量大于等于所述第二目标数据特征值的数量。本发明能够根据搜索请求中的源数据类型匹配对应的目标数据类型,并且基于目标数据类型对应的索引数据块个数进行多线程并行搜索。进而实现在中等级别数据量的搜索系统中能够提高数据搜索的精准度以及降低数据搜索的时延。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据检索方法的流程示意图;
图2是本发明实施例提供的另一种数据检索方法的流程示意图;
图3是图2实施例中步骤202提供的一种方法的流程图示意图;
图4是图3实施例中步骤302提供的一种方法的流程图示意图;
图5是本发明实施例提供的一种数据检索装置的结构示意图;
图6是本发明实施例提供的另一种数据检索装置的结构示意图;
图7是图6实施例中数据分块模块提供的一种结构示意图;
图8是图7实施例中索引数据块分块单元提供的一种结构示意图;
图9是本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1是本发明实施例提供的一种数据检索方法的流程示意图,该方法用于中等级别数据量(千万级别)的数据检索系统或数据查询系统中,数据检索方法包括以下步骤:
步骤101、获取检索请求信息。
其中,检索请求信息包括源数据特征值以及与源数据特征值对应的源数据类型。源数据为用户当前需要搜索或查询的对象数据,该源数据可以是图片数据,还可以是文字数据、语音数据、视频数据等。在本发明实施例中,以源数据为人像数据进行举例说明。在本实施例中源数据的种类仅是起到举例作用,并不构成对本发明实施例的限定。用户可以根据使用场景的不同设置不同的源数据的种类。例如,用户当前有一组人像数据,用户想在人像数据库中查找是否有与已有的人像数据相同或相似的人像数据。那么用户就将现有的人像数据输入到数据检索系统中去与人像数据库中的人像数据进行比对搜索。在此例子中,用户现有的人像数据可以称为一种源数据,而对应的,人像数据库中的人像数据则对应称为一种目标数据。
而源数据特征值则为能够代表该源数据的数据特征值,比如,当源数据为某个人的人脸数据时,则源数据特征值则为这个人的人脸特征值,如,通过人脸特征值模型提取人脸的鼻子、眼睛、眉毛、嘴巴之间的位置关系或者人脸的鼻子、眼睛、眉毛、嘴巴的轮廓线等得到的人脸特征值。
需要说明的是,可以根据源数据的种类选择对应的特征值模型对源数据进行特征值的提取。源数据与源数据特征值一一对应。
上述源数据类型可以根据源数据特征值的格式、长度或提取方式等进行划分,且源数据类型与源数据特征值是对应的。比如,同一种源数据类型的源数据特征值具有相同的格式、长度、或提取方式等。
具体的,上述检索请求信息可以是用户所要检索的源数据需求自动编辑,并输入到数据检索系统中的。或者可以是用户通过数据检索系统的检索界面的检索框输入到数据检索系统的。
需要说明的是,上述检索请求信息中的源数据特征值以及源数据类型可以是用户预先判定好的,并且可以直接使用的,也可以是通过将源数据输入到检索系统中生成检索请求信息后自动判定得到的。
步骤102、根据源数据类型与目标数据类型之间的对应关系确定源数据类型对应的索引数据块个数。
其中,该第一目标数据特征值是预先存储在索引数据块中的所有目标数据特征值。第一目标数据特征值的个数可以是一个或多个,且每个第一目标数据特征值均有属于自己的目标数据类型。同一个索引数据块中的每个第一目标数据特征值的目标数据类型是相同的。但不同目标数据类型的索引数据块中的第一目标数据特征值之间的目标数据类型也不同。上述目标数据类型为预先存储在索引数据块中的第一目标数据特征值对应的数据类型,还可以是存储在目标数据库中的目标数据特征值的目标数据类型。该目标数据类型与步骤101中的源目标数据类型的判定方式以及分类方式可以是相同或相似的。
上述索引数据块是用户预先设置好存储在内存或显存中的。具体是针对属于同一目标数据类型的第一目标数据特征值进行数据分块得到的数据块。该内存可以为CPU的内存,该显存可以为GPU的显存。
上述索引数据块个数可以是内存或显存中每种目标数据类型现有的索引数据块数量。每种目标数据类型的索引数据块个数可以是一个或多个。比如,现在目标数据库(目标数据存储的数据库,比如磁盘空间或者硬件存储空间等)有10个特征值长度为4Kbyte的目标数据特征值,将这10个目标数据特征值分为5个数据块,每个数据块存储有两个目标数据特征值。在此例子中,索引数据块的个数为5个,每个索引数据块存储有两个目标数据特征值。那么对于这种将属于同一个目标数据类型的多个目标数据特征值进行数据分块得到的数据块则可以称为索引数据块。当然也可以称为其他名称的数据块,在此,数据块的名称仅为了区分作用,并不是对属于同一目标数据类型的目标数据特征值进行数据分块得到的数据块的进一步限定。每个索引数据块存储有两个目标数据特征值,这两个目标数据特征值则可以称为第一目标数据特征值。需要说明的是,每个索引数据块可以存储有一个或多个第一目标数据特征值。
上述源数据类型与目标数据类型之间的对应关系可以是,当源数据类型与目标数据类型是同种数据类型时,两者存在对应关系,比如源数据特征值的长度与第一目标数据特征值的长度相同时,两者均是按特征值的长度进行分类的,并且属于同一长度的数据类型,那么源数据类型与目标数据类型存在对应关系。
具体实施时,不管是对于源数据或是目标数据,数据由于采集源的不同,提取特征值的方法也会有不同。比如采用不同的算法模型去提取,这就会得到不同类型的特征值,比如特征值数据格式以及长度不同。只有相同数据类型的特征值之间的比较才是有效的,不同数据类型相互之间的比较是无效的也是无意义的。所以在数据检索系统或数据查询系统中检索或查询源数据时,可以将源数据与搜索数据块中与自己属于同一数据类型的目标数据进行搜索。这样才能检索或查询到有意义的数据,并且能够减少很多没有必要的检索过程。
具体的,当获取到的源数据特征值的源数据类型后,可将该源数据类型与内存或显存中的每种目标数据类型进行比较,若在内存或显存中找到与该源数据类型对应的数据类型。则可以直接确定该源数据类型将要搜索的索引数据块的个数。因为目标数据类型以及对应的索引数据块个数时预先设置好的。
步骤103、创建每个索引数据块对应的线程。
其中,上述线程为操作系统能够进行运算调度的最小单位。一条线程指的是进程中一个单一顺序的控制流,每条线程并行执行不同的任务。
具体的,当确定索引数据块个数后,就可以为每个索引数据块建立一个线程。比如,确定索引数据块个数为20个,那个就可以创建20个与索引数据块对应的线程。这样每个线程可以单独对每个索引数据块进行搜索。
步骤104、基于一个索引数据块启动一个线程,对多个线程并行搜索,以得到各个线程的搜索结果。
其中,搜索结果包括与源数据特征值匹配的第二目标数据特征值。上述第二目标数据特征值可以是指预先存在索引数据块中且与源数据特征值相同或相似的目标数据特征值。第二目标数据特征值是相对于第一目标数据特征值而言的,第一目标数据特征值的数量大于等于第二目标数据特征值的数量。
具体实施时,每个线程的搜索方式优选为暴力搜索,暴力搜索为将源数据特征值与第一目标数据特征值直接比对搜索。由于是特征值之间的直接对比,所以比对过程比较简单,并且可以实现较高的比对精度。每个线程的搜索方式还可以根据实际需要为热搜索、冷搜索、短特征搜索等。
具体的,当为每个索引数据块建立好线程后,就可以一个索引数据块启动一个线程在对应的索引数据块中检索或查询该源数据。并且,由于每个索引数据块都有一个线程,当索引数据块为多个时,可以同时执行多个线程(也就是线程组)进行暴力搜索,也即可以多线程并行暴力搜索。例如目标数据库总数据量2000万,分4张表,每张表500万数据,共有2个数据类型,每个类型1000万。如果在内存或显存中将每张表分5个索引数据块,每张表都包含有两种不同类型的数据。那么对于2000万数据量的目标数据库搜索某一类型的数据特征值,只需要在1000万数量的范围内,分20个数据块并行处理,即每个线程只需要进行50万次连续比对就可以得到结果。
例如某数据类型特征值,最理想场景下100万次暴力比对耗时3秒。如果按本发明的方案实施可在相同数据类型、2000万数据量场景下,搜索时延控制在3秒以内。
当目标数据库存储的数据量为中等级别数据量,且数据按数据类型被分为多个索引数据块时,可以并发多个线程对多个索引数据块进行暴力搜索源数据特征值,进而得到与源数据特征值匹配的第二目标数据特征值。并且源数据搜索仅是在一种目标数据类型中进行的,结合多线程并发暴力搜索,能够实现中等级别数据量的数据搜索的同时,在除去线程开销等,实测效率可提升10-15倍。比如,比如一个数据类型有10个数据块,如果一个块一个块去查找,耗时相当于一个块的10倍,如果用10个线程并发查找,耗时只是一个块的1倍多点。为此对第一目标数据特征值进行数据分块后再进行多线程并行查询能够检查时间开销,也即降低查询数据的时延,并且多线程暴力查询还能够保证数据的精准度。所以本发明所描述的方案可以有效应用于中等级别数据量、且对搜索精度和时延有较高要求的应用场景。
需要说明的是,搜索源数据时,可以通过计算源数据特征值与目标数据特征值之间的数据相似度,并且通过将计算得到的数据相似度与预设的相似度阈值进行比对判断得到,比如,计算得到的数据相似度超过预设的相似度阈值,则判断源数据特征值与目标数据特征值为相似的特征值;若计算得到的数据相似度等于1则说明源数据特征值与目标数据特征值为相同的特征值。若计算得到的数据相似度小于预设的相似度阈值,则说明源数据特征值与目标数据特征值为不相同或不相似的特征值。那么可以抛弃掉该目标数据特征值。这样就可以从目标数据库中搜索到与源数据相同或相似的目标数据。
本发明实施例中,通过获取检索请求信息,检索请求信息包括源数据特征值以及与源数据特征值对应的源数据类型;根据源数据类型与目标数据类型之间的对应关系确定源数据类型对应的索引数据块个数,索引数据块存储有第一目标数据特征值;创建每个索引数据块对应的线程;基于一个索引数据块启动一个线程,对多个线程并行搜索,以得到各个线程的搜索结果,搜索结果包括与源数据特征值匹配的第二目标数据特征值,第一目标数据特征值的数量大于等于第二目标数据特征值的数量。本发明能够根据搜索请求中的源数据类型匹配对应的目标数据类型,并且基于目标数据类型对应的索引数据块个数进行多线程并行搜索。进而实现在中等级别数据量的搜索系统中能够提高数据搜索的精准度以及降低数据搜索的时延。
参见图2,图2是本发明实施例提供的另一种数据检索方法的流程示意图,在图1的基础上,在步骤101之前,方法还包括以下步骤:
步骤201、预先从目标数据库中读取目标数据特征值,并判断目标数据特征值的目标数据类型。
其中,上述目标数据库可以为磁盘空间或者硬件存储空间。当数据量较大时,为了节省内存或显存空间,数据一般是直接保存到磁盘空间或者硬件存储空间中的。但在数据搜索过程中,从磁盘空间等读取数据并且直接在磁盘空间等进行数据搜索会产生一定的时延,搜索速度慢。为此,需要把目标数据从目标数据库中加载到内存或显存中,然后直接在内存或显存中进行数据搜索。该内存可以为CPU的内存,该显存可以为GPU的显存。目标数据库中存储有一个或多个目标数据特征值。目标数据库中存储的目标数据特征值的目标数据类型也可以为一种或多种。
具体的,在进行数据搜索之前,可以预先从盘空间或者硬件存储空间等存储空间中读取目标数据对应的目标数据特征值,并且需要判断该目标数据特征值的目标数据类型。目标数据类型的判定在图1实施例中已经提到过了,在此不再赘述。
步骤202、根据目标数据类型以及预设索引策略对目标数据特征值进行数据分块,得到对应的索引数据块。
其中,预设索引策略为用户预先设置的一种数据分块策略,主要用于同种数据类型的数据特征值中的数据分块。索引数据块设置在内存或者显存中,具体是设置在内存或者显存的数据表中。索引数据块为目标数据特征值实际被划分的数据块。比如,当前数据表有100个数据块,但是存储的目标数据特征值仅占用数据表的50个数据块,那这50个数据块被称为索引数据块。
具体的,参见图3,步骤202具体包括以下步骤:
步骤301、将目标数据特征值按目标数据类型进行类型数据分块,得到对应的类型数据块。
具体的,再确定目标数据特征值的目标数据类型后,可按目标数据特征值对应的目标数据类型进行分类。因为,只有相同数据类型的特征值之间的比较才是有效的,不同数据类型相互之间的比较是无效的也是无意义的。所以根据目标数据类型先将目标数据特征值分割成大的数据块,以得到对应的类型数据块。例如,100万的数据量,其中,按数据特征值的长度进行分类,如,有20万的数据特征值长度为0.5Byte、30万的数据特征值长度为1KByte、有40万的数据特征值为3K Byte、还有10万的数据特征值为4K Byte。那么就可以将这100万的数据量分为的分为4种数据类型,也即得到四种类型数据块,分别为0.5Byte类、1KByte类、3K Byte类、以及4K Byte类,且依次包含的数据量为20万、30万、40万、10万。在此例子中,这四种数据类型就可以称为类型数据块。类型数据块具体为目标数据特征值实际被划分的数据块。这样当进行数据搜索时,可以按照数据类型进行搜索,进而可以减少一些无效的比对和耗时。
步骤302、将同一目标数据类型的目标数据特征值按预设索引策略进行索引数据分块,得到对应的索引数据块。
其中,同一目标数据类型对应的类型数据块包括同一目标数据类型对应的索引数据块。例如,当前有100条数据,将这100条数据分为2个大类,分别为大类以及第二大类,每个大类均有50条数据,那么将大类中的50条数据再次划分为5个小类,且每个小类均有10条数据。在此例子中,2个大类为类型数据块,5个小类为索引数据块。所以类型数据块是包括索引数据块的。
具体实施时,参见图4,步骤302具体包括以下步骤:
步骤401、获取同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID。
步骤402、获取同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID。
步骤403、获取同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设分块个数。
步骤404、基于预设目标特征值ID、预设数据表ID、以及预设分块个数并通过预设索引策略计算出同一目标数据类型的目标数据特征值中每个目标数据特征值所在的索引数据块的数据块索引。
步骤405、根据每个数据块索引对同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的索引数据块。
其中,目标数据特征值一般是以数据表的形式存储在目标数据库中。上述预设目标特征值ID为在目标数据在存入目标数据库时,预先为同一张数据表中各种目标数据类型的不同数据特征值设置的唯一标识的特征值ID。具体可以是,每条数据存储在目标数据库时均设置一个数据下标,比如有10条数据,那么这个10条数据的数据下标可以是1、2、3……、10等,也即,预设目标特征值ID依次为1、2、3……、10等。预设目标特征值ID可以根据数据量来进行设置,目标数据量变多,预设目标特征值ID也会对应变多。
在目标数据库中,每张数据表均有属于自己的数据表标识。上述预设数据表ID则为在同一个目标数据类型中预先为每张数据表设置的数据表ID。预设数据表ID可以为每张数据表的表下标,比如,有10张数据表,那么预设数据表ID可以依次为1、2、3……10等。预设数据表ID的数量可以根据目标数据库存储的数据量来进行设置。
上述预设分块个数可是预先为每张数据表设置的数据块,比如,在建立数据表存储数据时,预设为每张数据表设置有20个数据块。上述预设分块个数还例如一张Excel表格由N行M列形成的N*M个单元格。预设分块个数是在确定数据表的时候就已经确定了的,并且是数据表最大的数据块个数。
上述数据块索引用于确定目标数据特征值所在的索引数据块的位置,也即用于确定目标数据特征值所在数据表中的哪个索引数据块中,比如,数据表中的每个索引数据块均设置自己的数据块标识(数据块索引),比如数据表有5个索引数据块,那么索引数据块的标识依次可以为0、1、2、3、4等,而0、1、2、3、4则对应为每个数据块的索引,通过该数据块索引就可以知道该目标数据特征值在数据表中的哪个数据块中。
上述预设索引策略为预设的数据块索引的计算公式,数据块索引等于预设数据表ID与一之差乘以预设分块个数后与预设目标特征值ID除以预设分块个数的余数。具体实施时,预设的数据块索引的计算公式为index=(tableID-1)*BLOCK_NUM_PER_TABLE+featureID%BLOCK_NUM_PER_TABLE,index为数据块索引,tableID为预设数据表ID,BLOCK_NUM_PER_TABLE为预设分块个数,featureID为预设目标特征值ID。
需要说明的是,当index个数等于BLOCK_NUM_PER_TABLE时,两者是一样的,也即说明数据表中每个数据块均存储有对应的数据。其中BLOCK_NUM_PER_TABLE是某张数据表最大的index个数,实际的index个数可能小于BLOCK_NUM_PER_TABLE。BLOCK_NUM_PER_TABLE可以是自定义的,可以根据数据表的数据量以及数据表大小灵活配置。
具体的,通过分别通过步骤401-403获取到预设目标特征值ID(featureID)、预设数据表ID(tableID)、以及预设分块个数(BLOCK_NUM_PER_TABLE)后,便可以执行步骤404根据预设的数据块索引的计算公式(index=(tableID-1)*BLOCK_NUM_PER_TABLE+featureID%BLOCK_NUM_PER_TABLE)计算得出同一目标数据类型的目标数据特征值中每个目标数据特征值所在的索引数据块的数据块索引,进而知道所在索引数据块的位置。
在步骤405中计算得到同一目标数据类型的目标数据特征值中每个目标数据特征值所在的索引数据块的数据块索引后,将同一目标数据类型的目标数据特征值中各个目标数据特征值所在的索引数据块的数据块索引对号入座到对应的内存/显存的索引数据块中。进而实现同一目标数据类型的目标数据特征值中每个目标数据特征值的索引数据分块,得到对应的索引数据块。
需要说明的是,数据分块是以数据类型为前提的,不同数据类型可以有相同的数据块索引。
示例性的,假设数据表table_1共有10条属于同数据类型的数据。数据下标featureID分别是1-10,tableID则为1,并且BLOCK_NUM_PER_TABLE定义为5(即每张表划分为5个数据块)。则遍历每条数据的featureID就能计算出该条数据所要加载的数据块索引index。对于featureID=1的数据来说,它所属的数据块索引index=(1-1)*5+1%5=1,即该条数据属于索引为1的索引数据块。依次可以计算出10条数据所在的数据块,也即依次可以计算出10条数据所在的数据表中的位置。具体为,数据块索引为0,包含了featureID为5、10的数据;数据块索引为1,包括了featureID为1、6的数据;数据块索引为2,包含了featureID为为2、7的数据;数据块索引为3,包含了featureID为3、8的数据;数据块索引为4,包含了featureID为4、9的数据。
步骤203、将目标数据特征值保存到对应的索引数据块中。
其中,索引数据块中的目标数据特征值称为第一目标数据特征值。
具体的,目标数据特征值在进行数据分块的同时也相对应的保存到对应的索引数据块中。便于数据查询时,能够在数据块查找与源数据对应的目标数据。
步骤204、待所有的目标数据特征值完成数据分块后统计索引数据块个数。
具体的,待同一目标数据类型的目标数据特征值中所有的目标数据特征值均进行索引数据分块结束后,便可统计索引数据块个数,比如,通过最大的数据块索引知道索引数据块的个数,如,最大的数据块索引为30,那么可以知道同一目标数据类型的目标数据特征值中所有的目标数据特征值被分为30个索引数据块。
还是以步骤401-405中举例的数据表table_1共有10条属于同数据类型的数据。通过预设的数据块索引计算公式:index=(tableID-1)*BLOCK_NUM_PER_TABLE+featureID%BLOCK_NUM_PER_TABLE计算得到的结果为数据块索引为0,包含了featureID为5、10的数据;数据块索引为1,包括了featureID为1、6的数据;数据块索引为2,包含了featureID为为2、7的数据;数据块索引为3,包含了featureID为3、8的数据;数据块索引为4,包含了featureID为4、9的数据。由此结果可知,数据表table_1中的10条数据被分为5个索引数据块,分别是数据块索引为0-4的5个索引数据块。进而得到同一种数据类型对应的索引数据块个数。
需要说明的是,当目标数据库中存储有多种目标数据类型的目标数据特征值(目标数据)时,可以就相同的索引计算方式为每种目标数据类型的数据进行索引数据分块,进而得到对应索引数据块个数,便于后续数据检索时,按照数据类型进行数据检索,并且按照划分的数据块多线程并行搜索,从而能够满足不同源数据类型的源数据特征值的搜索。进而提高数据搜索系统的搜索精准度以及降低数据搜索的时延。
需要说明的是,执行步骤201-204为目标数据的预热过程,相当于把目标数据从磁盘空间或硬盘存储空间加载到内存或显存中来,这样可以直接在内存/显存中进行比对搜索,少了数据读取与搬移的时延,会有比较好的性能表现。在此将目标数据从磁盘空间或者硬件存储空间加载到内存或显存中,然后直接在内存或显存中进行数据搜索的过程称为数据搜索中的热搜索过程。并且,本发明主要针对的是中等级别数据量的场景,所以内存/显存消耗在可控范围之内。并且,当目标数据库中的增加新的目标数据时,也还是可以执行步骤201-204实现目标数据的预热过程。
在本实施例中,在搜索请求来临之前,预先将目标数据库中的目标数据进行类型数据分块得到对应的类型数据块后,再正对每种类型数据块中的目标数据进行索引数据分块得到对应的索引数据块。这样,在搜索请求来临时,能够根据搜索请求中的源数据类型匹配对应的目标数据类型,并且基于该目标数据类型对应是预先划分好的索引数据块进行多线程并行搜索。进而实现在中等级别数据量的搜索系统中能够提高数据搜索的精准度以及降低数据搜索的时延。
参见图5,图5是本发明实施例提供的一种数据检索装置的结构示意图,该数据检索装置500包括:
检索请求信息获取模块501,用于获取检索请求信息,检索请求信息包括源数据特征值以及与源数据特征值对应的源数据类型;
数据块个数确定模块502,用于根据源数据类型与目标数据类型之间的对应关系确定源数据类型对应的索引数据块个数,索引数据块存储有第一目标数据特征值;
线程创建模块503,用于创建每个索引数据块对应的线程;
检索结果输出模块504,用于基于一个索引数据块启动一个线程,对多个线程并行搜索,以得到各个线程的搜索结果,搜索结果包括与源数据特征值匹配的第二目标数据特征值,第一目标数据特征值的数量大于等于第二目标数据特征值的数量。
参见图6,图6是本发明实施例提供的另一种数据检索装置的结构示意图,在图5的基础上,在检索请求信息获取模块501之前,数据检索装置500还包括:
目标数据类型判断模块505,用于预先从目标数据库中读取目标数据特征值,并判断目标数据特征值的目标数据类型;
数据分块模块506,用于根据目标数据类型以及预设索引策略对目标数据特征值进行数据分块,得到对应的索引数据块,索引数据块设置在内存或者显存中。
具体的,参见图7,该数据分块模块506包括:
类型数据块分块单元5061,用于将目标数据特征值按目标数据类型进行类型数据分块,得到对应的类型数据块。
索引数据块分块单元5062,用于将同一目标数据类型的目标数据特征值按预设索引策略进行索引数据分块,得到对应的索引数据块,同一目标数据类型对应的类型数据块包括同一目标数据类型对应的索引数据块。
具体实施时,参见图8,该索引数据块分块单元5062包括:
特征值ID获取子单元50621,用于获取同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID;
数据表ID获取子单元50622,用于获取同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID;
分块个数获取子单元50623,用于获取同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设分块个数;
索引计算子单元50624,用于基于预设目标特征值ID、预设数据表ID、以及预设分块个数并通过预设索引策略计算出同一目标数据类型的目标数据特征值中每个目标数据特征值所在的索引数据块的数据块索引;
索引数据分块子单元50625,用于根据每个数据块索引对同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的索引数据块。
目标数据保存模块5063,用于将目标数据特征值保存到对应的索引数据块中,索引数据块中的目标数据特征值称为第一目标数据特征值;
索引数据块统计模块5064,用于待所有的目标数据特征值完成数据分块后统计索引数据块个数。
本发明实施例提供的数据检索装置500能够实现上述方法实施例中的各个实施方式,以及相应有益效果,为避免重复,这里不再赘述。
参见图9,图9是本发明实施例提供的一种电子设备的结构示意图,该电子设备600包括:存储器602、处理器601及存储在存储器602上并可在处理器601上运行的计算机程序,处理器601执行计算机程序时实现上述实施例提供的数据检索方法中的步骤,处理器601执行以下步骤:
获取检索请求信息,检索请求信息包括源数据特征值以及与源数据特征值对应的源数据类型;
根据源数据类型与目标数据类型之间的对应关系确定源数据类型对应的索引数据块个数,索引数据块存储有第一目标数据特征值;
创建每个索引数据块对应的线程;
基于一个索引数据块启动一个线程,对多个线程并行搜索,以得到各个线程的搜索结果,搜索结果包括与源数据特征值匹配的第二目标数据特征值,第一目标数据特征值的数量大于等于第二目标数据特征值的数量。
可选的,处理器601执行的在获取检索请求信息之前,处理器601还执行以下步骤:
预先从目标数据库中读取目标数据特征值,并判断目标数据特征值的目标数据类型;
根据目标数据类型以及预设索引策略对目标数据特征值进行数据分块,得到对应的索引数据块,索引数据块设置在内存或者显存中;
具体的,处理器601执行的根据目标数据类型以及预设索引策略对目标数据特征值进行数据分块,得到对应的索引数据块的步骤包括:
将目标数据特征值按目标数据类型进行类型数据分块,得到对应的类型数据块;
将同一目标数据类型的目标数据特征值按预设索引策略进行索引数据分块,得到对应的索引数据块,同一目标数据类型对应的类型数据块包括同一目标数据类型对应的索引数据块。
具体的,处理器601执行的目标数据特征值以数据表的形式存储在目标数据库中,将同一目标数据类型的目标数据特征值按预设索引策略进行索引数据分块,得到对应的索引数据块的步骤包括:
获取同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID;
获取同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID;
获取同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设分块个数;
基于预设目标特征值ID、预设数据表ID、以及预设分块个数并通过预设索引策略计算出同一目标数据类型的目标数据特征值中每个目标数据特征值所在的索引数据块的数据块索引;
根据每个数据块索引对同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的索引数据块。
将目标数据特征值保存到对应的索引数据块中;
待所有的目标数据特征值完成数据分块后统计索引数据块个数。
需要说明的是,上述电子设备600可以是数据检索系统中的智能终端、手机、平板电脑等设备。
本发明实施例提供的电子设备600能够实现上述方法实施例中的各个实施方式,以及相应有益效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现本发明实施例提供的数据检索方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,简称RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (8)
1.一种数据检索方法,其特征在于,所述数据检索方法包括以下步骤:
获取检索请求信息,所述检索请求信息包括源数据特征值以及与所述源数据特征值对应的源数据类型;
根据所述源数据类型与目标数据类型之间的对应关系确定所述源数据类型对应的索引数据块个数,所述索引数据块存储有第一目标数据特征值;
创建每个所述索引数据块对应的线程;
基于一个所述索引数据块启动一个所述线程,对多个所述线程并行搜索,以得到各个所述线程的搜索结果,所述搜索结果包括与所述源数据特征值匹配的第二目标数据特征值,所述第一目标数据特征值的数量大于等于所述第二目标数据特征值的数量;
在所述获取检索请求信息之前,所述方法还包括步骤:
预先从目标数据库中读取目标数据特征值,并判断所述目标数据特征值的目标数据类型;
根据所述目标数据类型以及预设索引策略对所述目标数据特征值进行数据分块,得到对应的所述索引数据块,所述索引数据块设置在内存或者显存中;
将所述目标数据特征值保存到对应的所述索引数据块中,所述索引数据块中的目标数据特征值称为第一目标数据特征值;
待所有的所述目标数据特征值完成数据分块后统计所述索引数据块个数。
2.如权利要求1所述的数据检索方法,其特征在于,所述根据所述目标数据类型以及预设索引策略对所述目标数据特征值进行数据分块,得到对应的所述索引数据块的步骤包括:
将所述目标数据特征值按所述目标数据类型进行类型数据分块,得到对应的类型数据块;
将同一目标数据类型的目标数据特征值按所述预设索引策略进行索引数据分块,得到对应的所述索引数据块,所述同一目标数据类型对应的所述类型数据块包括所述同一目标数据类型对应的所述索引数据块。
3.如权利要求2所述的数据检索方法,其特征在于,所述目标数据特征值以数据表的形式存储在目标数据库中,所述将同一目标数据类型的目标数据特征值按所述预设索引策略进行索引数据分块,得到对应的所述索引数据块的步骤包括:
获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID;
获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID;
获取所述同一目标数据类型的第一目标数据特征值中每个第一目标数据特征值所在数据表的预设分块个数;
基于所述预设目标特征值ID、所述预设数据表ID、以及所述预设分块个数并通过预设索引策略计算出所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在的所述索引数据块的数据块索引;
根据每个所述数据块索引对所述同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的所述索引数据块。
4.一种数据检索装置,其特征在于,所述装置包括:
检索请求信息获取模块,用于获取检索请求信息,所述检索请求信息包括源数据特征值以及与所述源数据特征值对应的源数据类型;
数据块个数确定模块,用于根据所述源数据类型与目标数据类型之间的对应关系确定所述源数据类型对应的索引数据块个数,所述索引数据块存储有第一目标数据特征值;
线程创建模块,用于创建每个所述索引数据块对应的线程;
检索结果输出模块,用于基于一个所述索引数据块启动一个所述线程,对多个所述线程并行搜索,以得到各个所述线程的搜索结果,所述搜索结果包括与所述源数据特征值匹配的第二目标数据特征值,所述第一目标数据特征值的数量大于等于所述第二目标数据特征值的数量;所述数据检索装置还包括:
目标数据类型判断模块,用于预先从目标数据库中读取目标数据特征值,并判断所述第一目标数据特征值的目标数据类型;
数据分块模块,用于根据所述目标数据类型以及预设索引策略对所述目标数据特征值进行数据分块,得到对应的所述索引数据块,所述索引数据块设置在内存或者显存中;
目标数据保存模块,用于将所述目标数据特征值保存到对应的所述索引数据块中;
索引数据块统计模块,用于待所有的所述目标数据特征值完成数据分块后统计所述索引数据块个数。
5.如权利要求4所述的数据检索装置,其特征在于,所述数据分块模块包括:
类型数据块分块单元,用于将所述目标数据特征值按所述目标数据类型进行类型数据分块,得到对应的类型数据块;
索引数据块分块单元,用于将同一目标数据类型的目标数据特征值按所述预设索引策略进行索引数据分块,得到对应的所述索引数据块,所述同一目标数据类型对应的所述类型数据块包括所述同一目标数据类型对应的所述索引数据块。
6.如权利要求5所述的数据检索装置,其特征在于,所述目标数据特征值以数据表的形式存储在目标数据库中,所述索引数据块分块单元包括:
特征值ID获取子单元,用于获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值的预设目标特征值ID;
数据表ID获取子单元,用于获取所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在数据表的预设数据表ID;
分块个数获取子单元,用于获取所述同一目标数据类型的第一目标数据特征值中每个第一目标数据特征值所在数据表的预设分块个数;
索引计算子单元,用于基于所述预设目标特征值ID、所述预设数据表ID、以及所述预设分块个数并通过预设索引策略计算出所述同一目标数据类型的目标数据特征值中每个目标数据特征值所在的所述索引数据块的数据块索引;
索引数据分块子单元,用于根据每个所述数据块索引对所述同一目标数据类型的目标数据特征值进行索引数据分块,得到对应的所述索引数据块。
7.一种电子设备,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至3中任一项所述的数据检索方法中的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至3中任一项所述的数据检索方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911349875.1A CN111143587B (zh) | 2019-12-24 | 2019-12-24 | 一种数据检索方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911349875.1A CN111143587B (zh) | 2019-12-24 | 2019-12-24 | 一种数据检索方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111143587A CN111143587A (zh) | 2020-05-12 |
CN111143587B true CN111143587B (zh) | 2023-06-09 |
Family
ID=70519759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911349875.1A Active CN111143587B (zh) | 2019-12-24 | 2019-12-24 | 一种数据检索方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111143587B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114117407A (zh) * | 2022-01-26 | 2022-03-01 | 深圳红途科技有限公司 | 弱密码动态检测方法、装置、计算机设备及存储介质 |
CN115455061B (zh) * | 2022-11-14 | 2023-04-18 | 广东电网有限责任公司佛山供电局 | 一种基于异构计算的用户特征快速检索方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102930060B (zh) * | 2012-11-27 | 2016-05-04 | 孙振辉 | 一种数据库快速索引的方法及装置 |
CN106383826A (zh) * | 2015-07-29 | 2017-02-08 | 阿里巴巴集团控股有限公司 | 数据库查询方法和装置 |
CN106980680B (zh) * | 2017-03-30 | 2020-11-20 | 联想(北京)有限公司 | 数据存储方法及存储设备 |
-
2019
- 2019-12-24 CN CN201911349875.1A patent/CN111143587B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN111143587A (zh) | 2020-05-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110609916A (zh) | 视频图像数据检索方法、装置、设备和存储介质 | |
CN107391554B (zh) | 高效分布式局部敏感哈希方法 | |
US9396247B2 (en) | Method and device for processing a time sequence based on dimensionality reduction | |
CN106228188A (zh) | 聚类方法、装置及电子设备 | |
CN111143587B (zh) | 一种数据检索方法、装置及电子设备 | |
CN107784110B (zh) | 一种索引建立方法及装置 | |
CN109165307B (zh) | 一种特征检索方法、装置和存储介质 | |
CN109753577B (zh) | 一种搜索人脸的方法及相关装置 | |
CN105488176A (zh) | 数据处理方法和装置 | |
US8370363B2 (en) | Hybrid neighborhood graph search for scalable visual indexing | |
CN113032621B (zh) | 数据采样方法、装置、计算机设备和存储介质 | |
CN102722557B (zh) | 一种相同数据块的自适应识别方法 | |
US20140012879A1 (en) | Database management system, apparatus, and method | |
US10565204B2 (en) | Hash collision tables for relational join operations | |
CN113239218A (zh) | 在具有npu的设备上并发执行人脸搜索的方法 | |
CN111026736B (zh) | 数据血缘管理方法及装置、数据血缘解析方法及装置 | |
CN110209895B (zh) | 向量检索方法、装置和设备 | |
US10268912B2 (en) | Offline, hybrid and hybrid with offline image recognition | |
Lu et al. | An efficient method for video similarity search with video signature | |
CN116737067A (zh) | 一种图数据的存储加载结构和方法 | |
CN110688223A (zh) | 数据处理方法及相关产品 | |
CN113792171B (zh) | 基于内存管理的图像检索方法、系统、设备及存储介质 | |
CN106548118A (zh) | 影院放映内容的识别检索方法及系统 | |
CN104866818A (zh) | 一种用于搜索包含人脸的图片的方法和装置 | |
Juan et al. | Content-based video retrieval system research |
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 |