CN105103152A - 近似查询处理 - Google Patents
近似查询处理 Download PDFInfo
- Publication number
- CN105103152A CN105103152A CN201380075332.XA CN201380075332A CN105103152A CN 105103152 A CN105103152 A CN 105103152A CN 201380075332 A CN201380075332 A CN 201380075332A CN 105103152 A CN105103152 A CN 105103152A
- Authority
- CN
- China
- Prior art keywords
- subquery
- answer
- approximate answer
- approximate
- histogram
- 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.)
- Pending
Links
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2453—Query optimisation
- G06F16/24534—Query rewriting; Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2462—Approximate or statistical queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Fuzzy Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了一种用于获得针对在数据库上的查询的近似回答的方法。利用范式将查询转换为子查询的集合。针对所述子查询中的每个生成近似回答,并且组合针对子查询的近似回答以获得针对所述查询的近似回答。
Description
背景技术
随着数据采集和数据管理的进展,数据规模已经变得非常大。海量的可用数据可以导致昂贵的查询处理次数。虽然诸如数据挖掘、决定支持和分析之类的某些应用可能期望保持短的查询响应时间,但是在某些其他应用中,近似回答可能足以提供关于数据的见解。
附图说明
附图图示了本公开的各种方面的各种示例。将理解,在图中图示的元素边界(例如,框、框的组或者其他形状)表示边界的一个示例。将理解,在某些示例中,一个元素可以被设计为多个元素或者多个元素可以被设计为一个元素。在某些示例中,被示出为另一元素的内部部件的元素可以被实现为外部部件,并且反之亦然。
图1是根据本公开的示例的、可以获得针对在数据库上的查询的近似回答的系统的框图;
图2是针对根据本公开的示例的、获得针对在数据库上的查询的近似回答的方法的过程流程图;
图3是根据本公开的示例的、前k(top-k)直方图(histogram)的结构图;
图4是针对根据本公开的示例的、获得针对在数据库上的查询的近似回答的另一方法的过程流程图;
图5是示出了根据本公开的示例的、存储用于获得针对在数据库上的查询的近似回答的非瞬时计算机可读介质的框图。
具体实施方式
公开了用于生成针对在数据库上的查询的近似回答的系统和方法。如本文使用的那样,数据库指可以以各种方式组织的数据的结构化集合。不失一般性并且如以下使用的那样,数据库可以由行和列组成,其中每行表示在数据库中的记录并且每列表示针对属性值的集合。如本文使用的那样,查询指用于在数据库中搜索满足某些条件的记录和/或属性或者获得关于这些记录和/或属性的统计的操作。本文公开的系统和方法的示例可以将查询划分成多个子查询并且获得针对这些子查询的近似回答,其然后可以被组合以得到针对查询的近似回答。本文公开的系统和方法的示例可以提供针对在短的响应时间内回答的查询的准确近似并且还可以支持复杂的查询。
在下文中,参考图详细描述了根据本公开的某些示例。
现在参考图1,图1图示了根据本公开的示例的、可以获得针对在数据库上的查询的近似回答的系统的框图。系统一般由参考数字100指代。本领域中的那些普通技术人员将理解,在图1中示出的功能块和设备可以包括包含电路的硬件元素、包含存储在有形的机器可读介质上的计算机代码的软件元素或者硬件和软件元素两者的组合。此外,系统100的功能块和设备只是可以在示例中实现的功能块和设备的一个示例。本领域中的那些普通技术人员将能够容易地基于针对特定电子设备的设计考虑来定义具体的功能块。
系统100可以包括通过网络106通信的服务器102和一个或多个客户端计算机104。如在图1中图示的那样,服务器102可以包括一个或多个处理器108,所述一个或多个处理器108可以通过总线110连接到显示器112、键盘114、一个或多个输入设备116以及诸如打印机118的输出设备。输入设备116可以包括诸如鼠标或触摸屏之类的设备。处理器108可以包括单核、多核或者在云计算架构中的核的集群。服务器102还可以通过总线110连接到网络接口卡(NIC)120。NIC120可以将服务器102连接到网络106。
网络106可以是局域网(LAN)、广域网(WAN)或者另一网络配置。网络106可以包括路由器、交换机、调制调解器或者用于互连的任何其他类型的接口设备。网络106可以连接到若干客户端计算机104。通过网络106,若干客户端计算机104可以连接到服务器102。可以与服务器102那样类似地构造客户端计算机104。网络还可以连接到数据库130。数据库130可以是任何类型的数据库并且还可以位于服务器102中。数据库130可以保持包括但不限于事件日志的任何类型的数据,所述事件日志是通常使用的高维数据中的一个并且可以具有超过一百的维度。
例如,出于诸如安全管理、IT故障排除(shooting)或者用户行为分析的目的,可以处理并分析事件日志。当用户想分析匹配具体标准的事件时,用户可能需要创建查询以从事件日志数据库搜索事件。查询可以像匹配术语一样简单,诸如“登录”或者IP地址;或者其可以更复杂,诸如包括多个IP地址和端口并且发生在具体时间范围内的、来自属于特定设备组的设备的事件。用户可以在用于选择或者拒绝事件日志的查询表达式中指定条件的集合。
作为示例,用户可以利用连接这些条件的运算符在查询表达式中指定多个条件。例如,查询名称=“失败的登录”与(AND)消息!=“成功”的搜索具有被设置成“失败的登录”的“名称”字段和未被设置成“成功”的消息字段的事件日志。在字段条件之间可以支持各种运算符,所述各种运算符包括但不限于诸如‘!=’、‘=’、‘>’、‘<’、‘<=’、‘>=’、‘在……之间(BETWEEN)’、‘在……中(IN)’、‘以……开始(STARTSWITH)’、‘以……结束(ENDSWITH)’和‘包含(CONTAINS)’之类的字符串运算符,诸如‘!=’、‘=’、‘>’、‘<’、‘<=’、‘>=’、‘在……之间(BETWEEN)’之类的数值/时间戳运算符,诸如‘是(IS)’之类的SQL运算符、诸如‘与(AND)’、‘或(OR)’、‘非(NOT)’之类的布尔运算符以及诸如‘在……中(IN)’之类的列表运算符。
出于方便的目的,假设在例如高维表格R的大数据集上执行查询q,其中表格R由行(即,记录)和列(即,属性)组成,如上文描述的那样。可以使用SQL如下表示查询q:
其中,计数(count)指示具有是表格R中的具体值的Ax的记录的数量并且AF是具有使用Backus范式或者Backus-Naur形式(BNF)的以下递归定义的过滤条件:
如理解的那样,BNF规范是衍生规则的集合,其被写为<符号(symbol)>::=_表达式_,其中<符号>是非终结符,并且_表达式_由符号的一个或多个的序列组成;更多序列由竖条‘|’分离,其指示选择,整体是针对在左边的符号的可能的代替物。从未在左侧出现的符号是终结符(terminal)。在另一方面,在左侧出现的符号是非终结符并且总是被包围在对<>之间。‘::=’意味着必须以在右侧的表达式代替在左侧的符号。
虽然不同的运算符可以针对不同的数据类型具有不同的语义,但是处理方法将类似。如以下描述的那样,不失一般性,在数据库上的查询q可以由的一般形式表示。
继续图1,服务器102可以具有通过总线110被可操作地耦合到处理器108的其他单元。这些单元可以包括诸如记忆装置122之类的有形的机器可读存储介质。记忆装置122可以包括硬件驱动器、只读存储器(ROM)、随机访问存储器(RAM)、RAM驱动器、闪存驱动器、光驱动器、高速缓存存储器等等的任何组合。记忆装置122可以包括转换单元124、子查询处理单元126和组合单元128。转换单元124可以利用范式将在数据库130上的查询转换成子查询的集合。可以由用户通过输入设备116或使用键盘114输入查询或者可以从客户端计算机104中的一个提交查询。例如,范式可以是以下将呈现其细节的析取范式(DNF)。子查询处理单元126可以生成针对由转换单元124转换的子查询中的每个的近似回答。组合单元128可以组合针对子查询的近似回答以获得针对最初输入或者提交的查询的近似回答。
现在参考图2,描绘了针对根据本公开的示例的、获得针对在数据库上的查询的近似回答的方法的过程流程图。用户可以在数据库上输入查询。如上文描述的那样,查询可以是具有由各种运算符连接的多个字段条件的复杂的一个。在框201处,查询被利用范式转换成的子查询的集合。例如,范式可以是析取范式(DNF)。在布尔逻辑中,析取范式(DNF)是逻辑公式的规范化或者标准化,所述逻辑公式是合取子句(conjunctiveclause)的析取。当且仅当逻辑公式是一个或多个文字的一个或多个连接词的析取时,逻辑公式被认为是DNF。如果DNF公式的变量中的每个恰好在每个子句中出现一次,则DNF公式为全析取范式。如在合取范式(CNF)中,在DNF中仅有的命题(propositional)运算符是AND、OR、ANDNOT。NOT运算符可以仅被用作文字的部分,这意味着其仅可以在命题变量之前。将公式转换成DNF可能涉及使用诸如双重否定消除、德摩根定律以及分配律之类的逻辑等价。任何特定的布尔函数可以由一个且仅一个全析取范式表示。
例如,可以将查询(A1v1ORA2v2)AND(A3v3ANDNOTA4v4)转换成:
,其中“
”和“”
是转换的子查询。
在框202处,针对子查询中的每个生成近似回答。根据本公开的示例,针对子查询,通过利用采用技术或者与数据库相关联的前k(top-k)直方图来生成近似回答。例如,给定子查询q,可以使用数据库的样本来回答该子查询并且结果被表示为处理(S,q),其中S表示用于回答查询q的样本的集合。请注意本文可以使用任何采样技术并且子查询的结果可以基于采样比按比例放大并且受在数据库中的记录的总数量约束。
前k直方图可以关于在数据库中的某些预定义的列组合来构造。图3图示了根据本公开的示例的前k直方图的结构,其是关于数据库的列Ai和列Aj构造的。如示出的那样,前k直方图包括关于数据库的两个方面的信息。第一方面是前k个频繁的值和它们的频率。例如,属性对<Ai,Aj>的值组合<vi,vj>的频率被表示为。除此之外,前k直方图可以进一步包括关于其余不频繁的值的统计信息,诸如明显不频繁的值的总数量()、它们的总频率()、不频繁的值的最小频率()以及不频繁的值的最大频率()。给定覆盖在查询q中的所有属性的直方图h,可以使用直方图来回答查询并且结果被表示为处理(h,q)。将理解,图3仅是前k直方图的示例并且本领域技术人员按照本公开的教导可以想到其他变体。
继续图2,在框203处,在获得针对转换的子查询中的每个的近似回答之后,通过组合针对子查询的这些近似回答来获得针对原始查询的近似回答。由于子查询是DNF的形式,因此它们的近似回答的组合可以基于加法(addition)的定律,例如,将针对子查询的近似回答加到一起,和/或将两个或更多子查询合并成新的子查询并且然后计算该新的子查询的近似回答。具体地,如下获得针对查询的最终的近似回答:
其中,表示第i个子查询并且F()表示近似回答。在诸如的每个分量中,通过“AND”或者“ANDNOT”运算符连接属性值约束对。可以使用“=”、“!=”、“>”、“>=”、“<”、“<=”、“BETWEEN”、“CONTAINS”、“STARTSWITH”、“ENDSWITH”连接属性和值对。
现在参考图4,图4是针对根据本公开的示例的、获得针对在数据库上的查询的近似回答的另一方法的过程流程图。在框401处,在数据库上的查询被转换成具有范式的子查询的集合。在框402处,针对每个子查询确定是否可以根据针对数据库的前k直方图直接获得近似回答,这可以由用户预先构建。如果确定可以直接使用前k直方图回答子查询,那么方法进行到框405,其中前k直方图被用于得到针对子查询的初步的近似回答。然后,在框406处,在数据库中的采样被用于修改初步的近似回答,以便获得针对子查询的修改的近似回答。如果在框402处,确定不可以使用前k直方图直接回答子查询,那么方法进行到框403,其中采样被用于获得针对子查询的初步的近似回答。然后在框404处,前k直方图被用于修改初步的近似回答,以便获得针对子查询的修改的近似回答。在框407处,确定是否已经处理所有转换的子查询。如果是,则方法进行到框408,其中组合针对子查询的这些近似回答以获得针对原始查询的近似回答。如果仍还存在将回答的任何更多子查询,那么方法返回到框402并且重复以上过程。
通过示例并且没有限制,以下描述了根据上文描述的方法的、针对某些运算符的处理方法。为了方便,将具有类似的处理方法的运算符分组在一起。
针对AND运算符,查询具有以下形式:
如果存在覆盖在查询q中的所有属性的、如在图3中示出的直方图h,即可以使用直方图h直接回答该查询,则可以首先从前k个频繁的项提取满足过滤条件的记录并且该初步的结果被表示为X=处理(h,q)。接下来,可以使用样本获得另一回答Y=处理(S,q),并且然后可以通过使用除了在直方图h中的前k项的其余的值的统计来修改该回答。针对在Y中的每个记录y并且y不在X中,如下修改y的频率并且然后将记录y放到回答集合X中:
如果y.频率>h max ,则y.频率=h max ;
如果y.频率<h min ,则y.频率=h min ;
其中,hmax和hmin分别表示其余的非前k值的最大和最小频率。回答集合X将是最终的查询回答。
如果不存在覆盖在查询q中的所有属性的直方图h,即不可以使用直方图h直接回答该查询,那么可以使用样本来获得初步的结果Y=处理(S,q),并且然后可以通过使用前k直方图来修改该初步的结果Y。例如,针对包括查询q中的属性中的某些的每个直方图h,针对在Y中的每个记录y,可以检查属性值是否存在于前k个频繁值中。如果属性值存在于前k个频繁值中,可以使用前k个频繁项来获得另一回答Y’=处理(h,q),并且然后可以基于重叠的属性分组并聚合Y’,导致仅一个记录y’。如果记录y’的频率小于记录y的频率,那么可以将记录y的频率设置成记录y’的频率。
在另一方面,如果没有属性值存在于前k个频繁值中,那么可以根据关于在直方图中的其余的非前k个值的统计信息来仅修改记录y的频率,如下:
如果y.频率>h max ,那么y.频率=h max
如果y.频率<h min ,那么y.频率=h min 。
针对运算符OR,查询可以是以下两个形式中的一个:与。
针对前面的情况,计算子查询与 的结果。然后基于Ax将这些结果联合和分组以及聚合。针对后面的情况,查询等同于。查询处理类似于前面的情况:计算子查询 的结果;计算子查询 的结果;联合sq1和sq2的结果,并且然后基于Ax分组和聚合。
在两种情况中,如果在sq1的结果中的记录y1与在sq2的结果中的记录y2具有相同的属性值,那么该记录的下界频率是max(y下,z下)并且该记录的上界频率是max(y上,z上),其中y上和y下分别是记录y1的频率的上界和下界,Z上和Z下分别是记录y2的频率的上界和下界并且max()得到两个值的最大值。
针对运算符NOT和!=,查询是以下形式:
其等同于:
如果存在可以分别覆盖q和的所有属性的直方图h和h’,那么可以通过使用在h’中的前k个频繁项首先获得结果Y=处理(h’,q’);并且然后针对在Y中的每个y,y.频率-处理(h,q|Aj=y.Aj),其是记录,被放到回答集合中。如果y和z分别具有如y 上 、y 下 、z 上 和z下的边界,则返回y 上 =y 上 -z 下 和y 下 =y 下 -z 上 。
否则,如果不存在可以覆盖q和q’的所有属性的直方图h和h’,并且如果存在可以覆盖的所有属性的直方图h’,那么可以通过使用在h’中的前k个频繁项来获得结果Y=处理(h’,q’);可以通过使用样本来获得结果Z=处理(S,q)并且针对在Y中的每个y,将y.频率-Z(Aj=y.Aj)放入到回答集合中。
然而,如果不存在可以覆盖q’的所有属性的直方图h’,那么直接使用样本返回回答处理(S,q)。
针对运算符>=、<、<=、BETWEEN、CONTAINS、STARTSWITH和ENDSWITH,查询是以下形式:
其中。
查询处理可以使用样本首先得到X=处理(S,q);然后针对的形式的q的每个子查询sq,如果存在覆盖sq的所有属性的直方图h,则可以获得m=处理(h,sq);然后如果在X中存在任何x,并且x.频率>m,则集合x.频率=m.X将被作为最终的结果返回。
针对运算符IN,查询是以下形式:
其等同于:
查询处理可以首先计算每个分量的结果并且然后将每个分量的结果加在一起,如下:
针对运算符NOTIN,查询是以下形式:
其等同于:
查询过程将类似于运算符AND,并且在此将不被描述。
针对运算符ISNULL/ISNOTNULL,查询是以下形式:
或
NULL可以被视为特殊值,并且查询等同于:
或
查询处理类似于运算符=和!=,并且在本文中将不被描述。
如上文描述的那样,用于提供针对查询的近似回答的本公开的示例可以生成更准确的近似并且还可以支持各种复杂的运算符和复杂的查询。
现在参考图5,图5图示了示出根据本公开的示例的、存储用于获得针对在数据库上的查询的近似回答的代码的非瞬时计算机可读介质的框图。非瞬时计算机可读介质一般由参考数字500指代。
非瞬时计算机可读介质500可以对应于存储诸如编程代码等的计算机实现的指令的任何典型的存储设备。例如,非瞬时计算机可读介质500可以包括非易失性存储器、易失性存储器和/或一个或多个存储设备中的一个或多个。非易失性存储器的示例包括但不限于电可擦除可编程只读存储器(EEPROM)和只读存储器(ROM)。易失性存储器的示例包括但不限于静态随机访问存储器(SRAM)和动态随机访问存储器(DRAM)。存储设备的示例包括但不限于硬盘、压缩盘驱动器、数字通用盘驱动器和闪速存储器设备。
处理器501一般地取回和执行存储在非瞬时计算机可读介质500中的计算机实现的指令,用于获得针对在数据库上的查询的近似回答。在框502处,转换模块可以利用范式将所述查询转换为的子查询的集合。在框503处,子查询处理模块可以生成针对子查询中的每个的近似回答。在框504处,组合模块可以组合针对子查询的近似回答以获得针对查询的近似回答。
根据实现模式的以上描绘,以上示例可以由硬件、软件或固件或者其组合实现。例如,本文描述的各种方法、过程、模块和功能单元可以由处理器(术语处理器将被广泛地解释为包括CPU、处理单元、ASIC、逻辑单元或者可编程门阵列等)实现。过程、方法和功能单元所有可以由单个处理器或者在若干处理器之间的分裂(split)执行。它们可以被实现为由一个或多个处理器可执行的机器可读指令。进一步地,可以以软件产品的形式实现本文的教导。计算机软件产品被存储在存储介质中并且包括多个指令,用于使计算机设备(其可以是个人计算机、服务器或者网络设备等)实现在本公开的示例中记载的方法。
图仅是示例的说明,其中对于实现本公开而言,在图中示出的模块或者过程不一定是必要的。此外,上述示例的序列数字仅用于描述,并且不指示示例优于另一个。
本领域中的那些技术人员可以理解,在示例中的设备中的模块可以被布置在如在示例中描述的示例中的设备中,或者可以替代地位于不同于在示例中的设备的一个或多个设备中。在前述示例中的模块可以被组合成一个模块或者被进一步划分成多个子模块。
Claims (15)
1.一种用于获得针对在数据库上的查询的近似回答的方法,包括:
利用范式将所述查询转换成子查询的集合;
生成针对所述子查询中的每个的近似回答;以及
组合针对所述子查询的近似回答以获得针对所述查询的近似回答。
2.如在权利要求1中所述的方法,其中所述范式是析取范式(DNF)。
3.如在权利要求1中所述的方法,其中生成针对所述子查询中的每个的近似回答包括利用在所述数据库中的采样或者与所述数据库相关联的前k直方图来生成针对所述子查询中的每个的近似回答。
4.如在权利要求2中所述的方法,其中所述子查询由运算符OR连接,并且所述组合基于加法定律。
5.如在权利要求3中所述的方法,其中利用在所述数据库中的采样或者与所述数据库相关联的前k直方图来生成针对所述子查询中的每个的近似回答进一步包括:
如果可以根据前k直方图直接获得针对子查询的近似回答,那么使用前k直方图来得到针对所述子查询的初步近似回答,并且使用采样来修改所述初步近似回答以便获得针对所述子查询的修改的近似回答;以及
如果不可以根据前k直方图直接获得针对子查询的近似回答,那么使用采样来获得针对所述子查询的初步近似回答,并且使用前k直方图来修改所述初步近似回答以便获得针对所述子查询的修改的近似回答。
6.如在权利要求5中所述的方法,其中所述组合包括组合针对每个子查询的所述修改的近似回答以获得针对所述查询的近似回答。
7.如在权利要求3中所述的方法,其中所述前k直方图包括关于除了前k项的其余的值的统计信息。
8.一种用于获得针对在数据库上的查询的近似回答的系统,所述系统包括:
处理器,其可适于执行存储的指令;以及
存储指令的存储器设备,存储器设备包括处理器可执行代码,所述代码当由处理器执行时可适于:
利用范式将所述查询转换成子查询的集合;
生成针对所述子查询中的每个的近似回答;并且
组合针对所述子查询的近似回答以获得针对所述查询的近似回答。
9.如在权利要求8中所述的系统,其中所述范式是析取范式(DNF)。
10.如在权利要求8中所述的系统,其中所述存储器设备存储处理器可执行代码,并且所述处理器可执行代码可适于通过以下内容生成针对所述子查询的近似回答:
利用在所述数据库中的采样或者与所述数据库相关联的前k直方图来生成针对所述子查询中的每个的近似回答。
11.如在权利要求9中所述的系统,其中所述子查询由运算符OR连接并且所述组合基于加法定律。
12.如在权利要求10中所述的系统,其中所述处理器设备存储处理器可执行代码,并且所述处理器可执行代码可适于利用在所述数据库中的采样或者与所述数据库相关联的前k直方图以通过以下内容生成针对所述子查询中的每个的近似回答:
如果可以根据前k直方图直接获得针对子查询的近似回答,那么使用前k直方图来得到针对所述子查询的初步近似回答;并且使用采样来修改所述初步近似回答以便获得针对所述子查询的修改的近似回答;以及
如果不可以根据前k直方图直接获得针对子查询的近似回答,那么使用采样来获得针对所述子查询的初步近似回答,并且使用前k直方图来修改所述初步近似回答以便获得针对所述子查询的修改的近似回答。
13.一种包括代码的非瞬时计算机可读介质,所述代码被配置成引导处理器:
利用范式将所述查询转换成子查询的集合;
生成针对所述子查询中的每个的近似回答;并且
组合针对所述子查询的近似回答以获得针对所述查询的近似回答。
14.如在权利要求13中所述的非瞬时计算机可读介质,其中所述范式是析取范式(DNF)。
15.如在权利要求13中所述的非瞬时计算机可读介质,其中所述非瞬时计算机可读介质包括被配置成引导处理器通过以下内容生成针对所述子查询的近似回答的代码:
利用在所述数据库中的采样或者与所述数据库相关联的前k直方图来生成针对所述子查询中的每个的近似回答。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2013/000107 WO2014117297A1 (en) | 2013-01-31 | 2013-01-31 | Approximate query processing |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105103152A true CN105103152A (zh) | 2015-11-25 |
Family
ID=51261374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380075332.XA Pending CN105103152A (zh) | 2013-01-31 | 2013-01-31 | 近似查询处理 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150370854A1 (zh) |
CN (1) | CN105103152A (zh) |
WO (1) | WO2014117297A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108520572A (zh) * | 2018-04-13 | 2018-09-11 | 航天科技控股集团股份有限公司 | 一种基于记录仪管理平台的实时分析报警数据方法及系统 |
CN112559552A (zh) * | 2020-12-03 | 2021-03-26 | 北京百度网讯科技有限公司 | 数据对生成方法、装置、电子设备及存储介质 |
WO2024060849A1 (zh) * | 2022-09-21 | 2024-03-28 | 华为云计算技术有限公司 | 一种数据查询方法和云服务系统 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11609911B2 (en) | 2019-12-19 | 2023-03-21 | Ocient Holdings LLC | Selecting a normalized form for conversion of a query expression |
US11574017B2 (en) | 2020-04-09 | 2023-02-07 | International Business Machines Corporation | Sub-question result merging in question and answer (QA) systems |
CN112380250B (zh) * | 2020-10-15 | 2023-01-06 | 复旦大学 | 近似查询处理中的样本调节系统 |
CN112765286A (zh) * | 2021-02-01 | 2021-05-07 | 广州海量数据库技术有限公司 | 一种基于关系数据库的查询方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6507840B1 (en) * | 1999-12-21 | 2003-01-14 | Lucent Technologies Inc. | Histogram-based approximation of set-valued query-answers |
US20060173833A1 (en) * | 2005-01-28 | 2006-08-03 | Purcell Terence P | Processing cross-table non-Boolean term conditions in database queries |
US20060212429A1 (en) * | 2005-03-17 | 2006-09-21 | Microsoft Corporation | Answering top-K selection queries in a relational engine |
CN101826098A (zh) * | 2010-02-03 | 2010-09-08 | 中国科学院地理科学与资源研究所 | 一种基于ab直方图的空间查询选择率估计方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102346873B (zh) * | 2010-07-29 | 2013-08-14 | 同济大学 | 一种不确定数据上的多准则信息处理方法 |
JP5552448B2 (ja) * | 2011-01-28 | 2014-07-16 | 株式会社日立製作所 | 検索式生成装置、検索システム、検索式生成方法 |
CN102737134B (zh) * | 2012-06-29 | 2014-06-18 | 电子科技大学 | 适用于大规模实时数据流的查询处理方法 |
-
2013
- 2013-01-31 WO PCT/CN2013/000107 patent/WO2014117297A1/en active Application Filing
- 2013-01-31 US US14/763,793 patent/US20150370854A1/en not_active Abandoned
- 2013-01-31 CN CN201380075332.XA patent/CN105103152A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6507840B1 (en) * | 1999-12-21 | 2003-01-14 | Lucent Technologies Inc. | Histogram-based approximation of set-valued query-answers |
US20060173833A1 (en) * | 2005-01-28 | 2006-08-03 | Purcell Terence P | Processing cross-table non-Boolean term conditions in database queries |
US20060212429A1 (en) * | 2005-03-17 | 2006-09-21 | Microsoft Corporation | Answering top-K selection queries in a relational engine |
CN101826098A (zh) * | 2010-02-03 | 2010-09-08 | 中国科学院地理科学与资源研究所 | 一种基于ab直方图的空间查询选择率估计方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108520572A (zh) * | 2018-04-13 | 2018-09-11 | 航天科技控股集团股份有限公司 | 一种基于记录仪管理平台的实时分析报警数据方法及系统 |
CN112559552A (zh) * | 2020-12-03 | 2021-03-26 | 北京百度网讯科技有限公司 | 数据对生成方法、装置、电子设备及存储介质 |
US11748340B2 (en) | 2020-12-03 | 2023-09-05 | Beijing Baidu Netcom Science And Technology Co., Ltd. | Data pair generating method, apparatus, electronic device and storage medium |
WO2024060849A1 (zh) * | 2022-09-21 | 2024-03-28 | 华为云计算技术有限公司 | 一种数据查询方法和云服务系统 |
Also Published As
Publication number | Publication date |
---|---|
US20150370854A1 (en) | 2015-12-24 |
WO2014117297A1 (en) | 2014-08-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110633292B (zh) | 一种异构数据库的查询方法、装置、介质、设备及系统 | |
CN105103152A (zh) | 近似查询处理 | |
US10242061B2 (en) | Distributed execution of expressions in a query | |
US7836100B2 (en) | Calculating and storing data structures including using calculated columns associated with a database system | |
Zhou et al. | The normalization of occurrence and C o‐occurrence matrices in bibliometrics using Cosine similarities and O chiai coefficients | |
Álvarez-García et al. | Compressed k2-triples for full-in-memory RDF engines | |
US20180165347A1 (en) | Multi-dimensional analysis using named filters | |
WO2010042238A1 (en) | System and method for data warehousing and analytics on a distributed file system | |
US20110314027A1 (en) | Index building, querying method, device, and system for distributed columnar database | |
US20130166552A1 (en) | Systems and methods for merging source records in accordance with survivorship rules | |
US9524318B2 (en) | Minimizing result set size when converting from asymmetric to symmetric requests | |
US20200117663A1 (en) | Managed query execution platform, and methods thereof | |
CN109791543B (zh) | 执行多表连接操作的控制方法及对应装置 | |
CN111221791A (zh) | 一种多源异构数据导入数据湖的方法 | |
KR20180083927A (ko) | 데이터 쿼리 방법 및 장치, 및 데이터베이스 시스템 | |
CN111198898B (zh) | 大数据查询方法及大数据查询装置 | |
CN108140022B (zh) | 数据查询方法和数据库系统 | |
CN113918605A (zh) | 数据查询方法、装置、设备以及计算机存储介质 | |
Fernández | Binary RDF for scalable publishing, exchanging and consumption in the web of data | |
CN112269797B (zh) | 一种卫星遥感数据在异构计算平台上的多维查询方法 | |
CN110569243B (zh) | 一种数据查询方法、数据查询插件和数据查询服务器 | |
US11086828B2 (en) | Compression of column store tables | |
CN107515867A (zh) | 一种NoSQL数据库的数据存储、查询方法和装置以及一种rowKey全组合的生成方法和装置 | |
Mammo et al. | Presto-rdf: Sparql querying over big rdf data | |
Weng et al. | Scalable parallel join for huge tables |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20170122 Address after: American Texas Applicant after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Applicant before: Hewlett-Packard Development Company, L.P. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151125 |