一种数据查询方法、装置、分布式数据查询系统制造方法及图纸

技术编号:30710783 阅读:20 留言:0更新日期:2021-11-10 11:01
本发明专利技术实施例提供了一种数据查询方法、装置、分布式数据查询系统。方法包括:按照第一谓词判断顺序,依次对每个原始数据进行查询,以确定该原始数据是否为同时命中多个谓词的目标数据,直至已经查询的原始数据的数量满足预设顺序更替条件或完成所有原始数据的查询;当已经查询的原始数据的数量满足预设顺序更替条件时,针对所述多个谓词中的每个谓词,根据已经查询的原始数据的数据特征,计算该谓词的当前得分;依据每个谓词的所述当前得分所表示的效率由高到低的顺序,生成第二谓词判断顺序;将所述第二谓词判断顺序作为新的第一谓词判断顺序,返回执行所述按照第一谓词判断顺序,依次对每个原始数据进行查询的步骤。可以提高数据查询效率。提高数据查询效率。提高数据查询效率。

【技术实现步骤摘要】
一种数据查询方法、装置、分布式数据查询系统


[0001]本专利技术涉及大数据分析
,特别是涉及一种数据查询方法、装置、分布式数据查询系统。

技术介绍

[0002]在数据分析时往往会面对海量原始数据,并非所有原始数据都是用户感兴趣的数据。用户可以输入多个用于表示筛选条件的条件表达式(下文称谓词),具有数据查询功能的电子设备,如计算引擎,可以根据用户输入的谓词进行数据查询,以从原始数据中确定出同时满足所有谓词所表示的筛选条件的目标数据,并返回所有目标数据,以使得用户可以根据返回的目标数据进行数据分析,从而降低数据分析的计算量。为描述方便,下文以命中谓词代指满足谓词所表示的筛选条件。
[0003]在进行数据查询时,电子设备可以依次针对每个原始数据进行查询,以确定该原始数据是否为目标数据。在查询的过程中,电子设备可以按照谓词判断顺序依次使用输入的每个谓词对原始数据进行判断,如果原始数据命中该谓词,则继续使用下一个谓词对原始数据进行判断,如果原始数据未命中该谓词,则停止判断并确定原始数据不为目标数据。如果原始数据命中所有谓词,则确定原始数据为目标数据。
[0004]假设输入的谓词为谓词1-5,一原始数据命中谓词1-4,未命中谓词5。则如果谓词判断顺序中谓词5位于第一位,则可以通过一次判断确定该原始数据不为目标数据,而如果谓词判断顺序中谓词5位于第五位,则需要通过五次判断才能确定该原始数据不为目标数据。可见,查询时所使用的谓词判断顺序将会影响查询效率,即谓词判断顺序将影响数据查询的效率。因此如何合理设置谓词判断顺序,以提高数据查询效率,成为亟待解决的技术问题。

技术实现思路

[0005]本专利技术实施例的目的在于提供一种数据查询方法、装置、分布式数据查询系统,以实现提高数据查询效率。具体技术方案如下:
[0006]在本专利技术实施例的第一方面,提供了一种数据查询方法,所述方法包括:
[0007]按照第一谓词判断顺序,依次对每个原始数据进行查询,以确定该原始数据是否为同时命中多个谓词的目标数据,直至已经查询的原始数据的数量满足预设顺序更替条件或完成所有原始数据的查询,所述第一谓词判断顺序用于表示查询过程中所述多个谓词的判断顺序,所述第一谓词判断顺序初始时为预设初始顺序;
[0008]当已经查询的原始数据的数量满足预设顺序更替条件时,针对所述多个谓词中的每个谓词,根据已经查询的原始数据的数据特征,计算该谓词的当前得分,所述当前得分用于表示使用该谓词判断当前已经查询的原始数据是否为目标数据时的效率,所述数据特征包括原始数据命中谓词的状况,和/或,查询原始数据的耗时;
[0009]依据每个谓词的所述当前得分所表示的效率由高到低的顺序,生成第二谓词判断
顺序;
[0010]将所述第二谓词判断顺序作为新的第一谓词判断顺序,返回执行所述按照第一谓词判断顺序,依次对每个原始数据进行查询的步骤。
[0011]在一种可能的实施例中,所述根据已经查询的原始数据的数据特征,计算该谓词的当前得分,包括:
[0012]根据本阶段已查询数据的数据特征,计算该谓词的当前得分,所述本阶段已查询数据为已经使用当前的第一谓词判断顺序进行查询的原始数据。
[0013]在一种可能的实施例中,所述根据本阶段已查询数据的数据特征,计算该谓词的当前得分,包括:
[0014]根据本阶段已查询数据的数据特征,计算该谓词的阶段得分,所述阶段得分用于表示使用该谓词判断本阶段已查询数据是否为目标数据时的效率;
[0015]根据该谓词的所述阶段得分与该谓词的历史得分,计算该谓词的当前得分,所述历史得分初始时为预设的初始得分,并且所述历史得分为上一次生成第二谓词判断顺序时该谓词所依据的得分,,所述当前得分所表示的效率与所述阶段得分所表示的效率正相关,并且与所述历史得分所表示的效率正相关。
[0016]在一种可能的实施例中,所述根据本阶段已查询数据的数据特征,计算该谓词的阶段得分,包括:
[0017]根据本阶段已查询数据的数据特征,计算该谓词的命中率和耗时代价,所述命中率用于表示本阶段已查询数据中命中该谓词的原始数据所占的比例,所述耗时代价用于表示判断本阶段已查询数据是否命中该谓词所耗费的时间;
[0018]根据该谓词的所述命中率和所述耗时代价,计算该谓词的阶段得分,所述阶段得分所表示的效率与所述命中率负相关,并且与所述耗时代价负相关。
[0019]在一种可能的实施例中,所述命中率通过以下方式计算得到:
[0020]按照预设采样规则,从本阶段已查询数据中采样得到本阶段采样数据;
[0021]统计所述本阶段采样数据中命中谓词的原始数据的占比,作为该谓词的命中率。
[0022]在一种可能的实施例中,所述耗时代价通过以下方式计算得到:
[0023]按照预设采样规则,从本阶段已查询数据中采样得到本阶段采样数据;
[0024]统计判断所述本阶段采样数据是否命中谓词所耗费的累计耗时;
[0025]对所述累计耗时进行均值归一化处理,得到该谓词的耗时代价。
[0026]在一种可能的实施例中,所述根据该谓词的所述阶段得分与该谓词的历史得分,计算该谓词的当前得分,包括:
[0027]对该谓词的所述阶段得分和该谓词的历史得分进行加权相加,得到该谓词的当前得分。
[0028]在本专利技术实施例的第二方面,提供了一种数据查询装置,所述装置包括:
[0029]查询模块,用于按照第一谓词判断顺序,依次对每个原始数据进行查询,以确定该原始数据是否为同时命中多个谓词的目标数据,直至已经查询的原始数据的数量满足预设顺序更替条件或完成所有原始数据的查询,所述谓词判断顺序用于表示查询过程中所述多个谓词的判断顺序,所述第一谓词判断顺序初始时为预设初始顺序;
[0030]得分计算模块,用于当已经查询的原始数据的数量满足预设顺序更替条件时,针
对所述多个谓词中的每个谓词,计算该谓词的当前得分,所述当前得分用于表示使用该谓词判断当前已经查询的原始数据是否为目标数据时的效率;
[0031]重新排序模块,用于依据每个谓词的所述当前得分所表示的效率由高到低的顺序,生成第二谓词判断顺序;
[0032]所述查询模块,还用于将所述第二谓词判断顺序作为新的第一谓词判断顺序,继续执行所述按照第一谓词判断顺序,依次对每个原始数据进行查询的步骤。
[0033]在一种可能的实施例中,所述得分计算模块根据已经查询的原始数据的数据特征,计算该谓词的当前得分,包括:
[0034]根据本阶段已查询数据的数据特征,计算该谓词的当前得分,所述本阶段已查询数据为已经使用当前的第一谓词判断顺序进行查询的原始数据
[0035]在一种可能的实施例中,所述得分计算模块根据本阶段已查询数据的数据特征,计算该谓词的当前得分,包括:
[0036]根据本阶段已查询数据的数据特征,计算该谓词的阶段得分,所述阶段得分用于表示使用该谓词判断本阶段本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据查询方法,其特征在于,所述方法包括:按照第一谓词判断顺序,依次对每个原始数据进行查询,以确定该原始数据是否为同时命中多个谓词的目标数据,直至已经查询的原始数据的数量满足预设顺序更替条件或完成所有原始数据的查询,所述第一谓词判断顺序用于表示查询过程中所述多个谓词的判断顺序,所述第一谓词判断顺序初始时为预设初始顺序;当已经查询的原始数据的数量满足预设顺序更替条件时,针对所述多个谓词中的每个谓词,根据已经查询的原始数据的数据特征,计算该谓词的当前得分,所述当前得分用于表示使用该谓词判断当前已经查询的原始数据是否为目标数据时的效率,所述数据特征包括原始数据命中谓词的状况,和/或,查询原始数据的耗时;依据每个谓词的所述当前得分所表示的效率由高到低的顺序,生成第二谓词判断顺序;将所述第二谓词判断顺序作为新的第一谓词判断顺序,返回执行所述按照第一谓词判断顺序,依次对每个原始数据进行查询的步骤。2.根据权利要求1所述的方法,其特征在于,所述根据已经查询的原始数据的数据特征,计算该谓词的当前得分,包括:根据本阶段已查询数据的数据特征,计算该谓词的当前得分,所述本阶段已查询数据为已经使用当前的第一谓词判断顺序进行查询的原始数据。3.根据权利要求2所述的方法,其特征在于,所述根据本阶段已查询数据的数据特征,计算该谓词的当前得分,包括:根据本阶段已查询数据的数据特征,计算该谓词的阶段得分,所述阶段得分用于表示使用该谓词判断本阶段已查询数据是否为目标数据时的效率;根据该谓词的所述阶段得分与该谓词的历史得分,计算该谓词的当前得分,所述历史得分初始时为预设的初始得分,并且所述历史得分为上一次生成第二谓词判断顺序时该谓词所依据的得分,,所述当前得分所表示的效率与所述阶段得分所表示的效率正相关,并且与所述历史得分所表示的效率正相关。4.根据权利要求3所述的方法,其特征在于,所述根据本阶段已查询数据的数据特征,计算该谓词的阶段得分,包括:根据本阶段已查询数据的数据特征,计算该谓词的命中率和耗时代价,所述命中率用于表示本阶段已查询数据中命中该谓词的原始数据所占的比例,所述耗时代价用于表示判断本阶段已查询数据是否命中该谓词所耗费的时间;根据该谓词的所述命中率和所述耗时代价,计算该谓词的阶段得分,所述阶段得分所表示的效率与所述命中率负相关,并且与所述耗时代价负相关。5.根据权利要求4所述的方法,其特征在于,所述命中率通过以下方式计算得到:按照预设采样规则,从本阶段已查询...

【专利技术属性】
技术研发人员:陈国栋赵世范姜伟浩
申请(专利权)人:杭州海康威视数字技术股份有限公司
类型:发明
国别省市:

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

1