CN1292126A - 从相应数据填充稀疏矩阵项的方法和装置 - Google Patents

从相应数据填充稀疏矩阵项的方法和装置 Download PDF

Info

Publication number
CN1292126A
CN1292126A CN99803527A CN99803527A CN1292126A CN 1292126 A CN1292126 A CN 1292126A CN 99803527 A CN99803527 A CN 99803527A CN 99803527 A CN99803527 A CN 99803527A CN 1292126 A CN1292126 A CN 1292126A
Authority
CN
China
Prior art keywords
data
level
dimension
estimation
division
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
CN99803527A
Other languages
English (en)
Inventor
詹姆斯P·罗杰斯
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 CN1292126A publication Critical patent/CN1292126A/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/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • G06F16/24534Query rewriting; Transformation
    • G06F16/24539Query rewriting; Transformation using cached or materialised query results
    • 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/24542Plan optimisation
    • G06F16/24545Selectivity estimation or determination
    • 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/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24554Unary operations; Data partitioning operations
    • G06F16/24556Aggregation; Duplicate elimination
    • 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
    • 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
    • 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/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching 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/99931Database or file accessing
    • Y10S707/99939Privileged 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/99942Manipulating data structure, e.g. compression, compaction, compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Operations Research (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

提供一个系统,用于选择一个适当的被聚集的事实数据表(20),用作从一组存储的被聚集的事实数据表(22)中计算一个聚集请求的基础。建立为聚集每一表所需要的处理时间量的估计。然后使用具有最低估计的表执行聚集。

Description

从相应数据填充稀疏矩阵项的方法和装置
本发明涉及数据库,特别涉及要求时立即进行的数据聚集。
在数据仓库领域,某个组织的成员常常需要对大量数据以各种不同的概括级在各种存储的维数内概括或聚集。
数据库维数中的数据级是在该维数中的项的分组。例如,如果一个维数包括不同的商店,则这些商店可以按城市级、州级、或任何其它可想象的级分组。
不同的人在不同时间常常希望得到相同的概括数据。不是在每次需要聚集的数据时查询数据仓库中的数据并将其聚集,实际中经常是在各种通常查询的聚集级上预聚集数据,并把这些聚集的数据以所谓划分(partition)存储在数据库中便于检索。预聚集并以这种方式存储的级常常由系统管理员定义。当应用户请求执行另外的聚集时,这些也可以存储在划分中以便后来检索。
与这种划分数据存储相关的问题是,当请求尚未生成的以某一级聚集的数据时,必须使用详细级数据进行聚集,尽管这些数据可能实际存储在层次上临界的较低级上,很容易进一步聚集到所要求的级。如果与下一级的任何特定的成员相关的所有细目记录也与上一级的单一成员相关的话,则级在层次上互为上下级。例如,商店的城市级分组在层次上低于商店的州级分组,因为在一个特定城市中的所有商店也在一个特定的州中(假定没有横跨州界的城市)。然而,“商店大小”级通常不在州级的上或下,因为没有理由在商店大小和州之间有什么关系。
为克服必须经常重新分类细目级数据来执行新聚集的问题,经常的实践是为交集(intersection)定义虚拟划分,它实际不以特定级存储数据,而是提供一种以某一聚集级保存数据的外部形象,并提供一种从一个或者多个存储的较低级的物理划分聚集数据的功能。对于到哪一个物理划分数据供用于聚集,虚拟划分是预编程的。
然而,对于具有大量维数并在每一维数中有相当数目的级的系统,要能抑制必须定义的虚拟划分的数目,这既是从管理的观点也从检索/查询的观点。如果为跨越所有维数上的每一可能的级组(set oflevels)维持一个虚拟划分的话,则需要存储的虚拟划分的数目是在每一维数中的级的数目的乘积。例如,具有6个维数每一维数有5级和两个维数每一维数有7级的系统产生具有765625个元素的矩阵。
所需要的是这样一个系统,它允许服务器处理查询,以选择随时(on the fly)从其聚集数据的最佳划分而无需维护从其聚集数据的相当划分的数据库。
本发明提供一种方法,它使用在较低级已经产生的相同维数上的聚集产生到较高级的聚集。提供这样一种系统,它允许为,满足请求所存储的数据的各物理划分确定处理“成本”的度量。然后使用被确定为具有最小成本的划分执行聚集。可以把细目级数据归类为一个划分。否则,如果没有任何划分能够提供所需级上的数据,或者如果最低成本大于从该细目级数据执行聚集的成本的话,则使用该细目级数据执行聚集。
根据本发明的一个方面,把一个对象与每一个被存储的数据的所存储的聚集关联。该对象可以根据在一组维数中需要的级组查询。然后该对象使用一个表示聚集该数据所需要的处理量的报价响应这一查询,所述数据与所需要到达的级相关。请求对象将要求聚集对象返回执行该聚集的最低报价并返回相当的聚集数据。通过存储定义存储在一个适合的数据结构中的物理划分中的数据的元数据和查询该数据结构来确定使用哪一个划分执行该聚集,可以实现等效操作。
根据本发明的另一方面,对于每一所需维数通过把“距离”乘在一起计算返回的报价,这里,距离是在所需级中的项数对在该存储的级中的项数的比。
根据本发明的另一方面,通过计算在存储的数据中的估计的或实际的项数和在聚集的数据中将出现的估计的项数的差计算返回的报价。
图1表示根据本发明的第一实施例的应用服务器。
图2A表示一个维数层次结构的例子。
图2B以不同格式表示图2A的维数层次结构。
图3A和图3B表示在本发明的第一实施例的操作实例中的两个维数。
图4表示示于图3A和3B中的例示维数的级叉积。
图5表示本发明的第一实施例使用图3A和3B所示维数数据和图4所示划分对事实表上各种请求进行操作的结果。
以下参考图1和2说明本发明的一个特定实施例。
图1表示按照本发明的第一实施例的一个应用服务器10,它保持划分对象20,它们每一个表示数据库25的一个物理划分22。应用服务器10还保持一个数据提供对象40,它可以处理从划分对象20中存储的事实数据中获聚集的数据的请求。
下述信息可以为应用服务器10使用,它们由系统管理员为存储在该数据库中的每一维数定义:
a)在该维数中的级,
b)在该维数内的级层次结构30,
c)在每一级内的成员数(在一定时间估计的或确定的,例如当对维数表进行改变时),
d)每一级的定义属性。
各种物理数据划分22存储在数据库25中,而更多的将通过系统的操作产生,下面将会明白。物理划分基本上是一些表,它们在数据在其内表示的各维数中的指定的概括级上存储来自数据库的事实数据。给每一个与物理划分相关的划分对象20提供下面的数据:
a)存储在相关划分中的每一维数的级,
b)存储在表中的度量,
c)存储在表中的每一级的行(按照属性值)(例如东或西部区域,1995或1996年,等)。
在应用服务器10上装备数据提供对象40以接收对在一组维数中的指定级的交集处表示选择度量的数据的请求50。实际请求可能要求从几个交集返回数据,在该种场合,这里说明的处理将对每一交集执行。例如,包括商标和尺寸、月份和季度、以及地区的请求将要求下述交集:商标-月份-地区,尺寸-月份-地区,商标-季度-地区和尺寸-季度-地区。对于所需要的每一级的交集,数据提供对象40对每一划分对象20提交一个请求,作为参数给该划分对象传送要求。然后每一对象分析请求的数据(下面会详细说明)并返回表示为从与之相关的物理划分产生所要求的集合的处理成本的报价。如果某个划分不能满足该请求,则返回一个无限大的成本。
通过返回一个非常低的出价可以建立特殊的划分对象21来强迫某些交集请求使用预定的划分22。如果可以使用一定的优化,诸如特定索引方案,来增强一定级组的聚集到另一更高的级组的话,则这将是适宜的。
然后数据提供对象从划分对象收集所有报价并选择返回最低报价的对象执行聚集。然后数据提供对象40请求所涉及的对象执行聚集,该对象依次给数据库提交适合的查询以获得聚集的数据,然后返回聚集的表。
例如,假定有一个时间维数存储在以天、月和季度级的叫做“时间表”的表中,和一个分店维数存储在一个包括分店、行政区和地区级的叫做“分店”的表中。另外,假定每一维数表不只包括表示由该维数表示的项,而还包括表示在该维数中的每一级成员的项;每一项具有一个标识与所讨论的项相关的级成员的级的“级”字段。维数表中的这样一组字段简化了需要产生的查询,而可以建立下面的查询以便从具有存储在行政区-月份级的数据的表StoredTable中获得地区-季度级的数据。
SELECT Branches.Region AS Region,TimeTable.Quarter ASQuarter,
SUM(StoredTable.Sales) AS Sales FROM
StoredTable,Branches,TimeTable WHERE
StoredTable.Distric=Branches.District AND
StoredTable.Month=TimeTable.Month AND
Branches.Level=″District″AND
TimeTable.Level=″month″
GROUP BY Branches.Region,TimeTable.Quarter;
然后数据提供对象40返回该表作为原来请求的结果。服务器也可以建立另一划分22并将划分对象20与来自该表的数据关联,以便如果再次提出该请求,可以立即使用这些数据。此外,新产生的划分也可以用于聚集数据到更高级,如果请求这样做的话。
每一划分对象20使用的计算成本的算法如下。该划分对象,在接收到聚集请求的参数时,也从服务器得到为每一被调用的维数的维数级层次结构,图2A示出其中一例。对于每一维数,存储在该对象中的级和正被请求的级一起在该层次结构中被标识。在图2A所示例子中,正被请求的级是地区级100,而存储的级是城市级102。然后检查该维数层次结构看通过沿从被请求的存储的级的分支行进是否可以到达被请求的级。应该注意,该层次结构不必一定是树,因为不同分支可以在更高级重新连接到一起,如果不同的较低级都可以归类到同一更高级的话。例如,分配源级可以在层次结构上低于地区级,如在图2A中的点线所示,虽然该分配级不高于或低于州级,例如因为两个不同的分配源级可能分配给同一州的不同城市。
每一维的维层次结构可以表示为一个阵列,其存储的级作为一个阵列维,而被请求的级作为另一阵列维。如果被请求的级可以从存储的级中产生的话则标记一个项,如图2B所示。
如果存储的级在层次结构上低于被请求的级,则计算在这两级之间的“距离”的度量。两级之间的距离定义为在存储的级中的成员数目与在被请求的级中的成员数目的比。每一级中的成员数目示于图3A和3B。
如果存储的级在层次结构上不低于被请求的级的话,则为该维返回无穷大的距离,其依次导致要由该对象返回的一个无穷大成本,这一点十分明显。
一旦为所有维计算距离后,则将这些距离乘在一起以给出该对象的总报价。如果所存储的级不能被聚集到在任何特定维数中的被请求的级的话,则由该维返回的无穷大距离将导致由该对象返回的一个无穷大成本,因为在该乘法中的一个参数将是无穷大值。
可以看到,在这两级中的成员数目的比是该距离的一个合适的度量,而不是例如在这两级中的关键字数目之间的差,其理由如下。决定由每一划分需要的处理能力以满足该请求的关键数值是在该划分对象中的项数和在被聚集的表中的项数之间的差,因为每一次聚集操作将使项数减1。例如,被3个项聚集到一个项中将对存储的度量近似取两次聚集操作(例如加)。在该被聚集的表中的项的数目对所有报价对象是一个常数,因为它们都将返回同样的被聚集数据。因此,只有在该划分对象中的项数才对计算该聚集需要的近似处理时间有关。由于下述理由,该值与返回的比相关:
如果R1、R2、…、Rn是在被请求的n个维数中的关键字值的数目,而S1、S2、…、Sn是在所讨论的物理划分的维数中的关键字值的数目,则报价值的等式如下:
Figure 99803527000811
R1* R2*…Rn在所有场合是一个恒定值,所以:
Figure 99803527000821
所以返回的报价与该维数中存储的项的近似数目成正比,并相对于其它划分为执行该聚集的成本给出很好的估计。
为说明这一点,考虑被请求的划分具有两个维数。在这两个维数中的被请求的级的成员数分别是50和3。
一个物理划分在第一维数中的被存储级上存储有100个级成员,而在第二维数中的被存储级上存储有4个级成员。假定该划分相当密集地分布,则在该划分数据中近似有400个项需要被聚集到在被请求的划分中的近似150个项。返回的报价将是2.67。
另一物理分区在第一维数中的被存储级上存储有67个级成员,而在第二维数中的被存储级上存储有6个级成员。假定该划分相当密集地分布,则在该划分数据中也近似有400个项需要被聚集到在被请求的划分中的近似150个项中,所以聚集这一划分的处理能力将近似等于聚集另一分区所需要的处理能力。在这一场合返回的报价类似地为2.68,这是适当的,因为两个划分应该采取近似同样的处理能力来执行该聚集。
应该注意,这不与该聚集的绝对处理成本成正比,因为绝对成本近似地与(S1*S2*…Sn)-(R1*R2*…Rn)成正比,存储的项数和被请求的项数之间的差。例如,将400项聚集成199项的处理要比将200项聚集成同样199项的处理(其只需要一次聚集操作)需要多数十倍。但是在后一场合返回的报价将为两倍大。
显然在考虑进去该聚集算法中的已知模式、已知强度和在划分中的可能的稀疏程度时,报价算法可以受启发改变。
如果未指定与存储的数据相关的一个或者多个维数,则认为该请求为仿佛该维数在“所有数据”级被请求,“所有数据”级有一个成员,一个维数的所有项都与之相关。如果一个划分具有在该维数中较低级存储的数据,则为该维数返回的比将近似为在该存储级内的关键字值的数目(除以单位),于是该报价准确反应所需要的聚集的数量。
应该注意,不同的数据级可以存储在不同的数据库或不同的应用服务器自身中。给与每一划分25关联的划分对象提供如何轮询合适的数据库以便在任何特定级检索数据的知识。
现在参考图3到5给出报价系统操作的一例。在该例中,有两个维数,顾客和时期,它们包含图3A和3B中所示的级。有3个物理划分22存储在数据库25中。划分P1包含每日的顾客数据,P2包含每月城区数据,而P3包含每日地区数据。
有12个可以请求的可能的级交集。因为在这些交集中只有3个实际存在,因此说交集的矩阵是稀疏矩阵。这一矩阵在图4中表示。图4中的空元素指示必须“随时”产生的级交集。使用先前的技术,利用存储的划分,必须为每一可能的交集建立一项来指定使用哪一划分。必须建立虚拟划分来强迫服务器使用一定的物理划分。例如,交集3.3包括一个指示,说明系统管理员已建立一个虚拟划分来强迫该服务器在产生年-地区记录时使用物理划分P1。
使用本发明的方法,通过简单直接查询表示每一物理划分的对象和定义的任何虚拟划分,可以避免建立每一可能级交集的矩阵。
使用上述算法来为任何请求的交集决定要查询哪一个物理划分来满足该请求。这通过根据在每一级内的成员决定在每一维数内必须聚集多少成员来产生该被请求的交集而完成。图5为每一可能的级交集指示每一物理划分对象的报价是什么,以及给出这些报价后,指示需要查询哪一个划分来满足该请求的图。在该例中,虚拟划分对象V1通过返回为1的报价强迫物理划分P1,如果是请求年-地区记录的话。
根据本发明的第二实施例,不需要物理划分包含所表示的事实集中的所有数据。例如,一个物理划分可能只包含1997年在东部地区销售的所有产品,而另一个可能包含1997年在西部地区销售的所有产品。由于存储的效率,或者因为所进行的许多请求只要求西部地区或东部地区,对这些请求的结果只需分析合适地区的数据而无需来自其它地区的额外数据而可以更加高效地返回的原因而可以这样做。从内部表示或者从划分对象返回的数据给数据提供对象提供关于与某一级相关的哪一个级成员由每一划分存储的信息。如果在它们之间两个或者多个划分满足一个请求(例如,一个有东部地区的数据,另一个有西部地区的数据),它们都将返回同一报价,而数据提供对象将请求每一划分聚集其内的数据。然后数据提供对象组合所有这些对象返回的数据,并适当地输出这一数据。
尽管图示和说明了本发明的优选实施例,但是本技术领域具有普通技能的人理解,可以进行改变和修改而不离开本发明更广的范围。下面的权利要求叙述了本发明的各种特征。

Claims (6)

1.一个聚集数据的系统,包括:
在至少一个维中的多个级中的一级上作为事实数据表存储数据的设备;
提供为聚集每一事实数据表到在至少一个维中的一个被请求的级组所需要的处理量的估计的设备;
选择与用以执行聚集的最低估计相关的数据表的设备;以及
聚集与到被请求的级组的最低估计相关的数据表中的数据的设备。
2.根据权利要求1的聚集数据的系统,其中,所述提供估计的设备包括划分对象,每一划分对象包括与所述数据表之一有关的信息,并给每一划分对象提供响应对所述级组的数据请求返回一个报价的功能,该报价的值是被请求的级组和存储的级组的一个函数。
3.根据权利要求1的系统,其中,返回的估计与每一维中在存储的级中的成员数目与在被请求的级中的成员数目的比在所有被请求的维上的乘积成正比。
4.一种聚集数据的方法,包括步骤:
在至少一个维中的多个级中的一级上作为事实数据表存储数据;
提供为聚集每一事实数据表到在至少一个维中的一个被请求的级组所需要的处理量的估计;
选择返回用以执行聚集的最低估计的数据表对象;以及
聚集返回最低估计的数据表中的数据到被请求的级组。
5.根据权利要求4的方法,其中,所述提供估计的步骤包括发送对报价的请求到一个划分对象,所述划分对象包括与所述数据表之一有关的信息,包括其内存储的级组,以及给所述划分对象另外提供响应对所述级组的数据的请求返回一个报价的功能,所述报价的值是被请求的级组和存储的级组的一个函数。
6.根据权利要求5的系统,其中,返回的估计与每一维中在存储的级中的成员数目与在被请求的级中的成员数目的比在所有请求的维上的乘积成正比。
CN99803527A 1998-11-03 1999-11-03 从相应数据填充稀疏矩阵项的方法和装置 Pending CN1292126A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/185,366 1998-11-03
US09/185,366 US6212515B1 (en) 1998-11-03 1998-11-03 Method and apparatus for populating sparse matrix entries from corresponding data

Publications (1)

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

Family

ID=22680691

Family Applications (1)

Application Number Title Priority Date Filing Date
CN99803527A Pending CN1292126A (zh) 1998-11-03 1999-11-03 从相应数据填充稀疏矩阵项的方法和装置

Country Status (10)

Country Link
US (1) US6212515B1 (zh)
EP (1) EP1057130A4 (zh)
JP (1) JP2002529819A (zh)
CN (1) CN1292126A (zh)
AU (1) AU2473000A (zh)
BR (1) BR9906711A (zh)
CA (1) CA2325873A1 (zh)
IL (1) IL137126A (zh)
WO (1) WO2000026821A1 (zh)
ZA (1) ZA200003316B (zh)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6442554B1 (en) * 1999-01-29 2002-08-27 I2 Technologies Us, Inc. System and method for generating dependent data
US6356214B1 (en) 1999-02-02 2002-03-12 Cisco Technology, Inc. Fast look-up table based scheme for NRZI encoding/decoding and zero insertion/removal in serial bit streams
US6804714B1 (en) * 1999-04-16 2004-10-12 Oracle International Corporation Multidimensional repositories for problem discovery and capacity planning of database applications
US6408292B1 (en) * 1999-08-04 2002-06-18 Hyperroll, Israel, Ltd. Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions
US6385604B1 (en) * 1999-08-04 2002-05-07 Hyperroll, Israel Limited Relational database management system having integrated non-relational multi-dimensional data store of aggregated data elements
US6484179B1 (en) 1999-10-25 2002-11-19 Oracle Corporation Storing multidimensional data in a relational database management system
WO2001052109A1 (en) * 2000-01-13 2001-07-19 Stanley Benjamin Smith Process and system for gathering and handling information
US20020029207A1 (en) * 2000-02-28 2002-03-07 Hyperroll, Inc. Data aggregation server for managing a multi-dimensional database and database management system having data aggregation server integrated therein
EP1134671A1 (en) * 2000-03-16 2001-09-19 Oracle Corporation Query generator
US6662174B2 (en) * 2000-04-17 2003-12-09 Brio Software, Inc. Analytical server including metrics engine
US7072897B2 (en) * 2000-04-27 2006-07-04 Hyperion Solutions Corporation Non-additive measures and metric calculation
US7080090B2 (en) * 2000-04-27 2006-07-18 Hyperion Solutions Corporation Allocation measures and metric calculations in star schema multi-dimensional data warehouse
US6941311B2 (en) * 2000-04-27 2005-09-06 Hyperion Solutions Corporation Aggregate navigation system
US6748394B2 (en) 2000-04-27 2004-06-08 Hyperion Solutions Corporation Graphical user interface for relational database
US7167859B2 (en) * 2000-04-27 2007-01-23 Hyperion Solutions Corporation Database security
US6732115B2 (en) 2000-04-27 2004-05-04 Hyperion Solutions Corporation Chameleon measure and metric calculation
US6915289B1 (en) 2000-05-04 2005-07-05 International Business Machines Corporation Using an index to access a subject multi-dimensional database
US7269786B1 (en) 2000-05-04 2007-09-11 International Business Machines Corporation Navigating an index to access a subject multi-dimensional database
US20010044796A1 (en) * 2000-05-19 2001-11-22 Hiroyasu Fujiwara Totalization system and recording medium
JP2002024286A (ja) * 2000-06-30 2002-01-25 Hitachi Ltd データ表示方法および装置並びにその処理プログラムを記録した記録媒体
WO2003107219A1 (en) * 2000-09-11 2003-12-24 Zambeel, Inc. Storage system having partitioned migratable metadata
US6931418B1 (en) 2001-03-26 2005-08-16 Steven M. Barnes Method and system for partial-order analysis of multi-dimensional data
US6964833B2 (en) * 2002-05-31 2005-11-15 Samsung Electronics Co., Ltd. Linked dihydrazone-based charge transport compounds
US7472127B2 (en) * 2002-12-18 2008-12-30 International Business Machines Corporation Methods to identify related data in a multidimensional database
US8572221B2 (en) 2004-05-26 2013-10-29 Facebook, Inc. System and method for managing an online social network
US7383159B1 (en) 2005-12-13 2008-06-03 Teradata Us, Inc. Reusable measures
US9609050B2 (en) 2013-01-31 2017-03-28 Facebook, Inc. Multi-level data staging for low latency data access
US10223431B2 (en) * 2013-01-31 2019-03-05 Facebook, Inc. Data stream splitting for low-latency data access
US10061747B2 (en) 2014-05-07 2018-08-28 Seagate Technology Llc Storage of a matrix on a storage compute device
US11580105B2 (en) 2018-10-31 2023-02-14 Anaplan, Inc. Method and system for implementing subscription barriers in a distributed computation system
US11481378B1 (en) 2018-10-31 2022-10-25 Anaplan, Inc. Method and system for servicing query requests using document-based metadata
US11354324B1 (en) 2018-10-31 2022-06-07 Anaplan, Inc. Method and system for servicing query requests using revisions maps
US11281683B1 (en) 2018-10-31 2022-03-22 Anaplan, Inc. Distributed computation system for servicing queries using revisions maps
US11475003B1 (en) * 2018-10-31 2022-10-18 Anaplan, Inc. Method and system for servicing query requests using dataspaces

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2583010B2 (ja) 1993-01-07 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 多層インデックス構造におけるローカルインデックステーブル及び大域インデックステーブルの間の一貫性を維持する方法
US5713020A (en) * 1993-09-02 1998-01-27 Microsoft Corporation Method and system for generating database queries containing multiple levels of aggregation
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
JP2977476B2 (ja) * 1995-11-29 1999-11-15 株式会社日立製作所 機密保護方法
US5710915A (en) 1995-12-21 1998-01-20 Electronic Data Systems Corporation Method for accelerating access to a database clustered partitioning
US5761652A (en) * 1996-03-20 1998-06-02 International Business Machines Corporation Constructing balanced multidimensional range-based bitmap indices
US5835712A (en) * 1996-05-03 1998-11-10 Webmate Technologies, Inc. Client-server system using embedded hypertext tags for application and database development
US5974418A (en) * 1996-10-16 1999-10-26 Blinn; Arnold Database schema independence
US5765147A (en) 1996-11-21 1998-06-09 International Business Machines Corportion Query rewrite for extended search capabilities
US5799300A (en) * 1996-12-12 1998-08-25 International Business Machines Corporations Method and system for performing range-sum queries on a data cube
US5822751A (en) * 1996-12-16 1998-10-13 Microsoft Corporation Efficient multidimensional data aggregation operator implementation
US5978788A (en) * 1997-04-14 1999-11-02 International Business Machines Corporation System and method for generating multi-representations of a data cube
US5940818A (en) * 1997-06-30 1999-08-17 International Business Machines Corporation Attribute-based access for multi-dimensional databases
US5978796A (en) * 1997-06-30 1999-11-02 International Business Machines Corporation Accessing multi-dimensional data by mapping dense data blocks to rows in a relational database
US5999924A (en) * 1997-07-25 1999-12-07 Amazon.Com, Inc. Method and apparatus for producing sequenced queries
US6003036A (en) * 1998-02-12 1999-12-14 Martin; Michael W. Interval-partitioning method for multidimensional data
US5991754A (en) * 1998-12-28 1999-11-23 Oracle Corporation Rewriting a query in terms of a summary based on aggregate computability and canonical format, and when a dimension table is on the child side of an outer join

Also Published As

Publication number Publication date
ZA200003316B (en) 2001-05-16
WO2000026821A1 (en) 2000-05-11
AU2473000A (en) 2000-05-22
US6212515B1 (en) 2001-04-03
BR9906711A (pt) 2000-10-17
IL137126A0 (en) 2001-07-24
EP1057130A4 (en) 2006-05-24
JP2002529819A (ja) 2002-09-10
EP1057130A1 (en) 2000-12-06
IL137126A (en) 2005-12-18
CA2325873A1 (en) 2000-05-11

Similar Documents

Publication Publication Date Title
CN1292126A (zh) 从相应数据填充稀疏矩阵项的方法和装置
US6442560B1 (en) Record for multidimensional databases
US20230084389A1 (en) System and method for providing bottom-up aggregation in a multidimensional database environment
Harinarayan et al. Implementing data cubes efficiently
US10127278B2 (en) Processing database queries using format conversion
US7761407B1 (en) Use of primary and secondary indexes to facilitate aggregation of records of an OLAP data cube
US6477536B1 (en) Virtual cubes
CN105683956B (zh) 密集分组的维度数据
Goil et al. High performance OLAP and data mining on parallel computers
AU779250B2 (en) Method and apparatus for populating multiple data marts in a single aggregation process
US5511190A (en) Hash-based database grouping system and method
US6408292B1 (en) Method of and system for managing multi-dimensional databases using modular-arithmetic based address data mapping processes on integer-encoded business dimensions
US7774302B2 (en) Online analytical processing (OLAP)
Datta et al. A case for parallelism in data warehousing and OLAP
US20100057777A1 (en) Systems and methods for generating multi-population statistical measures using middleware
CN109952569A (zh) 用于基于字典的连接和聚合的技术
US9146948B2 (en) Hilbert ordering of multidimensional tuples within computing systems
US20050076045A1 (en) Method and system for handling multiple dimensions in relational databases
WO2008063355A1 (en) Compression of multidimensional datasets
US7328206B2 (en) Extensions for adding and removing calculated members in a multidimensional database
EP1450274A2 (en) Dimension-based partitioned cube
US7412494B2 (en) Merging partial query results into a single result
US7836052B2 (en) Selection of attribute combination aggregations
CN101036140A (zh) 产生分析数据结构的自定义等级体系的系统和方法
US20030200220A1 (en) Method, system, and program product for the implementation of an attributegroup to aggregate the predefined attributes for an information entity within a content management system

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