CN108241692A - 数据的查询方法及装置 - Google Patents

数据的查询方法及装置 Download PDF

Info

Publication number
CN108241692A
CN108241692A CN201611220548.2A CN201611220548A CN108241692A CN 108241692 A CN108241692 A CN 108241692A CN 201611220548 A CN201611220548 A CN 201611220548A CN 108241692 A CN108241692 A CN 108241692A
Authority
CN
China
Prior art keywords
dimension
index
inquiry
data
big
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.)
Granted
Application number
CN201611220548.2A
Other languages
English (en)
Other versions
CN108241692B (zh
Inventor
洪超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201611220548.2A priority Critical patent/CN108241692B/zh
Publication of CN108241692A publication Critical patent/CN108241692A/zh
Application granted granted Critical
Publication of CN108241692B publication Critical patent/CN108241692B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2425Iterative querying; Query formulation based on the results of a preceding query

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据的查询方法及装置。其中,该方法包括:获取元数据中的大维度,其中,大维度为唯一值大于等于预设阈值的维度,元数据包括维度和维度的唯一值,元数据记录了维度与唯一值的对应关系;在查询记录中查找与大维度相同的目标维度,并将与大维度相同的目标维度对应的指标作为大维度对应的指标,其中,查询记录中记录了目标维度与指标的对应关系;根据大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表;在聚合表中查询与大维度和指标相关的数据。本发明解决了根据大维度直接生成聚合表导致的通过聚合表进行数据查询效率低的技术问题。

Description

数据的查询方法及装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种数据的查询方法及装置。
背景技术
在联机分析处理领域里,我们经常碰到一些大维度,例如channel(渠道),url(网页)等,很多时候我们需要对这些大维度做分组剖析,然后去看对应指标的前N个,也就是看前N个此维度的值以及指标,例如看维度url,通过页面浏览量指标来看,看前10个浏览量最多的url页面是哪些,用于指导网站运营或是业务优化。
联机分析处理面临的一个问题是大维度做分组剖析时的性能开销,常见的传统方式是通过聚合表的联机分析处理的思路来解决,但是预聚合后,由于url等大维度的唯一值太多,导致其查询性能缓慢。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据的查询方法及装置,以至少解决根据大维度直接生成聚合表导致的通过聚合表进行数据查询效率低的技术问题。
根据本发明实施例的一个方面,提供了一种数据查询方法,包括:获取元数据中的大维度,其中,所述大维度为唯一值大于等于预设阈值的维度,所述元数据包括维度和维度的唯一值,所述元数据记录了所述维度与所述唯一值的对应关系;在查询记录中查找与所述大维度相同的目标维度,并将与所述大维度相同的所述目标维度对应的指标作为所述大维度对应的指标,其中,所述查询记录中记录了所述目标维度与所述指标的对应关系;根据所述大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表;在所述聚合表中查询与所述大维度和所述指标相关的数据。
进一步地,根据所述大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表包括:按照所述大维度对所述事实数据表进行分组;按照所述指标对所述事实数据表中的数据进行排序,得到分组排序后的数据;从分组排序后的数据中选取出排序靠前的预设数量的数据;根据选取出的所述预设数量的数据生成聚合表。
进一步地,获取元数据中的大维度包括:获取所述元数据,其中,所述元数据包括维度和维度的唯一值,所述维度与所述唯一值相对应;查找所述元数据中所述唯一值大于等于预设阈值的维度;将所述元数据中所述唯一值大于等于预设阈值的维度作为所述大维度。
进一步地,在所述聚合表中查询与所述大维度和所述指标相关的数据包括:获取查询条件,所述查询条件包括查询维度和查询指标;判断所述聚合表中是否包括与所述查询维度一致的大维度;如果判断出所述聚合表中包括与所述查询维度一致的大维度,则判断所述查询指标与生成所述聚合表时的指标是否一致,并且判断所述查询指标的排列次序与生成所述聚合表时的指标的排列次序是否一致;如果判断出所述查询指标与生成所述聚合表时的指标一致,并且判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序一致,则按照所述查询维度和所述查询指标在所述聚合表中查询数据。
进一步地,在判断所述聚合表中是否包括与所述查询维度一致的大维度之后,所述方法还包括:如果判断出所述聚合表中不包括与所述查询维度一致的大维度,则按照所述查询维度和所述查询指标从所述事实数据表中查询数据;或者如果判断出所述查询指标与生成所述聚合表时的指标不一致,或者判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序不一致,则按照所述查询维度和所述查询指标从所述事实数据表中查询数据。
根据本发明实施例的另一方面,还提供了一种数据查询装置,包括:获取单元,用于获取元数据中的大维度,其中,所述大维度为唯一值大于等于预设阈值的维度,所述元数据包括维度和维度的唯一值,所述元数据记录了所述维度与所述唯一值的对应关系;查找单元,用于在查询记录中查找与所述大维度相同的目标维度,并将与所述大维度相同的所述目标维度对应的指标作为所述大维度对应的指标,其中,所述查询记录中记录了所述目标维度与所述指标的对应关系;聚合单元,用于根据所述大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表;查询单元,用于在所述聚合表中查询与所述大维度和所述指标相关的数据。
进一步地,所述聚合单元包括:分组模块,用于按照所述大维度对所述事实数据表进行分组;排序模块,用于按照所述指标对所述事实数据表中的数据进行排序,得到分组排序后的数据;选择模块,用于从分组排序后的数据中选取出排序靠前的预设数量的数据;聚合模块,用于根据选取出的所述预设数量的数据生成所述聚合表。
进一步地,所述获取单元包括:第一获取模块,用于获取所述元数据,其中,所述元数据包括维度和维度的唯一值,所述维度与所述唯一值相对应;查找模块,用于查找所述元数据中所述唯一值大于等于预设阈值的维度;确定模块,用于将所述元数据中所述唯一值大于等于预设阈值的维度作为所述大维度。
进一步地,所述查询单元包括:第二获取模块,用于获取查询条件,所述查询条件包括查询维度和查询指标;第一判断模块,用于判断所述聚合表中是否包括与所述查询维度一致的大维度;第二判断模块,用于在判断出所述聚合表中包括与所述查询维度一致的大维度时,判断所述查询指标与生成所述聚合表时的指标是否一致,并且判断所述查询指标的排列次序与生成所述聚合表时的指标的排列次序是否一致;第一查询模块,用于在判断出所述查询指标与生成所述聚合表时的指标一致,并且判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序一致时,按照所述查询维度和所述查询指标在所述聚合表中查询数据。
进一步地,所述查询单元还包括:第二查询模块,用于在判断出所述聚合表中不包括与所述查询维度一致的大维度时,按照所述查询维度和所述查询指标从所述事实数据表中查询数据;或者第三查询模块,用于在判断出所述查询指标与生成所述聚合表时的指标不一致,或者判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序不一致时,按照所述查询维度和所述查询指标从所述事实数据表中查询数据。
在本发明实施例中,采用获取元数据中的大维度;在查询记录中查找与大维度相同的目标维度和目标维度对应的指标;根据大维度和指标从事实数据表中选取预设数量的数据生成聚合表;在聚合表中查询与大维度和指标相关的数据的方式,通过按指标对数据进行排序,并选取预设数量的数据生成聚合表,达到了减小聚合表中数据维度的目的,从而实现了提高通过聚合表进行数据查询的效率的技术效果,进而解决了根据大维度直接生成聚合表导致的通过聚合表进行数据查询效率低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的数据的查询方法的流程图;
图2是根据本发明实施例的一种可选的数据的查询装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种数据查询方法的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种可选的数据的查询方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,获取元数据中的大维度,其中,大维度为唯一值大于等于预设阈值的维度,元数据包括维度和维度的唯一值,元数据记录了维度与唯一值的对应关系。
元数据中记录了数据的相关信息,其中包括维度和维度的唯一值,通过对维度的唯一值进行判断,获取元数据中的大维度,其中,大维度的唯一值大于或者等于预设阈值。
可选地,获取元数据中的大维度包括:获取元数据,其中,元数据包括维度和维度的唯一值,维度与唯一值相对应;查找元数据中唯一值大于等于预设阈值的维度;将元数据中唯一值大于等于预设阈值的维度作为大维度。
获取元数据中大维度,即在元数据所记录的维度中,查找出所有的大维度。具体地,首先获取元数据,由于元数据中记录了数据的相关信息,其中包含有数据的维度和维度对应的唯一值等信息,而对于维度来说,维度的唯一值越大,则维度越大,因此,在获取元数据之后,设置一个阈值,并在元数据中查找大于或者等于预设阈值的唯一值,则大于或者等于预设阈值的唯一值所对应的维度即为大维度。
步骤S104,在查询记录中查找与大维度相同的目标维度,并将与大维度相同的目标维度对应的指标作为大维度对应的指标,其中,查询记录中记录了目标维度与指标的对应关系。
在获取了所有的大维度之后,在查询记录中查找与大维度相同的目标维度。由于在查询记录的每一条历史查询记录中,除了记录有该条查询的查询维度,还记录了该条查询的查询指标,因此根据目标维度可以查找到其对应的指标,将该指标作为大维度对应的指标。
例如:事实数据表中记录的是特定的产品在不同时间内的销售量及销售金额,其中,维度包括:产品类型、时间和用户类型,指标包括:销售量和销售金额。假设通过元数据获取到“时间”为大维度,并且在查询记录中记录了对不同时间段内的所有产品的销售量的查询,则大维度“时间”所对应的指标为“销售量”。
步骤S106,根据大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表。
在确定了大维度和大维度所对应的指标之后,根据大维度和指标从事实数据表中选取预设数量的数据,生成聚合表,其中,从事实数据表中选取的数据的数量是根据实际需求进行设定的。
可选地,根据大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表包括:按照大维度对事实数据表进行分组;按照指标对事实数据表中的数据进行排序,得到分组排序后的数据;从分组排序后的数据中选取出排序靠前的预设数量的数据;根据选取出的预设数量的数据生成聚合表。
在根据大维度和指标生成聚合表时,将事实数据表中的数据按照大维度进行分组,同时按照大维度对应的指标对事实数据表中的数据进行排序,在本发明实施例中,并不对上述分组以及排序进行顺序上的限定,而且在实施过程中,上述分组及排序可以同时进行。在分组及排序之后,选择排序靠前的预设数量的数据生成聚合表。
例如:事实数据表中记录的是特定的产品在不同时间内的销售量及销售金额,其中,维度包括:产品类型、时间和用户类型,指标包括:销售量和销售金额。将“产品类型”和“时间”的维度组合作为一个大维度,将“销售金额”作为指标,基于该事实数据表生成一个聚合表,则按照“产品类型”和“时间”对事实数据表中的数据进行分组,在分组过程中,忽略其他的维度,将其他维度按照“产品类型”维度和“时间”维度进行合并,同时,按照“销售金额”由高到低进行排序,得到分组排序的结果,假定在该事例中,只需要关注前50的数据,则从分组排序结果中选择排序为前50的数据生成聚合表。
步骤S108,在聚合表中查询与大维度和指标相关的数据。
由于上述根据大维度和指标生成的聚合表中包含了该大维度及相关指标下的数据,在进行数据查询时,可以在该聚合表中查询与该大维度和相关指标有关的数据。
在本发明实施例中,采用获取元数据中的大维度;在查询记录中查找与大维度相同的目标维度和目标维度对应的指标;根据大维度和指标从事实数据表中选取预设数量的数据生成聚合表;在聚合表中查询与大维度和指标相关的数据的方式,通过按指标对数据进行排序,并选取预设数量的数据生成聚合表,达到了减小聚合表中数据维度的目的,从而实现了提高通过聚合表进行数据查询的效率的技术效果,进而解决了根据大维度直接生成聚合表导致的通过聚合表进行数据查询效率低的技术问题。
可选地,在聚合表中查询与大维度和指标相关的数据包括:获取查询条件,查询条件包括查询维度和查询指标;判断聚合表中是否包括与查询维度一致的大维度;如果判断出聚合表中包括与查询维度一致的大维度,则判断查询指标与生成聚合表时的指标是否一致,并且判断查询指标的排列次序与生成聚合表时的指标的排列次序是否一致;如果判断出查询指标与生成聚合表时的指标一致,并且判断出查询指标的排列次序与生成聚合表时的指标的排列次序一致,则按照查询维度和查询指标在聚合表中查询数据。
在本发明实施例中,为了提高查询的效率,在进行数据查询时,优先判断是否可以从聚合表中进行数据查询,具体地,先对获取查询条件,得到查询条件中的查询维度与查询指标,判断聚合表中是否含与该查询维度一致的大维度,如果聚合表中包括与该查询维度一致的大维度,则继续判断生成聚合表时对数据进行排序的指标与当前查询的查询指标是否一致,以及生成聚合表时对数据进行排序的方式与当前查询所要求的排序方式是否一致,如果生成聚合表时对数据进行排序的指标与当前查询的查询指标一致,并且生成聚合表时对数据进行排序的方式与当前查询所要求的排序方式一致,则按照当查询维度及查询指标在聚合表中查询数据。
可选地,在判断聚合表中是否包括查询维度之后,方法还包括:如果判断出聚合表中不包括与查询维度一致的大维度,则按照所述查询维度和所述查询指标从事实数据表中查询数据;或者如果判断出查询指标与生成聚合表时的指标不一致,或者判断出查询指标的排列次序与生成聚合表时的指标的排列次序不一致,则按照查询维度和查询指标从事实数据表中查询数据。
在数据查询时,如果经过判断,聚合表中不包括当前查询维度,则按照查询条件中的查询维度和查询指标,在事实数据表中查询数据;如果聚合表中包括当前查询的维度,但生成聚合表时对数据进行排序的指标与当前查询的查询指标不一致,或者虽然生成聚合表时对数据进行排序的指标与当前查询的查询指标一致,但生成聚合表时对数据进行排序的方式与当前查询所要求的排序方式不一致,则不能从聚合表中查询数据,要按照当前查询条件中的查询维度和查询指标在事实数据表中查询数据。
根据本发明实施例,还提供了一种数据的查询装置的实施例,该数据的查询装置主要用于执行本发明实施例上述内容所提供的数据的查询方法,图2是根据本发明实施例的一种可选的数据的查询装置的示意图,如图2所示,该装置主要包括:
获取单元210,用于获取元数据中的大维度,其中,大维度为唯一值大于等于预设阈值的维度,元数据包括维度和维度的唯一值,元数据记录了维度与唯一值的对应关系;
元数据中记录了数据的相关信息,其中包括维度和维度的唯一值,获取单元210通过对维度的唯一值进行判断,获取元数据中的大维度,其中,大维度的唯一值大于或者等于预设阈值。
可选地,获取单元包括:第一获取模块,用于获取元数据,其中,元数据包括维度和维度的唯一值,维度与唯一值相对应;查找模块,用于查找元数据中唯一值大于等于预设阈值的维度;确定模块,用于将元数据中唯一值大于等于预设阈值的维度作为大维度。
获取元数据中大维度,即在元数据所记录的维度中,查找出所有的大维度。具体地,第一获取模块获取元数据,由于元数据中记录了数据的相关信息,其中包含有数据的维度和维度对应的唯一值等信息,而对于维度来说,维度的唯一值越大,则维度越大,因此,在获取元数据之后,设置一个阈值,查找模块在元数据中查找大于或者等于预设阈值的唯一值,确定模块将大于或者等于预设阈值的唯一值所对应的维度确定为大维度。
查找单元220,用于在查询记录中查找与大维度相同的目标维度,并将与大维度相同的目标维度对应的指标作为大维度对应的指标,其中,查询记录中记录了目标维度与指标的对应关系;
在获取了所有的大维度之后,在查询记录中查找与大维度相同的目标维度。由于在查询记录的每一条历史查询记录中,除了记录有该条查询的查询维度,还记录了该条查询的查询指标,因此查找单元220根据目标维度可以查找到其对应的指标,将该指标作为大维度对应的指标。
例如:事实数据表中记录的是特定的产品在不同时间内的销售量及销售金额,其中,维度包括:产品类型、时间和用户类型,指标包括:销售量和销售金额。假设通过元数据获取到“时间”为大维度,并且在查询记录中记录了对不同时间段内的所有产品的销售量的查询,则大维度“时间”所对应的指标为“销售量”。
聚合单元230,用于根据大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表;
在确定了大维度和大维度所对应的指标之后,聚合单元230根据大维度和指标从事实数据表中选取预设数量的数据,生成聚合表,其中,从事实数据表中选取的数据的数量是根据实际需求进行设定的。
可选地,聚合单元包括:分组模块,用于按照大维度对事实数据表进行分组;排序模块,用于按照指标对事实数据表中的数据进行排序,得到分组排序后的数据;选择模块,用于从分组排序后的数据中选取出排序靠前的预设数量的数据;聚合模块,用于根据选取出的预设数量的数据生成聚合表。
在根据大维度和指标生成聚合表时,分组模块将事实数据表中的数据按照大维度进行分组,同时排序模块按照大维度对应的指标对事实数据表中的数据进行排序,在本发明实施例中,并不对上述模块的执行顺序进行限定,而且在实施过程中,上述模块可以同时执行。在分组及排序之后,选择模块选择排序靠前的预设数量的数据,聚合模块根据选择出的预设数量的数据生成聚合表。
例如:事实数据表中记录的是特定的产品在不同时间内的销售量及销售金额,其中,维度包括:产品类型、时间和用户类型,指标包括:销售量和销售金额。将“产品类型”和“时间”的维度组合作为一个大维度,将“销售金额”作为指标,基于该事实数据表生成一个聚合表,则按照“产品类型”和“时间”对事实数据表中的数据进行分组,在分组过程中,忽略其他的维度,将其他维度按照“产品类型”维度和“时间”维度进行合并,同时,按照“销售金额”由高到低进行排序,得到分组排序的结果,假定在该事例中,只需要关注前50的数据,则从分组排序结果中选择排序为前50的数据生成聚合表。
查询单元240,用于在聚合表中查询与大维度和指标相关的数据。
由于上述根据大维度和指标生成的聚合表中包含了该大维度及相关指标下的数据,在进行数据查询时,查询单元240在该聚合表中查询与该大维度和相关指标有关的数据。
在本发明实施例中,采用获取元数据中的大维度;在查询记录中查找与大维度相同的目标维度和目标维度对应的指标;根据大维度和指标从事实数据表中选取预设数量的数据生成聚合表;在聚合表中查询与大维度和指标相关的数据的方式,通过按指标对数据进行排序,并选取预设数量的数据生成聚合表,达到了减小聚合表中数据维度的目的,从而实现了提高通过聚合表进行数据查询的效率的技术效果,进而解决了根据大维度直接生成聚合表导致的通过聚合表进行数据查询效率低的技术问题。
可选地,查询单元包括:第二获取模块,用于获取查询条件,查询条件包括查询维度和查询指标;第一判断模块,用于判断聚合表中是否包括与查询维度一致的大维度;第二判断模块,用于在判断出聚合表中包括与查询维度一致的大维度时,判断查询指标与生成聚合表时的指标是否一致,并且判断查询指标的排列次序与生成聚合表时的指标的排列次序是否一致;第一查询模块,用于在判断出查询指标与生成聚合表时的指标一致,并且判断出查询指标的排列次序与生成聚合表时的指标的排列次序一致时,按照查询维度和查询指标在聚合表中查询数据。
在本发明实施例中,为了提高查询的效率,在进行数据查询时,优先判断是否可以从聚合表中进行数据查询,具体地,第二获取模块对获取查询条件,得到查询条件中的查询维度与查询指标,第一判断模块判断聚合表中是否含该查询维度,如果聚合表中包括该查询维度,则第二判断模块继续判断生成聚合表时对数据进行排序的指标与当前查询的查询指标是否一致,以及生成聚合表时对数据进行排序的方式与当前查询所要求的排序方式是否一致,如果生成聚合表时对数据进行排序的指标与当前查询的查询指标一致,并且生成聚合表时对数据进行排序的方式与当前查询所要求的排序方式一致,则第一查询模块按照当查询维度及查询指标在聚合表中查询数据。
可选地,查询单元还包括:第二查询模块,用于在判断出聚合表中不包括与查询维度一致的大维度时,按照所述查询维度和所述查询指标从事实数据表中查询数据;或者第三查询模块,用于在判断出查询指标与生成聚合表时的指标不一致,或者判断出查询指标的排列次序与生成聚合表时的指标的排列次序不一致时,按照查询维度和查询指标从事实数据表中查询数据。
在数据查询时,如果经过判断,聚合表中不包括当前查询维度,则第二查询模块按照查询条件中的查询维度和查询指标,在事实数据表中查询数据;如果聚合表中包括当前查询的维度,但生成聚合表时对数据进行排序的指标与当前查询的查询指标不一致,或者虽然生成聚合表时对数据进行排序的指标与当前查询的查询指标一致,但生成聚合表时对数据进行排序的方式与当前查询所要求的排序方式不一致,则不能从聚合表中查询数据,由第三查询模块按照当前查询条件中的查询维度和查询指标在事实数据表中查询数据。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种数据的查询方法,其特征在于,包括:
获取元数据中的大维度,其中,所述大维度为唯一值大于等于预设阈值的维度,所述元数据包括维度和维度的唯一值,所述元数据记录了所述维度与所述唯一值的对应关系;
在查询记录中查找与所述大维度相同的目标维度,并将与所述大维度相同的所述目标维度对应的指标作为所述大维度对应的指标,其中,所述查询记录中记录了所述目标维度与所述指标的对应关系;
根据所述大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表;
在所述聚合表中查询与所述大维度和所述指标相关的数据。
2.根据权利要求1所述的方法,其特征在于,根据所述大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表包括:
按照所述大维度对所述事实数据表进行分组;
按照所述指标对所述事实数据表中的数据进行排序,得到分组排序后的数据;
从分组排序后的数据中选取出排序靠前的预设数量的数据;
根据选取出的所述预设数量的数据生成聚合表。
3.根据权利要求1所述的方法,其特征在于,获取元数据中的大维度包括:
获取所述元数据,其中,所述元数据包括维度和维度的唯一值,所述维度与所述唯一值相对应;
查找所述元数据中所述唯一值大于等于预设阈值的维度;
将所述元数据中所述唯一值大于等于预设阈值的维度作为所述大维度。
4.根据权利要求1-3任一项所述的方法,其特征在于,在所述聚合表中查询与所述大维度和所述指标相关的数据包括:
获取查询条件,所述查询条件包括查询维度和查询指标;
判断所述聚合表中是否包括与所述查询维度一致的大维度;
如果判断出包括与所述查询维度一致的大维度,则判断所述查询指标与生成所述聚合表时的指标是否一致,并且判断所述查询指标的排列次序与生成所述聚合表时的指标的排列次序是否一致;
如果判断出所述查询指标与生成所述聚合表时的指标一致,并且判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序一致,则按照所述查询维度和所述查询指标在所述聚合表中查询数据。
5.根据权利要求4所述的方法,其特征在于,在判断所述聚合表中是否包括与所述查询维度一致的大维度之后,所述方法还包括:
如果判断出所述聚合表中不包括与所述查询维度一致的大维度,则按照所述查询维度和所述查询指标从所述事实数据表中查询数据;或者
如果判断出所述查询指标与生成所述聚合表时的指标不一致,或者判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序不一致,则按照所述查询维度和所述查询指标从所述事实数据表中查询数据。
6.一种数据的查询装置,其特征在于,包括:
获取单元,用于获取元数据中的大维度,其中,所述大维度为唯一值大于等于预设阈值的维度,所述元数据包括维度和维度的唯一值,所述元数据记录了所述维度与所述唯一值的对应关系;
查找单元,用于在查询记录中查找与所述大维度相同的目标维度,并将与所述大维度相同的所述目标维度对应的指标作为所述大维度对应的指标,其中,所述查询记录中记录了所述目标维度与所述指标的对应关系;
聚合单元,用于根据所述大维度及其对应的指标从事实数据表中选取预设数量的数据生成聚合表;
查询单元,用于在所述聚合表中查询与所述大维度和所述指标相关的数据。
7.根据权利要求6所述的装置,其特征在于,所述聚合单元包括:
分组模块,用于按照所述大维度对所述事实数据表进行分组;
排序模块,用于按照所述指标对所述事实数据表中的数据进行排序,得到分组排序后的数据;
选择模块,用于从分组排序后的数据中选取出排序靠前的预设数量的数据;
聚合模块,用于根据选取出的所述预设数量的数据生成聚合表。
8.根据权利要求6所述的装置,其特征在于,所述获取单元包括:
第一获取模块,用于获取所述元数据,其中,所述元数据包括维度和维度的唯一值,所述维度与所述唯一值相对应;
查找模块,用于查找所述元数据中所述唯一值大于等于预设阈值的维度;
确定模块,用于将所述元数据中所述唯一值大于等于预设阈值的维度作为所述大维度。
9.根据权利要求6所述的装置,其特征在于,所述查询单元包括:
第二获取模块,用于获取查询条件,所述查询条件包括查询维度和查询指标;
第一判断模块,用于判断所述聚合表中是否包括与所述查询维度一致的大维度;
第二判断模块,用于在判断出所述聚合表中包括所述查询维度时,判断所述查询指标与生成所述聚合表时的指标是否一致,并且判断所述查询指标的排列次序与生成所述聚合表时的指标的排列次序是否一致;
第一查询模块,用于在判断出所述查询指标与生成所述聚合表时的指标一致,并且判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序一致时,按照所述查询维度和所述查询指标在所述聚合表中查询数据。
10.根据权利要求9所述的装置,其特征在于,所述查询单元还包括:
第二查询模块,用于在判断出所述聚合表中不包括与所述查询维度一致的大维度时,按照所述查询维度和所述查询指标从所述事实数据表中查询数据;或者
第三查询模块,用于在判断出所述查询指标与生成所述聚合表时的指标不一致,或者判断出所述查询指标的排列次序与生成所述聚合表时的指标的排列次序不一致时,按照所述查询维度和所述查询指标从所述事实数据表中查询数据。
CN201611220548.2A 2016-12-26 2016-12-26 数据的查询方法及装置 Active CN108241692B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611220548.2A CN108241692B (zh) 2016-12-26 2016-12-26 数据的查询方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611220548.2A CN108241692B (zh) 2016-12-26 2016-12-26 数据的查询方法及装置

Publications (2)

Publication Number Publication Date
CN108241692A true CN108241692A (zh) 2018-07-03
CN108241692B CN108241692B (zh) 2020-08-11

Family

ID=62701369

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611220548.2A Active CN108241692B (zh) 2016-12-26 2016-12-26 数据的查询方法及装置

Country Status (1)

Country Link
CN (1) CN108241692B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109086339A (zh) * 2018-07-06 2018-12-25 深圳市彬讯科技有限公司 一种用于生成指标复合率的数据处理方法及装置
CN109522345A (zh) * 2018-11-19 2019-03-26 百度在线网络技术(北京)有限公司 用于显示信息的方法及装置
CN111625545A (zh) * 2020-06-08 2020-09-04 北京创鑫旅程网络技术有限公司 数据融合方法、数据融合装置及存储介质
CN112199390A (zh) * 2020-09-30 2021-01-08 上海达梦数据库有限公司 一种数据库中数据查询方法、装置、设备及存储介质
CN112269792A (zh) * 2020-12-11 2021-01-26 腾讯科技(深圳)有限公司 数据查询方法、装置、设备及计算机可读存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1347529A (zh) * 1999-01-15 2002-05-01 米泰吉公司 数据仓库环境下使信息可视化的方法
CN1508728A (zh) * 2002-12-18 2004-06-30 �Ҵ���˾ 使用元数据在关系数据库中创建多维数据集的方法和***
CN102682118A (zh) * 2012-05-15 2012-09-19 北京久其软件股份有限公司 一种多维数据模型访问方法及装置
CN104199821A (zh) * 2014-07-08 2014-12-10 浙江大学城市学院 一种基于概要结构的流数据立方体构建方法
CN104392001A (zh) * 2014-12-15 2015-03-04 北京国双科技有限公司 数据库查询方法和装置
CN104408179A (zh) * 2014-12-15 2015-03-11 北京国双科技有限公司 数据表中数据处理方法和装置
CN104408169A (zh) * 2014-12-09 2015-03-11 北京国双科技有限公司 基于多维表达式语言的维度查询方法及装置
US20150088885A1 (en) * 2013-09-20 2015-03-26 Oracle International Corporation Aggregating dimensional data using dense containers
CN104794221A (zh) * 2015-04-29 2015-07-22 苏州国云数据科技有限公司 一种基于业务对象的多维数据分析***
CN105183917A (zh) * 2015-10-15 2015-12-23 国家电网公司 一种用于多级存储数据的多维分析方法
CN105404637A (zh) * 2015-09-18 2016-03-16 北京锐安科技有限公司 数据挖掘方法和装置
US20160154838A1 (en) * 2014-12-01 2016-06-02 International Business Machines Corporation Avoid double counting of mapped database data

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1347529A (zh) * 1999-01-15 2002-05-01 米泰吉公司 数据仓库环境下使信息可视化的方法
CN1508728A (zh) * 2002-12-18 2004-06-30 �Ҵ���˾ 使用元数据在关系数据库中创建多维数据集的方法和***
CN102682118A (zh) * 2012-05-15 2012-09-19 北京久其软件股份有限公司 一种多维数据模型访问方法及装置
US20150088885A1 (en) * 2013-09-20 2015-03-26 Oracle International Corporation Aggregating dimensional data using dense containers
CN104199821A (zh) * 2014-07-08 2014-12-10 浙江大学城市学院 一种基于概要结构的流数据立方体构建方法
US20160154838A1 (en) * 2014-12-01 2016-06-02 International Business Machines Corporation Avoid double counting of mapped database data
CN104408169A (zh) * 2014-12-09 2015-03-11 北京国双科技有限公司 基于多维表达式语言的维度查询方法及装置
CN104392001A (zh) * 2014-12-15 2015-03-04 北京国双科技有限公司 数据库查询方法和装置
CN104408179A (zh) * 2014-12-15 2015-03-11 北京国双科技有限公司 数据表中数据处理方法和装置
CN104794221A (zh) * 2015-04-29 2015-07-22 苏州国云数据科技有限公司 一种基于业务对象的多维数据分析***
CN105404637A (zh) * 2015-09-18 2016-03-16 北京锐安科技有限公司 数据挖掘方法和装置
CN105183917A (zh) * 2015-10-15 2015-12-23 国家电网公司 一种用于多级存储数据的多维分析方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109086339A (zh) * 2018-07-06 2018-12-25 深圳市彬讯科技有限公司 一种用于生成指标复合率的数据处理方法及装置
CN109522345A (zh) * 2018-11-19 2019-03-26 百度在线网络技术(北京)有限公司 用于显示信息的方法及装置
CN111625545A (zh) * 2020-06-08 2020-09-04 北京创鑫旅程网络技术有限公司 数据融合方法、数据融合装置及存储介质
CN111625545B (zh) * 2020-06-08 2023-09-01 北京创鑫旅程网络技术有限公司 数据融合方法、数据融合装置及存储介质
CN112199390A (zh) * 2020-09-30 2021-01-08 上海达梦数据库有限公司 一种数据库中数据查询方法、装置、设备及存储介质
CN112199390B (zh) * 2020-09-30 2023-05-30 上海达梦数据库有限公司 一种数据库中数据查询方法、装置、设备及存储介质
CN112269792A (zh) * 2020-12-11 2021-01-26 腾讯科技(深圳)有限公司 数据查询方法、装置、设备及计算机可读存储介质
WO2022121560A1 (zh) * 2020-12-11 2022-06-16 腾讯科技(深圳)有限公司 数据查询方法、装置、设备及计算机可读存储介质
US11989176B2 (en) 2020-12-11 2024-05-21 Tencent Technology (Shenzhen) Company Limited Data query method and apparatus, device, and computer-readable storage medium

Also Published As

Publication number Publication date
CN108241692B (zh) 2020-08-11

Similar Documents

Publication Publication Date Title
CN108241692A (zh) 数据的查询方法及装置
US9576056B2 (en) Recommender system for identifying a new set of media items responsive to an input set of media items and knowledge base metrics
Kraft et al. Searching with context
CN102117321B (zh) 主题区讨论的自动发现聚集和组织
CN104021161B (zh) 一种聚簇存储方法及装置
CA2484009A1 (en) Managing expressions in a database system
CN103942712A (zh) 基于产品相似度的电子商务推荐***及其方法
CN104123332A (zh) 搜索结果的显示方法及装置
US9262454B2 (en) Web page retrieval method and device
CN105404699A (zh) 一种搜索财经文章的方法、装置及服务器
CN101847161A (zh) 搜索网页的方法和建立数据库的方法
CA2369912A1 (en) Computerized information search and indexing method, software and device
CN103714096A (zh) 基于Lucene的倒排索引***构建、数据处理方法及装置
CN103034663A (zh) 一种信息搜索方法和设备
CN109213921A (zh) 一种商品信息的搜索方法及装置
CN106294815B (zh) 一种url的聚类方法及装置
CN103218443A (zh) 一种面向博客网页的网页检索***及方法
CN107832444A (zh) 基于搜索日志的事件发现方法及装置
CN108153781A (zh) 提取业务领域的关键词的方法和装置
CN104484392A (zh) 数据库查询语句生成方法及装置
CN106649385B (zh) 基于HBase数据库的数据排序方法和装置
CN108241691A (zh) 热点查询数据的搜集方法和装置
CN105117403B (zh) 日志数据分片与查询方法及装置
CN107203554A (zh) 一种分布式检索方法及装置
CN108268515B (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
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant