CN1292125A - 通过有选择地使用属性或关键字值优化查询生成的方法和装置 - Google Patents

通过有选择地使用属性或关键字值优化查询生成的方法和装置 Download PDF

Info

Publication number
CN1292125A
CN1292125A CN99803525A CN99803525A CN1292125A CN 1292125 A CN1292125 A CN 1292125A CN 99803525 A CN99803525 A CN 99803525A CN 99803525 A CN99803525 A CN 99803525A CN 1292125 A CN1292125 A CN 1292125A
Authority
CN
China
Prior art keywords
dimension
inquiry
value
fact
key value
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
Application number
CN99803525A
Other languages
English (en)
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.)
Platinum Technology International Inc
Original Assignee
Platinum Technology Inc
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 Platinum Technology Inc filed Critical Platinum Technology Inc
Publication of CN1292125A publication Critical patent/CN1292125A/zh
Pending legal-status Critical Current

Links

Images

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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/283Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
    • 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
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24549Run-time optimisation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99932Access augmentation or optimizing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99934Query formulation, input preparation, or translation
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99935Query augmenting and refining, e.g. inexact access
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Abstract

提供一种连接数据库(6)中两组或多组数据的方法,其中,设计事实数据中的某个维数(12)为被强迫维数,以及对于每一被强迫维数,当且仅当至少一项存在于事实数据中,其具有与除被强迫维数外的维数中同样的关键字值组时,在事实数据中产生一组项,每一项具有除被强迫维数外的所有维数中同样的关键字值,并且每一项具有为该维数的事实数据中存在的值组中的不同成员。

Description

通过有选择地使用属性或关键字值优
化查询生成的方法和装置
本发明涉及查询数据库中的数据,更具体说,涉及选择适当查询参数来高效执行查询的方法。
数据库通常在一个或者多个表示某些性质的实例数据的事实表中存储数据,以及用维数表定义事实表中的数据的属性。如图1所示,事实表具有每一个表示与所涉及的实例相关的一个特定维数的一个元素的列和一个或者多个包含与特定实例有关的数据的度量列。该度量常常是数值,它们在事实数据中的记录被分组归集时可以以某种方式合计。例如,这些项可以求和或求平均。然而,也可以不是这样,事实表中的某些度量列中的“度量数据”可以只是任意字符串或不能合计的其它类型的值。本发明操作任何类型的事实表,只要它涉及一个或者多个具有属性的维数。
维数表示在一个类中的实体的有界集合,每类具有一个或者多个属性,这些属性可以以普通方式分类。维数通常在一个维数表中表示,表中有一列或者多列,唯一标识在该维数中的每一实体,称为关键字值。关键字值常常是给予在该维数中的实体的任意标识符,用于唯一标识它们。该表中的其它列,可能包括一个关键字列,提供每一实体的不同属性。可以使用这些属性值在不同级上分组在该维数表中的实体,以及根据数据的属性从事实表中抽取或合计它们。
为空间效率,和为避免可能引起数据库中不一致的冗余,只在事实数据表中存储每一维数的关键字值。应该注意,如果更有效的话,可以把与所讨论的维数中的关键字值具有一对一的对应表的内部表示存储在事实表中。用户永远看不到这些。在这种场合,为了本讨论的目的可认为内部表示是关键字值。
在本专利申请中的查询例子以SQL语言给出,因为它显然是今天使用的最普遍的查询语言。然而,显然,可以以其它查询语言同样有效地实现这里说明的本发明。
如果使用由用户请求的属性值对数据库中的数据进行查询,则必需在该查询中包括维数表,如下例:SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM fact,dim1,dim2,dim3WHEREdim1.key1=fact.key1 ANDdim2.key2=fact.key2 ANDdim3.key3=fact.key3 ANDdim1.attr1 in(attrval11,attrval12,…,attrval1N) ANDdim2.attr2 in(attrval21,attrval22,…,attrval2P) ANDdim3.attr3 in(attrval31,attrval32,…,attrval3Q);
在这一类型查询中,查询中指定的表在每一表中的任何公共字段上连接在一起。在上面的例子中,key1字段对于dim1表和事实表两者是公共的。key2字段对于dim2表和事实表两者是公共的。key3字段对于dim3表和事实实两者是公共的。
使用这样的连接,在输出表中为两个连接的表中的项的所有组合建立一个项,这里,在每一表中的连接字段是相同的。被连接的字段只在输出的连接表中出现一次。例如,连接图2A和2B中所示的两个表产生图2C中所示的输出表。
然而,如果在每一维数中选择的属性值的初始映射是对在该维数中的关键字值进行的话,则不必在查询中连接维数表和事实表,因为所有必需的信息在事实表中。例如,该查询可能读作:SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM factWHEREfact.key1 in(val11,val12,…,val1N) ANDfact.key2 in(val21,val22,…,val2P) ANDfact.key3 in(val31,val32,…,val3Q);
这常常比等价的属性逻辑查询有效得多,这取决于数据库如何处理该查询,因为维数表不需要被包含在该查询中。此外,数据库引擎由于各种优化,处理关键字值能够比处理属性更加有效。
可以例如通过用每一维数中的关键字值索引事实表来优化数据库。然后通过扫描在该索引中各关键的所有条目可以很快地找到合适的事实数据,使其包含在结果数据集中,因为与某特定关键字关联的索引是连续排列的。
如果数据库使用了这种基于优化模式的索引的话,则即使当对关键字值查询时,下述类型的查询在使用上常常更具优点,:SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM fact,dim1,dim2,dim3WHEREdim1.key1=fact.key1 ANDdim2.key2=fact.key2 ANDdim3.key3=fact.key3 ANDfact.key1 in(val11,val12,…,val1N)ANDfact.key2 in(val21,val22,…,val2P)ANDfact.key3 in(val31,val32,val3Q);
不管当今的数据库查询工具使用什么查询逻辑,它们所有都使用从请求到合适的SQL查询的同样变换,而不管通过使用选择的查询逻辑将要查询的条目的数目。例如在某些场合,所取的选择,特别在较高级的维数中,从某个维数表中产生很大数目匹配选择标准的记录。例如,有人可能询问市场上所有信托基金的所有股票基金。事实上,可能有数百个维数条目匹配该选择标准。如果数据库查询工具自动建立把选择的维数属性条目转换为在该基金维数中的关键字值的话,则将检索这些维数以发现匹配选择标准的关键字值。然后使用一个“IN”表把所涉及的条目加到该查询上,如同上面所示。当关键字值的数目非常大时会产生一个问题。大多数数据库系统对在单一“IN”表中的值数目有限制,因此查询工具必须把该查询分成多个查询,在数据库中检索。此外,即使未索引维数,与使用少数查询属性值和在该查询中引入维数来执行查询相比,只使用事实表来执行具有相当大的数目关键字值的查询事实上可能需要更长时间。例如,对于一个数据库引擎来说查阅相关维数表的一个属性值和检验它是否匹配与查看一个关键字值是否匹配几乎一样快。如果在该等价查询中的关键字值要比属性值的数目显著多的话,则在相关维数中查阅这些属性值要比检验所有关键字值查看它们中的一个是否匹配几乎肯定更快。
可以看到,需要一种查询工具,它可以根据所查询的实际属性在可选择的查询结构之间选择。
本发明提供一种从包括来自一个或者多个维数中的属性的数据请求产生查询的方法,其中,确定这些属性的相应的关键字值,然后根据执行该查询所必需的关键字值和属性的数目作出决定在查询中是使用属性逻辑还是使用关键字值逻辑。
图1举例表示3个类关系表和一个事实表。
图2A和2B举例表示两个表。
图2C表示图2A和2B所示两个表的连接。
图3表示根据本发明的第一实施例的系统的部件。
图4是表示根据本发明的第一实施例的选择算法的流程图。
现在参考图3-4说明本发明的一个特定的实施例。
如图3所示,在应用程序服务器2上作为一个对象提供查询发生器20。该查询发生器接受外部请求,并从其产生SQL查询。然后把SQL查询发送到数据库引擎4,它从数据库6中检索请求的数据。然后把返回的数据从数据库引擎回送到应用程序服务器,要么返回到请求者,要么处理后送到某个地方,例如到显示服务器10。
应用程序服务器还存储在有关要被检索的事实数据的数据库中的维数的复制品12。当查询发生器接收到包含一个或者多个属性的请求时,该查询发生器检索所有维数条目,识别所有需要的关键字值。这也可以使用对数据库服务器的查询而实现,但是效率很低。
然后查询发生器20确定,如何使用下面的逻辑产生该查询,所述逻辑在图4中作为流程图表示。
对于每一维数,如果关键字值的数目小于某个实验确定的阈值的话,则认为简单比较该关键字值和在事实表中的值来获得该查询的结果很可能更有效。对于申请人对其实施本实施例的系统,这一阈值的理想值被发现是30。在这一场合产生的查询不包括维数而只在事实数据上进行(称为相对于这一维数的“无”(“without”)查询,因为维数不需要)。例如,可以产生下面的查询。SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM factWHEREfact.key1 in(val11,val12,…,val1N)AND
然而,如果关键字的数目超过某个预定阈值,则产生的查询将依赖于事实表是否有对该维数的索引而变化。
如上所述,如果该维数被索引,则来自该维数的一个关键字值可以被很快地映射到事实表中包含该关键字值的适合的条目。
如果该维数关键字被索引,则执行比较,查看将在该查询中出现的关键字值的数目是否超过属性值的数目乘以某个预定常数A,A同样由实验确定。对于由申请人对其实施本实施例的系统,这一阈值的理想值发现是30,但应该注意,该值与上面讨论的阈值无关。
如果关键字值的数目超过该值,则认为属性逻辑可能更有效,并且产生一个属性查询。例如,可能产生一个包括下述术语的“带连接”的查询。术语“带连接”(with join)指的是这一事实,即在事实表和所讨论的维数表之间执行连接,其已参考图2A-2C讨论。应该注意,所有基于属性的查询是相对于该维数的“带连接”的查询,因为属性值不借助于维数表不可能被确定。SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM fact,dim1WHEREdim1.key1=fact.key1 ANDdim1.attrl in(attrval11,attrval12,…,attrval1N);
然而,如果关键字值的数目不超过属性值数目乘以常数A的话,则使用数据库引擎优化的索引产生一个基于关键字值的、在其内包括该维数的“带连接”的查询。该查询可以包括下面的语句:SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM fact,dim1WHEREdim1.key1=fact.key1 ANDfact.key1 in(val11,val12,…,val1N)AND…;
如果所讨论的维数未索引,则使用关键字值的优点很少,如果毕竟还有什么优点的话。例如,对一个数据库引擎来说,在相关维数表中查阅一个属性值看其是否匹配,和看一个关键字值是否匹配几乎一样快。因此,在这种场合,把关键字值的数目和属性值的数目作一简单比较,而不去长时间建立一个实验系数。然而,取决于数据库引擎,如果合适的话可以使用这样一个系数。
如果关键字值的数目大于在该维数查询中将使用的属性值的数目的话,则在该查询中为该维数使用一个“带连接”的属性查询。否则,为该维数使用一个“无连接”的关键字查询,因为在检索中包含维数没有优点,因为它未作索引。
这一选择算法为每一维数重复,然后适当产生查询并传送到数据库查询引擎。
当然,取决于在每一维数中的查询的不同性质,在每一维数中可以进行不同连接。可以在查询中包括某些维数,而不包括其它维数。此外,某些维数可以包括属性逻辑,而其它维数不包括。例如,可以产生下面完整的查询,在该查询中包括第一维数和第三维数,前者使用关键字值逻辑,而后者使用属性值逻辑。SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.2FROM fact,dim1,dim3WHEREdim1.key1=fact.key1 ANDdim3.key3=fact.key3 ANDdim1.key1 in(val11,val12,…,val1N)AND…;fact.key2 in(val21,val22,…,val2P)AND…;dim2.attr3 in(attrval31,attrval32,…,attrval3Q);
某些请求比迄今叙述的更加复杂。例如,当用户从一个维数中进行多个单独的选择(“保持”)时出现“多重保持”请求。在这一场合产生的查询需要在WHERE子句中使用“或”逻辑来模拟这一情况。例如,假定当用户从维数dim1中选择时进行多重“保持”。第一保持包括属性attr1和attr2,而第二保持包括属性attr3和attr4。所产生的查询应为:
SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.m2,fact.m3
FROM fact,dim1 WHERE dim1.key1= fact.key1 AND((dim1.attr1 in(attrval11,…attrval1N)ANDdim1.attr2 in(attrval21,…attrval2N)
OR
(dim1.attr3 in(attrval31, … attrval3N)ANDdim1.attr4 in(attrval41,…attrval4N))AND fact.key2 in(val21,val22,…,val2N)AND fact.key3 in(val31,val32,…,val3N)
根据本实施例,通过这种类型的查询,在基于属性的查询中参考的每一属性在上面的算法中作为一个属性计数。使用关键字值的等效查询具有和前面说明的同样的格式,具有一个简单的“IN”表,因此对建立关键字值的数目不增加复杂性。
当用户选择包括一个“基”计算的度量(亦即类似份额的“某种东西”)时,会出现更复杂的情况。这通常从给定维数中调用“幕后”的附加选择。关键字逻辑通过在该维数的关键字表中的附加的关键字值解决这一情况。属性逻辑需要在涉及多重“保持”的语义之上执行附加的“或”运算。我们假定(在从上述例子的多重“保持”之上)用户选择一个“基”计算,它调用维数dim1中的附加选择,比方说从属性attr5。该查询看起来如下:
SELECT fact.key1,fact.key2,fact.key3,fact.ml,fact.m2,fact.m3
FROM fact,dim1WHEREdim1.key1=fact.key1AND(   ((diml.attr1 in(attrval11,…attrval1N)ANDdim1.attr2 in(attrval21,…attrval2N))
OR
(dim1.attr3 in(attrval31,…attrval3N) ANDdim1.attr4 in(attrval41,…attrval4N)))
OR
dim1.attr5 in(attrval51,…,attrval5N))AND fact.key2 in(val21,val22,…,val2N)
这种情况以和“多重保持”情况类似方式处理。
应该注意,可以与属性逻辑选项一起使用星形连接选项,某些维数根据一个索引的维数使用星形连接,某些维数使用标准的属性逻辑。假定为维数dim1使用一个简单的属性逻辑的例子,则查询看起来如下:
SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.m2,fact.m3
FROM fact,dim1,dim2,dim3WHEREdim1.key1=fact.key1AND dim2.key2=fact.key2AND dim3.key3=fact.key3ABD(dim1.attr1 in(attrval11,..attrval1N)AND dim1.attr2 in(attrval21,..attrval2N)AND dim1.attrN in(attrvalN1,…attrvalNN))AND dim2.key2 in(val21,val22,…,val2N)AND dim3.key3 in(val31,val32,…,val3N)
在这一实施例的系统中,用户轮廓文件允许建立返回到用户的数据的子集。用户将只访问他具有特权看的那些记录。数据库(base)使用一个过滤机构来实现这一点。从属性逻辑的观点看,用户轮廓文件是一组维数选择,它们确定用户可以访问的数据的子集。假定为维数dim1的用户轮廓文件定义用户只可以访问属性attrK的值在给定值表中的那些记录,则由属性逻辑产生的查询可以看起来如下:
SELECT fact.key1,fact.key2,fact.key3,fact.m1,fact.m2,fact.m3
FROM fact,dim1WHERE dim1.key1=fact.key1AND (dim1.attr1 in(attrval11,..attrval1N)AND dim1.attr2 in(attrval21,..attrval2N)AND dim1.attrK in(attrvalK1,…attrvalKN))AND fact.key2 in(val21,val22,…,val2N)AND fact.key3 in(val31,val32,…,val3N)
所提到的每一属性值作为在本发明的该实施例的算法中的单一属性值对待。
属性逻辑不受划分的事实集影响。在物理划分的场合,使用一个聚集表定义每一划分。通常,使用所述逻辑对每一划分发布查询。
尽管图示和说明了本发明的优选实施例,但是本技术领域具有普通技能的人理解,可以进行改变和修改而不离开本发明的更广阔的范围。在下面的权利要求中叙述本发明的各种特征。

Claims (6)

1.一种产生用于从数据库中获取数据的查询的方法,所述数据库包括事实表和至少一个维数表;每一维数表提供表示一个维数的数据,所述数据包括一组实体的一组属性中的属性值,每一实体由一个关键字值标识;所述事实表包括数据项,每一数据项与来自每一所述维数的一个实体相关;所述查询基于指定来自一个或者多个所述维数中的一个或者多个所述属性值的数据请求;对于每一维数,所述方法包括步骤:
在所述维数中建立,与在所述维数中的所述属性值相关的所有关键字值;
作为在所述维数中的所述关键字值的数目和所述属性值的数目的函数选择是对在该维数中的关键字值还是属性值进行查询;以及
如果选择属性值查询的话,则使用属性值产生相应于该维数的所述查询的部分;
如果选择关键字值查询的话,则使用关键字值产生相应于该维数的所述查询的部分。
2.根据权利要求1的方法,其中,所述选择对关键字值还是对属性值查询的步骤包括比较所述关键字值的数目与一个阈值,和如果关键字值的数目小于一个预定值,则对事实数据表使用关键字值查询实现相应于该维数的查询的部分的步骤。
3.根据权利要求2的方法,其中,如果在所述维数中的关键字值数目大于所述预定阈值,则使用属性值实现相应于该维数的查询的部分,如果为实现所述查询必需的关键字值对属性值的比低于某个比值的话;或使用关键字值实现相应于该维数的查询的部分,如果所述比高于所述比值的话。
4.根据权利要求3的方法,其中,所述比值根据该维数是否索引而变化。
5.根据权利要求3的方法,其中,如果使用关键字值实现所述查询的所述部分,则只使用事实数据表实现所述查询的所述部分,如果所述维数未索引的话;或通过连接事实数据表与相应维数表并相对于在所述连接的维数表中的维数关键字查询来实现所述查询,如果所述维数进行了索引的话。
6.产生从数据库中获取数据的查询的装置,所述数据库包括事实表和至少一个维数表;每一维数表提供表示一个维数的数据,所述数据包括一组实体的一组属性中的属性值,每一实体由一个关键字值标识:所述事实表包括数据项,每一数据项与来自每一所述维数的一个实体相关,所述查询基于指定从一个或者多个所述维数中的一个或者多个所述属性值的数据请求,所述装置包括:
为在每一维数中建立所有关键字值的设备,所述关键字值与在所述维数中的所述属性值相关;
作为所述维数中的所述关键字值的数目和所述属性值的数目的函数选择对在该维数中的关键字值还是属性值进行查询的设备;
用于在选择属性值查询时使用属性值产生相应于该维数的所述查询的部分的设备;
用于在选择关键字值查询时则使用关键字值产生相应于该维数的所述查询的部分的设备。
CN99803525A 1998-11-03 1999-11-03 通过有选择地使用属性或关键字值优化查询生成的方法和装置 Pending CN1292125A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/185,042 US6192357B1 (en) 1998-11-03 1998-11-03 Method and apparatus for optimizing query generation by selectively utilizing attributes or key values
US09/185,042 1998-11-03

Publications (1)

Publication Number Publication Date
CN1292125A true CN1292125A (zh) 2001-04-18

Family

ID=22679320

Family Applications (1)

Application Number Title Priority Date Filing Date
CN99803525A Pending CN1292125A (zh) 1998-11-03 1999-11-03 通过有选择地使用属性或关键字值优化查询生成的方法和装置

Country Status (12)

Country Link
US (1) US6192357B1 (zh)
EP (1) EP1049997B1 (zh)
JP (1) JP2004520633A (zh)
CN (1) CN1292125A (zh)
AT (1) ATE358297T1 (zh)
AU (1) AU755859B2 (zh)
BR (1) BR9906714A (zh)
CA (1) CA2325863A1 (zh)
DE (1) DE69935657T2 (zh)
IL (1) IL137127A (zh)
WO (1) WO2000028439A1 (zh)
ZA (1) ZA200003317B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101341464B (zh) * 2005-10-23 2010-05-26 谷歌公司 对结构化数据进行搜索的方法、系统以及使数据项结构化及可搜索的方法、系统
CN102043866A (zh) * 2011-01-25 2011-05-04 苏州普达新信息技术有限公司 基于表单特征的松弛搜索与优化排序方法

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7130853B2 (en) * 2000-06-06 2006-10-31 Fair Isaac Corporation Datamart including routines for extraction, accessing, analyzing, transformation of data into standardized format modeled on star schema
US6785666B1 (en) * 2000-07-11 2004-08-31 Revenue Science, Inc. Method and system for parsing navigation information
US20030095145A1 (en) * 2001-10-30 2003-05-22 Jonathan Patrizio System and method for table row selection in a GUI display
US20040133583A1 (en) * 2002-11-20 2004-07-08 Tingey Kenneth B. system architecture and method for entering and accessing entity data in events accounting
US7103591B2 (en) * 2002-12-02 2006-09-05 International Business Machines Corporation Method of describing business and technology information for utilization
US7627587B2 (en) * 2003-09-25 2009-12-01 Unisys Corporation System and method for improving information retrieval from a database
KR100619016B1 (ko) * 2004-05-06 2006-08-31 삼성전자주식회사 광 기록 정보 저장 매체, 기록/재생 장치 및 호스트 장치
US7840607B2 (en) * 2004-08-06 2010-11-23 Siemens Aktiengesellschaft Data mart generation and use in association with an operations intelligence platform
US7580922B2 (en) * 2005-01-04 2009-08-25 International Business Machines Corporation Methods for relating data in healthcare databases
US7680781B1 (en) 2005-03-04 2010-03-16 Teradata Us, Inc. Automatic search query generation and results set management
US7590541B2 (en) * 2005-09-30 2009-09-15 Rockwell Automation Technologies, Inc. HMI presentation layer configuration system
US7650196B2 (en) * 2005-09-30 2010-01-19 Rockwell Automation Technologies, Inc. Production monitoring and control system having organizational structure-based presentation layer
US7464083B2 (en) * 2005-10-24 2008-12-09 Wolfgang Otter Combining multi-dimensional data sources using database operations
US20070185870A1 (en) 2006-01-27 2007-08-09 Hogue Andrew W Data object visualization using graphs
US8954426B2 (en) * 2006-02-17 2015-02-10 Google Inc. Query language
US8954412B1 (en) 2006-09-28 2015-02-10 Google Inc. Corroborating facts in electronic documents
CN100498793C (zh) * 2007-06-08 2009-06-10 北京神舟航天软件技术有限公司 用基于小波的压缩直方图实现二维谓词选择率估计的方法
US7702622B2 (en) 2007-06-29 2010-04-20 Microsoft Corporation Advanced techniques for SQL generation of performancepoint business rules
US8020144B2 (en) * 2007-06-29 2011-09-13 Microsoft Corporation Metadata-based application deployment
US8200604B2 (en) 2007-06-29 2012-06-12 Microsoft Corporation Multi-platform business calculation rule language and execution environment
US9785704B2 (en) * 2012-01-04 2017-10-10 Microsoft Technology Licensing, Llc Extracting query dimensions from search results

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440730A (en) * 1990-08-09 1995-08-08 Bell Communications Research, Inc. Time index access structure for temporal databases having concurrent multiple versions
JPH077422B2 (ja) * 1991-08-23 1995-01-30 インターナショナル・ビジネス・マシーンズ・コーポレイション コンピュータ処理データベース・システムにおけるジョインの実行方法及びシステム
JPH0756652B2 (ja) * 1992-03-24 1995-06-14 インターナショナル・ビジネス・マシーンズ・コーポレイション 動画像のフレーム列の検索
US5359724A (en) * 1992-03-30 1994-10-25 Arbor Software Corporation Method and apparatus for storing and retrieving multi-dimensional data in computer memory
US5572731A (en) * 1992-12-30 1996-11-05 Hewlett-Packard Company Sequentially navigated object oriented computer system
JP3266351B2 (ja) * 1993-01-20 2002-03-18 株式会社日立製作所 データベース管理システムおよび問合せの処理方法
US5713020A (en) * 1993-09-02 1998-01-27 Microsoft Corporation Method and system for generating database queries containing multiple levels of aggregation
WO1995019008A1 (en) * 1994-01-05 1995-07-13 Covey Peter J Dynamic-state, multi-dimensional, multi-media database
GB9417314D0 (en) * 1994-08-27 1994-10-19 Int Computers Ltd Method for performing joins in a database system
US5675785A (en) * 1994-10-04 1997-10-07 Hewlett-Packard Company Data warehouse which is accessed by a user using a schema of virtual tables
US5590324A (en) * 1995-02-07 1996-12-31 International Business Machines Corporation Optimization of SQL queries using universal quantifiers, set intersection, and max/min aggregation in the presence of nullable columns
US5745754A (en) * 1995-06-07 1998-04-28 International Business Machines Corporation Sub-agent for fulfilling requests of a web browser using an intelligent agent and providing a report
US5761652A (en) * 1996-03-20 1998-06-02 International Business Machines Corporation Constructing balanced multidimensional range-based bitmap indices
US5832475A (en) * 1996-03-29 1998-11-03 International Business Machines Corporation Database system and method employing data cube operator for group-by operations
US5974418A (en) * 1996-10-16 1999-10-26 Blinn; Arnold Database schema independence
US5897622A (en) * 1996-10-16 1999-04-27 Microsoft Corporation Electronic shopping and merchandising system
US5799300A (en) * 1996-12-12 1998-08-25 International Business Machines Corporations Method and system for performing range-sum queries on a data cube
US5937408A (en) * 1997-05-29 1999-08-10 Oracle Corporation Method, article of manufacture, and apparatus for generating a multi-dimensional record structure foundation

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101341464B (zh) * 2005-10-23 2010-05-26 谷歌公司 对结构化数据进行搜索的方法、系统以及使数据项结构化及可搜索的方法、系统
CN101866347B (zh) * 2005-10-23 2017-05-17 谷歌公司 对结构化数据进行搜索的方法、系统以及使数据项结构化及可搜索的方法、系统
CN102043866A (zh) * 2011-01-25 2011-05-04 苏州普达新信息技术有限公司 基于表单特征的松弛搜索与优化排序方法
CN102043866B (zh) * 2011-01-25 2013-03-13 苏州普达新信息技术有限公司 基于表单特征的松弛搜索与优化排序方法

Also Published As

Publication number Publication date
AU2473100A (en) 2000-05-29
DE69935657D1 (de) 2007-05-10
WO2000028439A1 (en) 2000-05-18
EP1049997B1 (en) 2007-03-28
BR9906714A (pt) 2000-10-17
ATE358297T1 (de) 2007-04-15
US6192357B1 (en) 2001-02-20
IL137127A0 (en) 2001-07-24
ZA200003317B (en) 2002-12-02
JP2004520633A (ja) 2004-07-08
EP1049997A4 (en) 2005-08-03
IL137127A (en) 2005-06-19
DE69935657T2 (de) 2007-12-13
EP1049997A1 (en) 2000-11-08
AU755859B2 (en) 2003-01-02
CA2325863A1 (en) 2000-05-18

Similar Documents

Publication Publication Date Title
CN1292125A (zh) 通过有选择地使用属性或关键字值优化查询生成的方法和装置
US6505189B1 (en) Aggregate join index for relational databases
US7171399B2 (en) Method for efficient query execution using dynamic queries in database environments
US7082435B1 (en) Method and mechanism for implementing and accessing virtual database table structures
EP0706140B1 (en) Intelligent data warehouse
US6366903B1 (en) Index and materialized view selection for a given workload
US6356892B1 (en) Efficient implementation of lightweight directory access protocol (LDAP) search queries with structured query language (SQL)
US6965891B1 (en) Method and mechanism for partition pruning
Tzouramanis et al. Overlapping linear quadtrees: a spatio-temporal access method
EP0875838B1 (en) Cardinality-based join ordering
US7844623B2 (en) Method to provide management of query output
US7010518B1 (en) System and method for user defined data object hierarchy
EP1738290A1 (en) Partial query caching
US20100138456A1 (en) System, method, and computer-readable medium for a locality-sensitive non-unique secondary index
WO2004107206A1 (en) A data processing method and system
US20070005574A1 (en) Distributed database systems and methods
US8126905B2 (en) System, method, and computer-readable medium for optimizing the performance of outer joins
US20050102271A1 (en) Indexes with embedded data
US20050138024A1 (en) Method and infrastructure for processing queries in a database
US20100268723A1 (en) Method of partitioning a search query to gather results beyond a search limit
Taniar et al. Parallel aggregate-join query processing
Theodoratos et al. Processing OLAP queries in hierarchically clustered databases
Wang et al. Dimension transform based efficient event filtering for symmetric publish/subscribe system
O’Mullane et al. IVOA SkyNode Interface Version 1.01
Tody TAP 1.0

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication