车辆数据检索方法、装置及计算机可读存储介质与流程

文档序号:20205197发布日期:2020-03-27 22:32阅读:1155来源:国知局
车辆数据检索方法、装置及计算机可读存储介质与流程

本发明涉及检索技术领域,具体而言,涉及一种车辆数据检索方法、装置及计算机可读存储介质。



背景技术:

随着汽车产业的发展及城市中汽车保有量的巨幅增长,如何对数量日益壮大的汽车进行有效管理,是摆在有关部门面前的当务之急。为了实现对车辆的数字化管理,通常可以采集车牌号等车辆数据,并通过检索技术,从采集的车辆数据中检索所需的车辆数据。

现有技术中,可以将车辆数据存储至数据库中,并在车辆索引中生成针对各车辆数据的索引信息,之后根据提交的检索要素,从车辆索引中检索符合该查询条件的索引信息,并根据检索到的索引信息,从数据库中获取相应的车辆数据返回给用户。

但由于数据库中通常会包括海量车辆数据,相应的,车辆索引中也会包括海量的索引信息,随着数据库中车辆数据的增长,所需要检索的索引信息的数目会越来越大,从而导致检索消耗时间长、开销大、效率低下。



技术实现要素:

本发明实施例的目的在于提供一种车辆数据检索方法、装置及计算机可读存储介质,以减小车辆数据的检索范围,提高检索的效率。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提出一种车辆数据检索,所述方法包括:

获取输入的检索条件,所述检索条件包括检索时间和检索要素;

基于所述检索时间和车辆分索引的时间戳,从所述车辆分索引中获取目标车辆分索引;

基于所述检索要素以及所获取的目标车辆分索引,检索车辆数据。

第二方面,本发明实施例还提出一种车辆数据检索装置,所述装置包括:

第一获取模块,用于获取输入的检索条件,所述检索条件包括检索时间和检索要素;

第二获取模块,用于基于所述检索时间和车辆分索引的时间戳,从所述车辆分索引中获取目标车辆分索引;

检索模块,用于基于所述检索要素以及所获取的目标车辆分索引,检索车辆数据。

第三方面,本发明实施例还提出一种电子设备,包括存储有计算机程序的计算机可读存储介质和处理器,所述计算机程序被所述处理器读取并运行时,实现上述第一方面所述的方法。

第四方面,本发明实施例还提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器读取并运行时,实现上述第一方面所述的方法。

相对现有技术,本发明实施例具有以下有益效果:

在本发明实施例中,可以获取输入的检索条件,包括检索时间和检索要素,然后基于检索时间和车辆分索引的时间戳,从车辆分索引中获取目标车辆分索引,所获取到的目标车辆分索引即为与该检索送时间相匹配的车辆分索引,从而缩小了检索范围,因此基于检索要素和所获取的目标车辆分索引,即能够在与检索时间匹配的、较小范围内的车辆数据中进行检索,进而提高检索效率,减小系统开销。

本发明的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明实施例了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例所提供的一种车辆数据检索方法的流程示意图;

图2示出了本发明实施例所提供的另一种车辆数据检索方法的流程示意图;

图3示出了本发明实施例所提供的一种车辆数据检索装置的功能模块示意图;

图4示出了本发明实施例所提供的一种电子设备的功能模块示意图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在对本发明实施例进行详细说明之前,先对本发明实施例的应用场景进行说明。为了便于对车辆的自动化管理,可以将车辆数据存储至车辆数据库(比如hbase数据库),并在检索服务器(比如elasticsearch)中生成车辆索引,该车辆索引中包括与该车辆数据对应的索引信息。该检索服务器可以接收用户提交的检索要素,检索到符合该检索要求的索引信息,基于所检索到的索引信息,从车辆数据库与该索引信息对应的车辆数据返回给用户。但由于车辆数据可能包括海量的数据并且持续增长,从而导致车辆数据的检索范围越来越大,检索的效率也会越来越低。因此,本发明实施例提供了一种车辆数据检索方法,可以获取输入的检索条件,包括检索时间和检索要素,然后基于检索时间和车辆分索引的时间戳,从车辆分索引中获取目标车辆分索引,所获取到的目标车辆分索引即为与该检索送时间相匹配的车辆分索引,从而缩小了检索范围,因此基于检索要素和所获取的目标车辆分索引,即能够在与检索时间匹配的、较小范围内的车辆数据中进行检索,进而提高检索效率。另外,也能够降低检索服务器的内存消耗,减少系统开销。

车辆数据为与车辆有关的数据,该车辆数据可以包括车牌号、车身颜色和车型中的至少一种。当然,在实际应用中车辆数据还可以包括其它信息,比如所经过的卡口的卡口号、经过该卡口的时间、该卡口对该车辆拍摄得到车辆图像或车主信息等。

其中,卡口可以为公路、停车场等车辆能够出入的场所的出入口。该卡口可以设置有摄像头,从而对车辆进行拍照或录像,得到车辆图像。

需要说明的是,车辆数据可以以车辆数据条目的形式存储。车辆数据条目可以包括属性字段-字段值,其中,属性字段即为车辆数据所属的种类,字段值即为具体的车辆数据。比如某车辆的车辆数据可以包括“车牌号-123456;车身颜色-红;车型-家用小轿车”,以“车牌号-123456”为例,“车牌号”即为属性字段,“123456”即为与该属性字段的字段值。

需要说明的是,hbase数据库为一种分布式的、面向列的开源数据库。

还需要说明的是,elasticsearch是一种基于lucene(一款高性能的、可扩展的信息检索工具库)的搜索服务器,可以用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

检索条件为进行车辆检索所依据的条件,可以包括检索时间和检索要素。

检索时间为所需检索的车辆数据所符合的时间,该时间可以为获取到车辆数据的时间。

需要说明的是,该检索时间可以包括一个时间点,当然也可以包括一个时间段。

检索要素为所需得到检索结果所符合的因素。该检索要素可以包括一个或多个的属性字段、符合检索要素的车辆数据条目数目、指定车辆数据条目数目等中的至少一个。

其中,检索结果为车辆数据检索时向用户返回的结果,可以包括符合检索要素的车辆数据条目,也可以包括符合检索要素的车辆数据条目数目。

需要说明的是,符合检索要素的车辆数据条目数目为检索服务器根据检索条件实际检索到的车辆数据条目的数目,而指定车辆数据条目数目为用户所指定的需要返回的车辆数据条目的数目。

还需要说明的是,当检索结果包括符合检索要素的车辆数据条目数目,且不包括符合检索要素的车辆数据条目时,可以只返回表示符合检索要素的车辆数据条目数目(即只需要返回数值),而不需要反馈符合检索要素的车辆数据条目。也即是,对于进行数值统计或聚合查询的车辆数据检索,可以返回相应的数目,而不返回具体的车辆数据条目。

车辆分索引可以包括一个或多个的索引信息。检索服务器中可以存储一个或一个以上的车辆分索引,每个车辆索引中可以只包括部分车辆数据所对应的索引信息。

其中,索引信息可以包括预设属性字段以及对应的字段值,该索引信息可以与车辆数据库的车辆数据条目一一对应。

需要说明的是,预设属性字段可以通过事先确定,比如接收相关技术人员提交得到。

还需要说明的是,索引信息所包括预设属性字段的种类,可以少于车辆数据条目所包括的属性字段的种类。

车辆分索引的时间戳用于说明最近一次所存储的索引信息所对应的车辆数据的获取时间。

目标车辆分索引为基于检索时间和车辆分索引的时间戳,从车辆分索引中所获取到的车辆分索引。该目标车辆分索引的时间戳与该检索时间相匹配,比如,若该检索时间为时间点,则该目标车辆分索引包括时间戳在该检索时间之后的车辆分索引;若该检索时间为时间段,则该目标车辆分索引包括起始车辆分索引、中间车辆分索引以及终点车辆分索引。

其中,起始车辆分索引为时间戳在该时间段的起点之后的第一个车辆分索引,终点车辆分索引为时间戳在该时间段的终点之后的第一个车辆分索引,中间车辆分索引为时间戳在该起始车辆分索引的时间戳与该终点车辆分索引的时间戳之间的车辆分索引。

另外,可以将车辆分索引的分索引标识以及与该车辆分索引对应的时间戳,可以存储在索引时间戳数据库(比如pgsql数据库)中。

需要说明的是,pgsql数据库是一种基础的对象关系型数据库管理系统。

其中,分索引标识用于标识一个车辆分索引,该分索引标识可以包括分索引id((identification,身份证)或者分索引名称。当然,在实际应用中,分索引标识还可以包括其它能够标识车辆分索引的信息。

请参照图1,为本发明实施例所提供的一种车辆数据检索方法的流程示意图。需要说明的是,本发明实施例所述的车辆数据检索方法并不以图1以及以下所述的具体顺序为限制,应当理解,在其它实施例中,本发明实施例所述的车辆数据检索方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。下面将对图1所示的流程进行详细阐述。

步骤101,获取输入的检索条件,该检索条件包括检索时间和检索要素。

为了便于按照检索需求完成车辆数据检索,检索条件可以包括检索要素,且为了便于后续缩小检索范围,检索条件可以包括检索时间。

检索服务器可以通过网页或客户端,向用户提供检索条件输入界面,用户通过检索条件输入界面输入检索条件,检索服务器即可通过该检索条件输入界面接收输入的检索条件。

在本发明的另一可选实施例中,若未获取到输入的检索时间,可以获取预设检索时间作为当前检索条件中的检索时间,当然也可以提示用户输入检索时间。

其中,预设检索时间可以通过事先确定,比如接收相关技术人员提交得到。

例如,预设检索时间可以为最近24小时。

步骤102,基于检索时间和车辆分索引的时间戳,从车辆分索引中获取目标车辆分索引。

由于车辆数据的数据量可能很大,这些车辆数据可能是在不同时间段获取并存储的,当用户进行车辆数据检索时,可能并不希望或不必要检索距当前很久之前的车辆数据,即不必要对所有的车辆数据进行检索,因此,为了缩小检索范围,减少所需检索的数据量,提高检索效率、减小系统开销,可以基于检索时间和车辆分索引的时间戳,从车辆分索引中获取得到目标车辆分索引,从而在后续检索过程中只在与检索时间匹配的目标车辆分索引的索引信息所对应的车辆数据中进行检索。

可以获取当前存储的车辆分索引所对应的时间戳,将检索时间与车辆分索引的时间戳进行比较,从而获取与检索时间匹配的车辆索引作为目标车辆分索引。

其中,可以从前述中的索引时间戳数据库中获取分索引标识以及对应的时间戳,将检索时间与时间戳进行比较,确定目标时间戳,然后基于目标索引时间戳,获取对应的车辆索引作为目标车辆分索引。

需要说明的是,当检索时间为时间点时,可以将在该时间点之后的时间戳确定为目标时间戳。当该检索时间为时间段时,可以在起始时间戳(该时间段的起点之后的第一个时间戳)、结束时间戳(在该时间段的终点之后的第一个时间戳)、以及起始时间戳和结束时间戳之间的时间戳,作为目标时间戳。

步骤103,基于检索要素以及所获取的目标车辆分索引,检索车辆数据。

由于目标车辆索引是按照检索时间从车辆分索引中获取得到的,该目标车辆索引中包括的索引信息的数目,比所有车辆分索引中包括的索引信息的数目少,因此,可以基于检索要素以及目标车辆分索引,在筛选之后的、较小范围内的车辆数据中进行车辆数据检索。

可以基于检索要素,对目标车辆索引包括的索引信息进行检索,获取符合检索要素的索引信息,然后基于所获取到的索引信息,从车辆数据库中获取对应的车辆数据,并向用户返回检索结果。

在本发明实施例中,可以获取输入的检索条件,包括检索时间和检索要素,然后基于检索时间和车辆分索引的时间戳,从车辆分索引中获取目标车辆分索引,所获取到的目标车辆分索引即为与该检索送时间相匹配的车辆分索引,从而缩小了检索范围,因此基于检索要素和所获取的目标车辆分索引,即能够在与检索时间匹配的、较小范围内的车辆数据中进行检索,进而提高检索效率,减小系统开销。

请参照图2,为本发明实施例所提供的一种车辆数据检索的流程示意图。需要说明的是,本发明实施例所述的车辆数据检索并不以图3以及以下所述的具体顺序为限制,应当理解,在其它实施例中,本发明实施例所述的车辆数据检索其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。下面将对图3所示的流程进行详细阐述。

步骤201,获取车辆数据并将获取的车辆数据进行存储。

为了实现对车辆的数字化和自动化管理,可以获取车辆数据并将获取的车辆数据进行存储。

可以通过接收电脑或设置在卡口的摄像头等终端提交的车辆数据,当然,在实际应用中还可以通过其它方式来获取得到车辆数据,比如可以提供车辆数据输入界面,通过该车辆数据输入界面接收提交的车辆数据。

需要说明的是,若是通过摄像头获取到车辆数据,则可能获取的车辆数据包括车辆图像,可以通过图像识别等技术,从车辆图像中识别得到车牌号、车身颜色和车型等车辆数据。

可选的,为了避免由单个车辆索引导致的只能够对所有的车辆数据进行检索的问题,即确保后续能够基于车辆分索引,对部分车辆数据进行检索,可以检索效率,可以在存储车辆数据时,即生成针对该车辆数据的索引信息,并将该索引信息存储至车辆分索引中,也即是,可以将当前获取的车辆数据存储至车辆数据库,生成与该车辆数据对应的索引信息,基于各车辆分索引的时间戳,确定距当前最近的时间戳所对应的车辆分索引,将该车辆数据对应的索引信息添加至该距当前最近的时间戳所对应的车辆分索引,并将距当前最近的时间戳所对应的车辆分索引的时间戳更新为获取该车辆数据的时间。

可以按照车辆数据条目包括的属性字段对获取到的车辆数据进行结构化处理,从而得到针对各属性字段的字段值,然后将各属性字段以及对应的字段值,存储至车辆数据条目中。

例如,获取到的车辆数据包括“红色家用小轿车123456”,属性字段包括车牌号、车身颜色和车型。对该车辆数据进行结构化处理,得到“123456红色家用小轿车”,将该车辆数据以车辆数据条目存储至车辆数据库为“车辆数据条目标识-e9f7b123;车牌号-123456、车身颜色-红色;车型-家用小轿车”。

其中,车辆数据条目标识用于标识一个车辆数据条目,该车辆数据条目可以包括车辆数据条目id。

另外,索引信息中也可以包括索引信息标识,该索引信息标识可以包括索引信息id。

需要说明的是,索引信息id可以与车辆数据条目id一一对应。

可选的,为了精准地控制单个车辆分索引所包括的索引信息的数目,减少单个车辆分索引中存储的索引信息数目过多的问题,进而便于进一步在进行车辆数据检索时的检索范围,进一步提高检索效率,在将车辆数据对应的索引信息添加至距当前最近的时间戳所对应的车辆分索引之前,若距当前最近的时间戳所对应的车辆分索引中包括的索引信息的数目大于或等于预设索引信息数目阈值,则可以新建车辆分索引,将该车辆数据对应的索引信息添加至新建的车辆分索引,并将该新建的车辆分索引的时间戳确定为获取所述车辆数据的时间。

其中,预设索引数目阈值可以通过事先确定得到,比如接收相关技术人员提交的数值得到。

当然,若距当前最近的时间戳所对应的车辆分索引中包括的索引信息的数目小于预设索引信息数目阈值,则可以将车辆数据对应的索引信息添加至该距当前最近的时间戳所对应的车辆分索引,并将距当前最近的时间戳所对应的车辆分索引的时间戳更新为获取该车辆数据的时间。

另外,在实际应用中,还可以通过其它方式来确定是否新建车辆分索引,比如在本发明的另一可选实施例中,也可以每间隔预设时长,检测距当前最近的时间戳所对应的车辆分索引中包括的索引信息的数目大于或等于预设索引信息数目阈值,如果是则新建车辆分索引。

预设时长可以通过事先确定得到,比如该预设时长可以为24小时。

其中,可以通过定时任务或者定时组件,来每间隔预设时长,检测距当前最近的时间戳所对应的车辆分索引中包括的索引信息的数目大于或等于预设索引信息数目阈值。

另外,可以在后续的任意时机来执行获取车辆数据并将获取的车辆数据进行存储的步骤,从而增加数据库中的车辆数据。或者,在本发明的另一可选实施例中,也可以事先执行获取车辆数据并将获取的车辆数据进行存储的步骤,即事先完成车辆数据收集和录入,之后可以直接进行后续步骤进行车辆数据检索。

步骤202,获取输入的检索条件,该检索条件包括检索时间和检索要素。

其中,获取输入的检索条件的方式,可以参见前述中的相关描述,此处不再一一赘述。

步骤203,基于检索时间和车辆分索引的时间戳,从该车辆分索引中获取目标车辆分索引。

其中,基于检索时间和车辆分索引的时间戳,从该车辆分索引中获取目标车辆分索引的方式,可以参见前述中的相关描述,此处不再一一赘述。

步骤204,若基于检索要素和所获取的目标车辆分索引,确定当前车辆检索未满足预设检索规则,则执行步骤205,否则执行步骤210。

由于获取到的目标车辆分索引的数目可能多于一个,或者目标车辆分索引包括的索引信息的数目依然较大,而对于某些比较特殊的检索需求,可能不需要对所有的目标车辆分索引包括的索引信息对对应的车辆数据进行检索,因此,为了便于后续进一步缩小检索范围,提交检索效率,可以基于检索要素和所获取的目标车辆分索引,判断当前检索是否满足预设检索规则,从而分别在当前检索满足预设检索规则和不满足预设检索规则的情况执行不同的步骤。

其中,预设检索规则为需要对所有目标车辆分索引包括的索引信息所对应的车辆数据进行检索的规则,该预设检索规则可以通过事先确定,比如通过接收相关技术人员提交得到。

可选的,为了从多个角度准确地确定是否对所有目标车辆分索引包括的索引信息所对应的车辆数据进行检索,在提高检索效率的同时也提高检索的可靠性,预设检索规则包括下述至少一项:该检索要素包括:符合该检索要素的车辆数据条目数目;所获取的目标车辆分索引的数目小于或等于1;该检索要素包括:指定车辆数据条目数目,且该指定车辆数据条目数目大于与该检索要素对应的预设指定车辆数据条目数目;所获取的目标车辆分索引包括的索引信息的数目小于第二预设索引信息数目;该检索要素包括:车牌号,且该车牌号的长度大于预设车牌号长度。

其中,当用户需要返回符合检索要素的车辆数据条目数目,即需要进行数值统计时,需要对所有目标车辆分索引包括的索引信息所对应的车辆数据进行检索,才能够确定所需统计的数值,因此若当前车辆检索满足该规则,则需要对所有目标车辆分索引包括的索引信息所对应的车辆数据进行检索。当所获取到的目标车辆分索引只包括1个时,当然也需要对这1个目标车辆分索引所包括的车辆数据检索。当用户需要返回指定数目的车辆数据条目,且指定车辆数据条目数目大于与预设的与当前检索要素对应的指定车辆数据条目数目,则说明用户当前需要返回的车辆数目条目的数目较大,若仅对部分目标车辆分索引包括的索引信息所对应的车辆数据进行检索,可能检索到的车辆数据条目的数目并不能达到用户需求。当所有目标车辆分索引包括的索引信息的数目小于第二预设索引信息数目时,则可能所有目标车辆分索引包括的索引信息所对应的车辆数据较少,若仅对部分目标车辆分索引包括的索引信息所对应的车辆数据进行检索,可能难以满足用户的检索需求。若检索要素包括车牌号且车牌号长度大于预设车牌长度,即需要针对车牌号进行精准检索,若仅对部分目标车辆分索引包括的索引信息所对应的车辆数据进行检索,可能检索到符合该检索要素的车辆数据的可能较低。综上,若满足上述任一规则,则需要对所有目标车辆分索引包括的索引信息所对应的车辆数据进行检索,若不满足上述规则,则可以对部分目标车辆分索引包括的索引信息所对应的车辆数据进行检索。

需要说明的是,预设指定车辆数据条目数目可以通过事先确定得到。可以在之前的检索过程中,当用户输入的检索要素包括指定车辆数据条目数目,则可以将该指定车辆数据条目数目,作为与该检索要素对应的预设指定车辆数据条目数目进行存储。

可选的,为了准确存储检索要素以及多对应的至指定车辆数据条目数目,进而提高判断当前检索是否满足预设条件的准确性,提高进行车辆数据检索的准确性,检索要素以及指定车辆数据条目数目存储在键-值(key-value)存储系统(比如redis)中。

其中,键-值存储系统是一种key-value分布式存储系统,具有查询速度快、存放数据量大和支持高并发等优点。redis即为一种高性能的键-值存储系统。

当然,在实际应用中,还可以将检索要素以及指定车辆数据条目数目存储在其它存储位置。

还需要说明的是,第二预设索引信息数目可以通过事先确定得到,比如通过接收相关技术人员得到。

例如,第二预设索引信息数目可以包括2亿、6亿或10亿。

还需要说明的是,预设车牌号长度可以通过事先确定得到。

例如,预设车牌号长度可以为5。

步骤205,从所获取的目标车辆分索引中获取距当前最近的一个目标车辆分索引。

由于当前检索不满足预设检索规则,即不需要对所有目标车辆分索引包括的索引信息对应的车辆数据进行检索,因此,可以获取距当前最近的一个目标车辆分索引,进一步缩小了检索范围,提高了效率。

可以根据目标车辆分索引的时间戳,确定距当前最近的时间戳,获取所确定的时间戳对应的目标车辆分索引。

步骤206,若所获取的距当前最近的一个目标车辆分索引中包括的索引信息数目小于第一预设索引信息数目,则执行步骤207,否则执行步骤208。

由于一个目标车辆分索引所包括的索引信息所对应的车辆数据可能较少,难以满足当前的检索需求,因此,为了将当前缩小的检索范围进行扩大,提高检索的准确性,可以将所获取的距当前最近的一个目标车辆分索引中包括的索引信息数目与第一预设索引信息数目进行比较,从而根据不同的比较结果,确定是否将当前缩小的检索范围进行扩大。

其中,第一预设索引信息数目可以通过事先确定得到。例如,第一预设索引信息可以为10万。

步骤207,从所获取的目标车辆分索引中获取距当前最近的两个目标车辆分索引,基于检索要素以及距当前最近的两个目标车辆分索引,检索车辆数据。执行步骤209。

由于一个目标车辆分索引包括的索引信息所对应的车辆数据较少,可能难以满足检索需求,因此可以在所获取的目标车辆分索引中获取距当前最近的两个目标车辆分索引,也即是,在距当前最近的一个目标车辆分索引的基础上,按照时间戳的时间顺序,再选择该距当前最近的目标车辆分索引之前最近的一个目标车辆分索引。当确定了所需要检索的范围时,可以基于检索要素和所选的检索范围,检索车辆数据进行检索。

可以按照检索要素,对距当前最近的两个目标车辆分索引中的索引信息进行检索,得到目标索引信息,基于目标索引信息,获取得到对应的车辆数据条目,从而向用户返回检索结果。

以检索服务器为elasticsearch为例,可以定义字符串类型的数组,将距当前最近的两个目标车辆分索引中的索引信息存储至该数组,然后基于检索要素,对数组中索引信息进行检索。

步骤208,基于检索要素以及距当前最近的一个目标车辆分索引,检索车辆数据。执行步骤209。

由于一个目标车辆分索引包括的索引信息所对应的车辆数据较少,因此为了提供检索效率,可以基于检索要素以及距当前最近的一个目标车辆分索引,进行车辆数据检索。

步骤209,若检索要素包括指定车辆数据条目数目,且检索结果包括的符合该检索要素的车辆数据条目数目小于该指定车辆数据条目数目,则执行步骤210,否则结束。

由于经前述进一步缩小检索范围后,距离当前最近的一个或两个目标车辆分索引所包括的索引信息所对应的车辆数据可能依然较少,检索结果可能难以满足用户的检索需求,因此,为了提高检索的准确性和可靠性,可以在基于检索要素以及当前最近的一个或两个目标车辆分索引进行车辆数据检索之后,将检索到的符合该检索要素的车辆数据条目与指定车辆数据条目数目进行比较,如果检索结果包括的符合该检索要素的车辆数据条目小于该指定车辆数据条目数目,则说明检索到的车辆数据条目较少,可以通过下述步骤,再次基于检索要素和所有的目标车辆分索引,进行车辆数据检索。

可选的,为了避免在按照相同的检索要素进行检索时,所检索的范围较小,难以满足检索需求,而再次基于检索要素和所有的目标车辆分索引,进行车辆数据检索的问题,即避免检索步骤的重复,确保检索的准确性和效率,还可以将将预设车辆数据条目数目替换为指定车辆数据条目数目,即将存储的与该检索要素对应的预设车辆数据条目数目,替换为检索要素包括的指定车辆数据条目数目。

步骤210,基于检索要素以及所获取的目标车辆分索引,检索车辆数据。

由于目标车辆分索引包括的索引信息少于所有车辆分索引所包括的索引信息,相应的,按照目标车辆分索引包括的索引信息对应的车辆数据进行检索,即能够提高检索效率。

在本发明实施例中,首先,可以获取输入的检索条件,包括检索时间和检索要素,然后基于检索时间和车辆分索引的时间戳,从车辆分索引中获取目标车辆分索引,所获取到的目标车辆分索引即为与该检索送时间相匹配的车辆分索引,从而缩小了检索范围,因此基于检索要素和所获取的目标车辆分索引,即能够在与检索时间匹配的、较小范围内的车辆数据中进行检索,进而提高检索效率,减小系统开销。

其次,可以基于检索要素和所获取的目标车辆分索引,确定当前车辆检索是否满足预设检索条件,从而在未满足预设检索条件时,进一步从所获取的目标车辆分索引中选择距当前最近的一个或两个目标车辆分索引,从而进一步了缩小检索范围,提高检索效率。

另外,当检索要素包括指定车辆数据条目数目,且按照距当前最近的一个或两个目标车辆分索引进行检索之后,检索结果实际包括的符合检索要素的车辆数据条目数目小于指定车辆数据条目数目时,重新基于检索要素和所有的目标车辆分索引进行检索,减少了因检索范围过小可能导致的检索不准确的问题,也即是,提高了检索的准确性。

请参照图3,为本发明实施例所提供的一种车辆数据检索装置300的功能模块示意图。需要说明的是,本实施例所提供的车辆数据检索装置300,其基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考方法实施例中的相应内容。该车辆数据检索装置300包括:

第一获取模块301,用于获取输入的检索条件,所述检索条件包括检索时间和检索要素;

第二获取模块302,用于基于所述检索时间和车辆分索引的时间戳,从所述车辆分索引中获取目标车辆分索引;

检索模块302,用于基于所述检索要素以及所获取的目标车辆分索引,检索车辆数据。

可选的,所述检索模块包括:

第一获取子模块,用于若基于所述检索要素和所获取的目标车辆分索引,确定当前车辆检索未满足预设检索规则,则从所获取的目标车辆分索引中获取距当前最近的一个目标车辆分索引;

第一检索子模块,用于基于所述检索要素以及所述距当前最近的一个目标车辆分索引,检索车辆数据。

可选的,所述检索模块还包括:

第二获取子模块,用于若所获取的距当前最近的一个目标车辆分索引中包括的索引信息数目小于第一预设索引信息数目,则从所获取的目标车辆分索引中获取距当前最近的两个目标车辆分索引;

第二检索子模块,用于基于所述检索要素以及所述距当前最近的两个目标车辆分索引,检索车辆数据。

可选的,所述预设检索规则包括下述至少一项:

所述检索要素包括:符合所述检索要素的车辆数据条目数目;

所获取的目标车辆分索引的数目小于或等于1;

所述检索要素包括:指定车辆数据条目数目,且所述指定车辆数据条目数目大于与所述检索要素对应的预设指定车辆数据条目数目;

所获取的目标车辆分索引包括的索引信息的数目小于第二预设索引信息数目;

所述检索要素包括:车牌号,且所述车牌号的长度大于预设车牌号长度。

可选的,所述检索要素包括所述指定车辆数据条目数目,且检索结果包括的符合所述检索要素的车辆数据条目数目小于所述指定车辆数据条目数目,所述检索模块还包括下述至少一项:

第三检索子模块,用于基于所述检索要素以及所有的目标车辆分索引,重新检索车辆数据;

替换子模块,用于将所述预设车辆数据条目数目替换为所述指定车辆数据条目数目。

可选的,所述检索要素以及所述指定车辆数据条目数目存储在键-值存储系统中。

可选的,所述装置还包括:

存储模块,用于将当前获取的车辆数据存储至车辆数据库;

生成模块,用于生成与所述车辆数据对应的索引信息;

确定模块,用于基于各车辆分索引的时间戳,确定距当前最近的时间戳所对应的车辆分索引;

第一添加模块,用于将所述车辆数据对应的索引信息添加至所述距当前最近的时间戳所对应的车辆分索引,并将所述距当前最近的时间戳所对应的车辆分索引的时间戳更新为获取所述车辆数据的时间。

可选的,所述装置还包括:

新建模块,用于若所述距当前最近的时间戳所对应的车辆分索引中包括的索引信息的数目大于或等于预设索引信息数目阈值,则新建车辆分索引;

第二添加模块,用于将所述车辆数据对应的索引信息添加至新建的车辆分索引,并将所述新建的车辆分索引的时间戳确定为获取所述车辆数据的时间。

上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。

在本发明实施例中,首先,可以获取输入的检索条件,包括检索时间和检索要素,然后基于检索时间和车辆分索引的时间戳,从车辆分索引中获取目标车辆分索引,所获取到的目标车辆分索引即为与该检索送时间相匹配的车辆分索引,从而缩小了检索范围,因此基于检索要素和所获取的目标车辆分索引,即能够在与检索时间匹配的、较小范围内的车辆数据中进行检索,进而提高检索效率,减小系统开销。

以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(applicationspecificintegratedcircuit,简称asic),或,一个或多个微处理器(digitalsingnalprocessor,简称dsp),或,一个或者多个现场可编程门阵列(fieldprogrammablegatearray,简称fpga)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessingunit,简称cpu)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称soc)的形式实现。

请参照图4,为本发明实施例所提供的一种电子设备的功能模块示意图。该电子设备可以包括存储有计算机程序的计算机可读存储介质401和处理器402,处理器402可以调用计算机可读存储介质401存储的计算机程序。当该计算机程序被处理器402读取并运行,可以实现上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。

可选地,本发明还提供一计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器读取并运行时,可以实现上述方法实施例。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。

上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文:read-onlymemory,简称:rom)、随机存取存储器(英文:randomaccessmemory,简称:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1