掌桥专利:专业的专利平台
掌桥专利
首页

影像文件的查询方法、装置、电子设备及存储介质

文献发布时间:2024-04-18 19:58:26


影像文件的查询方法、装置、电子设备及存储介质

技术领域

本发明涉及数据处理技术领域,尤其涉及一种影像文件的查询方法、装置、电子设备及存储介质。

背景技术

随着互联网web2.0网站的兴起,非关系型数据库则由于其本身的特点得到了非常迅速的发展。非关系型数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,特别是大数据应用难题。数据之间无关系,这样就非常容易扩展。无形之间也在架构的层面上带来了可扩展的能力。Elasticsearch(简称ES)数据库作为当前最受欢迎的开源非关系型数据库,具有大数据量,高性能以及易扩展的特性。

目前,主流影像系统是基于ES数据库构建得到的,影像系统主要用于存储外接系统上传的影像文件,并响应于外接系统的查询请求反馈相应的影像文件。外接系统在向影像系统上传影像文件后,可以保存影像系统返回的查询标识,之后可以基于查询标识在影像系统中对上传的影像文件进行查询。

发明人在实现本发明的过程中,发现现有技术存在如下缺陷:由于外接系统与影像系统对接时只保存了影像文件的查询标识,影像系统接收到包含查询标识的查询请求后,需要在影像系统的全部索引库中进行查询。这种全库查询方式查询效率低,响应时间长,并且会大量占用ES数据库本身的查询线程池和查询队列。特别的,在外接系统具有高并发查询请求的情况下,可能会导致ES数据库的查询队列被占满,新进入的查询请求被拒绝,导致查询不到数据情况的发生。

发明内容

本发明实施例提供了一种影像文件的查询方法、装置、电子设备及存储介质,以提高影像文件的查询性能,保证影像系统的高可用性。

根据本发明实施例的一方面,提供了一种影像文件的查询方法,该方法包括:

获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;

在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;

其中,所述索引库动态路由信息中存储索引库与索引数字串范围之间的映射关系,所述索引库中存储索引标识与影像文件存储地址之间的映射关系;

如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;

获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

根据本发明实施例的另一方面,还提供了一种影像文件的查询装置,该装置包括:

序列化模块,用于获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;

数字串查询模块,用于在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;

其中,所述索引库动态路由信息中存储索引库与索引数字串范围之间的映射关系,所述索引库中存储索引标识与影像文件存储地址之间的映射关系;

存储地址获取模块,用于如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;

结果反馈模块,用于获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

根据本发明实施例的另一方面,还提供了一种电子设备,所述电子设备包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的影像文件的查询方法。

根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的影像文件的查询方法。

本发明实施例的技术方案,通过获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果的技术手段,通过简单的数据串范围比对,即可快速定位查询标识所属的索引库,进而可以高效、快速的定位到与查询标识匹配的影像文件。本发明实施例的技术方案可以大幅度提升影像系统的查询性能,降低查询响应时间,并且可以有效减少ES数据库对查询线程池和查询队列的开销,保证了整个影像系统的高可用性。

应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例一提供的一种影像文件的查询方法的流程图;

图2是根据本发明实施例二提供的一种影像文件的查询方法的流程图;

图3是本发明实施例的技术方案所适用的一种构建索引库的索引数字串范围的示意图;

图4是根据本发明实施例三提供的一种影像文件的查询方法的流程图;

图5是根据本发明实施例四提供的一种影像文件的查询装置的结构示意图;

图6是实现本发明实施例的一种影像文件的查询方法的电子设备的结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

为了便于理解本发明各实施例的实现方式,首先将本发明各实施例的主要发明构思进行简单介绍。

首先,本发明各实施例所述的影像系统,用于存储外接系统上传的各影像文件,并响应于外接系统的查询请求反馈与查询请求匹配的已存储的影像文件。外接系统中的一个或者多个用户可以预先向影像系统中上传需要存储的影像文件,该影像系统在完成影像文件的存储后,会向该外接系统反馈与影像文件匹配的文件标识(ID)。该文件标识用于唯一识别与该文件标识匹配的影像文件。相应的,当外接系统中的某一用户想要从影像系统中再次查询获取一个已存储的影像文件A时,可以将与影像文件A对应的文件标识作为查询标识,并基于该查询标识构建查询请求发送至影像系统,以从影像系统中请求获取该影像文件A。

同时,为了方便外接系统快速索引到所查询的影像文件,在该影像系统中预先建立有一个或者多个索引库(一般为多个)。在每个索引库中,存储有多个索引标识(也即,前文中为本地存储的影像文件生成的文件标识),以及与索引标识匹配的影像文件存储地址。因此,在基于查询标识进行影像文件的查找时,不必真正的与各影像文件进行匹配查找,仅查找各索引库中存储的索引标识即可。其中,构建一个或者多个索引库的方式可以为:预先规定每个索引库中包括的索引标识的数量上限值,例如,100或者1000等,该数量上限值可以根据影像系统实际的软硬件检索性能或者实际的应用场景动态确定。每当接收到外接系统上传的一个新的影像文件后,可以将该新的影像文件的文件标识作为索引标识,追加存储在索引库中。每当一个索引库中存储的索引标识达到该索引库存储的索引标识的数量上限时,可以建立一个新的索引库继续进行索引标识的追加存储。

但是,现有技术的这种查找方式,需要在全部索引库中进行索引标识的全量查找,查找效率极低。基于此,发明人创造性的提出了一种为每个索引库建立一个索引数字串范围的实现方式,基于一个索引库中当前存储的全部索引标识,建立与该全部索引标识匹配的索引数字串范围。也即,一个索引库中包括的全部索引标识在进行序列化处理后,均落入与该索引库对应的索引数字串范围内。此时,当需要对一个查询标识进行查找时,可以首先确定该查询标识具体落入哪个索引库的索引数字串范围内,进而无需在进行全部索引库的查找,仅查找查询标识所落入的索引库即可,这可以大大提升影像系统的查询性能,降低查询响应时间。

实施例一

图1为本发明实施例一提供了一种影像文件的查询方法的流程图,本实施例可适用于在基于ES数据库构建得到的影像系统中快速查询影像文件的情况。该方法可以由影像文件的查询装置来执行,该装置可以采用硬件和/或软件的形式实现,并一般可配置于影像系统中。如图1所示,该方法包括:

S110、获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串。

如前所述,获取待查询影像文件的查询标识,可以为:响应于外接系统发送的影像文件查询请求,在该影像文件查询请求中提取待查询影像文件的查询标识。

其中,该查询标识为外接系统将该待查询影像文件上传至影像系统进行存储时,影像系统针对该待查询影像文件自动生成的文件标识。在影像系统中,将该文件标识与该待查询影像文件的存储地址进行关联存储。

一般来说,查询标识可以由多个字符组合构成,字符的数据形式可以包括字母、数字以及特殊符号(例如,“_”或者“%”等),为了达到发明要点所述的效果,需要首先将该查询标识转换为一个纯数字形式以进行后续的比较判断,也即,将所述查询标识序列化为检索数字串。

其中,将所述查询标识序列化为检索数字串的方式,与针对每个索引库生成索引数字串范围的序列化方式应该保持一致。典型的,该序列化的方式可以为哈希计算、ASCII码计算,或者按照设定的映射关系进行计算等,本实施例对此并不进行限制。

进一步的,将所述查询标识序列化为检索数字串的方式,可以为将查询标识中的全部字符均进行序列化处理,也可以为仅将查询标识中设定位数的字符(前N位,N>2;奇数位或者偶数位等)进行序列化处理等,本实施例对此并不进行限制。

S120、在预先建立的索引库动态路由信息中,对所述检索数字串进行查询。

其中,所述索引库动态路由信息中存储索引库与索引数字串范围之间的映射关系,所述索引库中存储索引标识与影像文件存储地址之间的映射关系。

如前所述,每个索引库中存储有多个索引标识(也即,前文中为本地存储的影像文件所生成的文件标识),以及与索引标识匹配的影像文件存储地址。由于文件标识是随着影像文件的存储进行动态更新的,一般来说,顺序生成的各文件标识之间,呈现一定的字符排布规律,例如,相邻生成的两个文件标识可能为:ABC001以及ABC002。进而,不同索引库中存储的各文件标识之间一般具有一定的字符差异性,例如,索引库A中存储的各文件标识均以“ABCa”开头,而索引库B中存储的各文件标识均以“ABCb”开头等。

进而,通过根据每个索引库中存储的各索引标识的字符特征,可以生成与每个索引库分别对应的索引数字串范围。其中,索引数字串范围中的左值可以根据索引库中的首个索引标识序列化得到,索引数字串中的右值可以根据索引库中的最后一个索引标识序列化得到。并且由于文件标识的生成符合一定的字符排布规律,与每个索引库分别对应的索引数字串范围一般来说并不会出现重叠情况,或者具有较少的重叠情况。

相类似的,该索引数字串范围可以根据索引标识中包括的全部字符序列化得到,也可以仅根据索引标识中设定位数的字符序列化得到,本实施例对此并不进行限制。

在本实施例中,在生成与影像系统中每个索引库分别对应的索引数字串范围之后,可以将索引库与匹配的索引数字串之间的映射关系存储在索引库动态路由信息中,以进一步提高对索引库的检索速度。

S130、如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址。

在本实施例中,通过将待查询影像文件的检索数字串与索引库动态路由信息中包括的各索引库的索引数字串范围进行匹配,可以快速确定出检索数字串具体落入哪个索引库(也即,目标索引库)的索引数字串范围内。通过上述设置,可以快速准确的排除无需比较的索引库,达到提高查询性能的技术效果。

在快速定位到目标索引库后,可以将查询标识在该目标索引库中进行进一步查找,以获取与所述查询标识匹配的目标影像文件存储地址。

当然,因为各种异常情况的出现,例如,索引库的索引数字串范围的更新速度不及时,而一个影像文件从上传到再次查找的时间间隔较小,或者,文件标识生成异常等情况,可能出现检索数字串未落入任一索引库的索引数字串范围的情况,此时,可以将该查询标识在全部索引库中进行查找,或者,将该查询标识在最新生成的一个或者多个索引库中进行查找等方式,作为本发明技术方案的兜底查找策略。

当然,可以理解的是,如果进行全部索引库的查找也未获取与所述查询标识匹配的目标影像文件存储地址,则可以生成查询失败响应,作为所述查询标识的反馈结果。

S140、获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

在本实施例中,在查找到目标影像文件存储地址之后,可以从该目标影像文件存储地址处获取预先存储的该待查询影像文件,也即目标影像文件。进而,可以将目标影像文件作为所述查询标识的反馈结果,提供给外接系统。

本发明实施例的技术方案,通过获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果的技术手段,通过简单的数据串范围比对,即可快速定位查询标识所属的索引库,进而可以高效、快速的定位到与查询标识匹配的影像文件。本发明实施例的技术方案可以大幅度提升影像系统的查询性能,降低查询响应时间,并且可以有效减少ES数据库对查询线程池和查询队列的开销,保证了整个影像系统的高可用性。

在上述各实施例的基础上,所述方法还可以包括:

每当满足所述索引库动态路由信息的更新条件时,获取当前待更新的至少一个更新索引库;

获取与所述至少一个更新索引库匹配的目标标识位数,并根据所述目标标识位数,生成与各所述更新索引库分别对应的索引数字串范围;

根据所述与各所述更新索引库分别对应的索引数字串范围,更新所述索引库动态路由信息。

在本可选实施方式中,考虑到影像文件是实时上传至影像系统中进行存储的,进而,需要对索引库,以及索引库的索引数字串范围进行动态更新,进而需要对索引库动态路由信息进行动态更新。相应的,可以每当满足所述索引库动态路由信息的更新条件时,实现上述更新过程。

其中,索引库动态路由信息的更新条件可以根据实际情况进行预设,例如,每当到达预设的定时更新时间(每小时、每半天或者每天等)时,或者,每当新存储设定数量(例如100或者1000等)的影像文件时,确定满足该索引库动态路由信息的更新条件。

其中,更新索引库可以理解为与最近一次完成索引库动态路由信息的更新后,所存储的文件标识发生变更的索引库,以及新建立的索引库。

其中,目标标识位数可以根据历史存储的索引库中各索引标识的字符排布规则进行预设,例如,4位、5位或者6位等,也可以实时根据当前新生成的更新索引库中各索引标识的字符排布规则进行实时设置等,本实施例对此并不进行限制。

在本可选实施方式中,通过合理设置索引库动态路由信息的更新条件以及目标标识位数,可以进一步优化影像系统的查询性能,提高查询成功率。

实施例二

图2为本发明实施例二提供的一种影像文件的查询方法的流程图,本实施例以上述各实施例为基础进行优化。在本实施例中,具体对索引库动态路由信息的更新过程进行细化。

相应的,如图2所示,该方法包括:

S210、每当满足所述索引库动态路由信息的更新条件时,获取当前待更新的至少一个更新索引库。

S220、在全部的所述更新索引库中,获取相邻的第一索引库和第二索引库。

在本实施例中,鉴于索引库的生成规律,可以首先按照生成时间将各索引库进行排序后,依次获取相邻的第一索引库和第二索引库进行处理。

在一个具体的例子中,如果按照时间顺序依次生成的更新索引库包括索引库W、索引库X、索引库Y以及索引库Z,则相邻的两个索引库分别为:索引库W和索引库X、索引库X和索引库Y以及索引库Y和索引库Z。

S230、获取所述第一索引库的目标末位识别标识和所述第二索引库的目标首位识别标识。

在本实施例中,考虑到每个索引库中存储的各索引标识是符合一定的字符分布规律的,为了动态区分两两相邻的第一索引库和第二索引库之间的索引数字串范围,需要首先动态确定出中第一索引库和第二索引库中存储的索引标识之间的字符分布差异。

相应的,为了比较上述字符分布差异,仅需要比较所述第一索引库的目标末位识别标识和所述第二索引库的目标首位识别标识之间的字符差异即可。

其中,第一索引库的目标末位识别标识可以理解为第一索引库中存储的最后一个索引标识,第二索引库的目标首位识别标识可以理解为第二索引库中存储的首个索引标识。

S240、计算所述目标末位识别标识和所述目标首位识别标识之间首个相异字符的出现位置,并根据所述出现位置,确定出可区分标识位数。

在本实施例中,为了最高效的区分不同索引库之间的索引数字串范围,只要找到两个相邻索引库的索引标识之间首个相异字符出现的位置,并基于该位置进行序列化处理即可。

在一个具体的例子中,第一索引库的目标末位识别标识为ABCa025_4650u,第二索引库的目标首位识别标识为ABCsdfr34718。则可以直接确定所述目标末位识别标识和所述目标首位识别标识之间首个相异字符的出现位置为第四位,进而,可以确定与该第一索引库和第二索引库对应的可区分标识位数为4。换句话说,使用上述两个索引库中索引标识的前4位生成索引数字串范围,即可有效区分落入上述两个索引库的索引标识。

S250、判断是否确定出全部相邻索引库之间的可区分标识位数:若是,执行S260;否则,返回执行S220。

S260、获取最大的可区分标识位数,作为所述目标标识位数。

S270、在每个所述更新索引库中分别获取当前首位识别标识以及当前末位识别标识。

其中,每个更新索引库中的当前首位识别标识即为该更新索引库中的首个索引标识,每个更新索引库中的当前末位识别标识即为该更新索引库中的最后一个索引标识。

S280、截取当前首位识别标识中目标识位数的第一字符串,以及当前末位识别标识中目标标识位数的第二字符串。

S290、分别计算第一字符串和第二字符串的ASCII码,并根据计算结果,生成与各所述更新索引库分别对应的索引数字串范围。

具体的,可以将第一字符串的ASCII码作为索引数字串范围的左值,将第二字符串的ASCII码作为索引数字串范围的右值。

S2100、根据所述与各所述更新索引库分别对应的索引数字串范围,更新所述索引库动态路由信息。

其中,在图3中示出了本发明实施例的技术方案所适用的一种构建索引库的索引数字串范围的示意图。如图3所示,以对索引库“businessType_202204”和索引库“businessType_202205”中存储的各索引标识的前四位生成索引数字串范围为例,具体描述了该索引数字串范围,以及索引库动态路由信息中的路由信息项的具体生成过程。

S2110、获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串。

S2120、在预先建立的索引库动态路由信息中,对所述检索数字串进行查询。

其中,所述索引库动态路由信息中存储索引库与索引数字串范围之间的映射关系,所述索引库中存储索引标识与影像文件存储地址之间的映射关系。

S2130、如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址。

S2140、获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

本发明实施例的技术方案,通过获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果的技术手段,通过简单的数据串范围比对,即可快速定位查询标识所属的索引库,进而可以高效、快速的定位到与查询标识匹配的影像文件。本发明实施例的技术方案可以大幅度提升影像系统的查询性能,降低查询响应时间,并且可以有效减少ES数据库对查询线程池和查询队列的开销,保证了整个影像系统的高可用性。

实施例三

图4为本发明实施例三提供的一种影像文件的查询方法的流程图,本实施例以上述各实施例为基础进行优化。在本实施例中,具体是补全了本发明前述各实施例中包括的判断分支。

相应的,如图4所述,所述方法具体可以包括:

S410、获取待查询影像文件的查询标识。

S420、判断所述查询标识中是否添加与所述查询标识匹配的索引库标识:若是,执行S430;否则,执行S440。

在本实施例中,为了进一步加快对影像文件的查询速度,可以在针对某一个查询标识进行索引库的查询,确定该查询标识所存储的索引库,并在该索引库中确定出与该查询标识匹配的待查询影像文件的影像文件存储地址后,将该查询标识所存储的索引库的标识信息,作为该查询标识中的一项附加信息反馈给外接系统。之后,当外接系统再次针对同样的查询标识进行影像文件的查询时,可以直接在该查询标识中提取出相应的索引库标识,进而在与该索引库标识匹配的索引库中对该查询标识进行查找。

相应的,在本可选实施方式中,在获取待查询影像文件的查询标识后,可以首先检测在该查询标识中,是否添加有索引库标识。如果添加有索引库标识,则说明当前是对该查询标识的二次或者三次等查询,此时,可以直接基于该索引库标识进行查询,如果未添加有索引库标识,则说明当前是对该查询标识的首次查询,此时,需要通过前述各实施例的实现方式,确定该查询标识所属的索引库。

S430、在与所述索引库标识匹配的索引库中,对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址,执行S450。

S440、将所述查询标识序列化为检索数字串,执行S460。

S450、获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

S460、在预先建立的索引库动态路由信息中,对所述检索数字串进行查询,并在检索数字串落入目标索引库的索引数字串范围内时,执行S470;在所述检索数字串未落入任一索引库的索引数字串范围内时,执行S480。

S470、在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址,执行S490。

S480、在全部索引库中分别对所述查询标识进行查找,并根据查找结果,生成与所述查询标识匹配的反馈结果。

在本实施例中,在所述检索数字串未落入任一索引库的索引数字串范围内时,需要在全部索引库中分别对所述查询标识进行查找。如果查找到该查询标识所属的索引库,则可以在查找到的索引库中获取与该查询标识匹配的目标影像文件存储地址后,获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。之后,可以将目标索引库的索引库标识作为辅助查询信息附加在所述查询标识中,得到更新后的查询标识,并将所述更新后的查询标识进行反馈。

如果未查找到该查询标识所属的索引库,则可以生成查找失败的响应信息作为所述查询标识的反馈结果。

S490、获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果,执行S4100。

S4100、将目标索引库的索引库标识作为辅助查询信息附加在所述查询标识中,得到更新后的查询标识,并将所述更新后的查询标识进行反馈。

本发明实施例的技术方案在获取待查询影像文件的查询标识之后,通过判断所述查询标识中是否添加与所述查询标识匹配的索引库标识,在确定所述查询标识中添加与所述查询标识匹配的索引库标识时,在与所述索引库标识匹配的索引库中,对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址,获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果的实现方式,可以进一步加快对影像文件的查询速度,进一步提升影像系统的查询性能,并进一步降低查询响应时间。

实施例四

图5为本发明实施例四提供的一种影像文件的查询装置的结构示意图。如图5所示,该装置包括:序列化模块510、数字串查询模块520、存储地址获取模块530以及结果反馈模块540。其中:

序列化模块510,用于获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串。

数字串查询模块520,用于在预先建立的索引库动态路由信息中,对所述检索数字串进行查询。

其中,所述索引库动态路由信息中存储索引库与索引数字串范围之间的映射关系,所述索引库中存储索引标识与影像文件存储地址之间的映射关系。

存储地址获取模块530,用于如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址。

结果反馈模块540,用于获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

本发明实施例的技术方案,通过获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果的技术手段,通过简单的数据串范围比对,即可快速定位查询标识所属的索引库,进而可以高效、快速的定位到与查询标识匹配的影像文件。本发明实施例的技术方案可以大幅度提升影像系统的查询性能,降低查询响应时间,并且可以有效减少ES数据库对查询线程池和查询队列的开销,保证了整个影像系统的高可用性。

在上述各实施例的基础上,还包括:

更新索引库获取单元,用于每当满足所述索引库动态路由信息的更新条件时,获取当前待更新的至少一个更新索引库;

索引数字串范围生成单元,用于获取与所述至少一个更新索引库匹配的目标标识位数,并根据所述目标标识位数,生成与各所述更新索引库分别对应的索引数字串范围;

动态路由信息更新单元,用于根据所述与各所述更新索引库分别对应的索引数字串范围,更新所述索引库动态路由信息。

在上述各实施例的基础上,索引数字串范围生成单元,可以具体用于:

在全部的所述更新索引库中,获取相邻的第一索引库和第二索引库;

获取所述第一索引库的目标末位识别标识和所述第二索引库的目标首位识别标识;

计算所述目标末位识别标识和所述目标首位识别标识之间首个相异字符的出现位置,并根据所述出现位置,确定出可区分标识位数;

返回执行在全部的所述更新索引库中,获取相邻的第一索引库和第二索引库的操作,直至确定出全部相邻索引库之间的可区分标识位数;

获取最大的可区分标识位数,作为所述目标标识位数。

在上述各实施例的基础上,索引数字串范围生成单元,可以进一步具体用于:

在每个所述更新索引库中分别获取当前首位识别标识以及当前末位识别标识,并截取当前首位识别标识中目标识位数的第一字符串,以及当前末位识别标识中目标标识位数的第二字符串;

分别计算第一字符串和第二字符串的ASCII码,并根据计算结果,生成与各所述更新索引库分别对应的索引数字串范围。

在上述各实施例的基础上,序列化模块510,可以具体用于:

获取待查询影像文件的查询标识,并在确定所述查询标识中未添加与所述查询标识匹配的索引库标识时,将所述查询标识序列化为检索数字串;

相应的,所述装置还可以包括:查询标识更新模块,用于:

在将所述目标影像文件作为所述查询标识的反馈结果之后,将目标索引库的索引库标识作为辅助查询信息附加在所述查询标识中,得到更新后的查询标识,并将所述更新后的查询标识进行反馈。

在上述各实施例的基础上,还可以包括:简易查找模块,用于:

在获取待查询影像文件的查询标识之后,在确定所述查询标识中添加与所述查询标识匹配的索引库标识时,在与所述索引库标识匹配的索引库中,对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;

获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

在上述各实施例的基础上,还可以包括,全索引库查找模块,用于:

在预先建立的索引库动态路由信息中,对所述检索数字串进行查询之后,如果所述检索数字串未落入任一索引库的索引数字串范围内,则在全部索引库中分别对所述查询标识进行查找,并根据查找结果,生成与所述查询标识匹配的反馈结果。

本发明实施例所提供的影像文件的查询装置可执行本发明任意实施例所提供的影像文件的查询方法,具备执行方法相应的功能模块和有益效果。

实施例五

图6示出了可以用来实施本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。

如图6所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(ROM)12、随机访问存储器(RAM)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(ROM)12中的计算机程序或者从存储单元18加载到随机访问存储器(RAM)13中的计算机程序,来执行各种适当的动作和处理。在RAM 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、ROM 12以及RAM 13通过总线14彼此相连。输入/输出(I/O)接口15也连接至总线14。

电子设备10中的多个部件连接至I/O接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。

处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如本发明各实施例所述的影像文件的查询方法。

也即:获取待查询影像文件的查询标识,并将所述查询标识序列化为检索数字串;在预先建立的索引库动态路由信息中,对所述检索数字串进行查询;其中,所述索引库动态路由信息中存储索引库与索引数字串范围之间的映射关系,所述索引库中存储索引标识与影像文件存储地址之间的映射关系;如果所述检索数字串落入目标索引库的索引数字串范围内,则在所述目标索引库中对所述查询标识进行查找,获取与所述查询标识匹配的目标影像文件存储地址;获取与所述目标影像文件存储地址匹配的目标影像文件,并将所述目标影像文件作为所述查询标识的反馈结果。

在一些实施例中,如本发明各实施例所述的影像文件的查询方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由ROM 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到RAM 13并由处理器11执行时,可以执行上文描述的如本发明各实施例所述的影像文件的查询方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行如本发明各实施例所述的影像文件的查询方法。

本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。

用于实施本发明的方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。

在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。

为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。

可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、区块链网络和互联网。

计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与VPS服务中,存在的管理难度大,业务扩展性弱的缺陷。

应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

相关技术
  • 一种数据查询方法、装置、电子设备及存储介质
  • 一种数据查询方法、装置、电子设备及存储介质
  • 数据查询方法、装置、存储介质和电子设备
  • 数据查询方法、装置、电子设备及计算机可读存储介质
  • 类文件生成方法、装置、电子设备及存储介质
  • DICOM影像文件的存储方法、装置、电子设备及介质
  • 文件查询方法、电子设备和计算机可读存储介质
技术分类

06120116487677