CN102667774B - 当从报告规范生成olap查询时补偿不平衡层级 - Google Patents
当从报告规范生成olap查询时补偿不平衡层级 Download PDFInfo
- Publication number
- CN102667774B CN102667774B CN201080054477.8A CN201080054477A CN102667774B CN 102667774 B CN102667774 B CN 102667774B CN 201080054477 A CN201080054477 A CN 201080054477A CN 102667774 B CN102667774 B CN 102667774B
- Authority
- CN
- China
- Prior art keywords
- level
- reporting obligations
- olap
- olap query
- detail
- 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.)
- Active
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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- 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
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
-
- 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/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/288—Entity relationship models
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了用于针对立方体生成联机分析处理(OLAP)查询的***、方法及制品。立方体可以具有维度,每个维度具有成员的层级。可以针对该立方体的层级接收报告规范。可以从报告规范生成OLAP查询。OLAP查询可以包括在层级的详细级别处不具有任何后代的经计划的成员,因此生成更准确结果。
Description
技术领域
本发明的一些实施方式涉及基于计算机的多维度数据建模。更具体而言,本发明的一些实施方式涉及生成针对联机分析处理(OLAP)***的查询。
背景技术
现今许多公司将大量数据储存在联机事务处理(OLTP)***及其他数据库中。例如,数据可以包括诸如销售、产品和金融数据之类的业务数据。决策者频繁依赖于这类数据做出业务决策。
然而,不同于通常获取业务事务数据的OLTP***,联机分析处理(OLAP)***在聚合级别(level)分析事务数据以进一步通知决策。例如,业务分析师可以解读跨OLAP***的各种业务维度而聚合的数据。在各种情形下,业务分析师可以浏览来自OLAP***的数据。例如,业务分析师可以按产品、按消费者、按时间查看销售,按制造厂商、按时间查看缺陷,等等。
一般而言,OLAP允许多维度的数据分析。即,OLAP按“视图”或“维度”的形式提供数据,该“视图”或“维度”被组织成反映数据的多维度本质。OLAP***通常包括如下数据模型,该数据模型允许业务分析师在多个聚合级别(也被称为级别)跨越多个视角来进行交互式探索数据。用于OLAP***的逐渐流行的数据模型为数据立方体(或简称为立方体)。OLAP***可储存许多立方体。每个立方体包括维度集合(例如时间、地理、产品,等等)。维度通常包括许多级别,并且该级别通常为层级式(例如,用于时间维度的月份、季度和年份;用于地理维度的城市、省份及国家;等等)。
发明内容
本发明的一个实施方式包括一种方法。该方法可以包括配置一个或多个计算机处理器执行用于针对立方体生成联机分析处理(OLAP)查询的操作。立方体可以具有多个维度,并且每个维度可以包括成员层级(hierarchy)。该操作一般可以包括:针对立方体的层级接收报告规范;以及识别层级的多个成员的第一集合。第一集合可以包括由报告规范计划的在层级的详细级别处具有后代(descendant)的成员。该方法还可以包括识别多个成员的不同于第一集合的第二集合。该第二集合可以包括由报告规范计划的在层级的该详细级别处不具有任何后代的成员;以及从报告规范生成OLAP查询,其中OLAP查询通过执行联集运算而将层级的第一成员集合与层级的该第二成员集合连接。
优选地,本发明提供一种方法,其中该操作进一步包括:执行OLAP查询以响应于报告规范生成结果。
优选地,本发明提供一种方法,其中该报告规范不计划层级的详细级别,但是计划层级的除详细级别之外的至少一个级别。
优选地,本发明提供一种方法,其中该报告规范包括过滤器,并且其中OLAP查询将该过滤器应用于在详细级别处的第一集合。
优选地,本发明提供一种方法,其中该报告规范包括过滤器,并且其中OLAP查询将该过滤器应用于在除详细级别之外的级别处的第二集合。
优选地,本发明提供一种方法,其中层级为不平衡层级。
优选地,本发明提供一种方法,其中层级为粗糙的平衡层级,该粗糙的平衡层级基于由报告规范计划的层级的最低级别而显现为不平衡。
本发明的另一个实施方式包括一种具有一个或多个计算机处理器和包含程序的存储器的***,当该程序被该一个或多个处理器执行时,该***配置成执行用于针对立方体生成联机分析处理(OLAP)查询的操作。立方体可以具有多个维度,并且每个维度可以包括成员层级。操作一般可以包括:针对立方体的层级接收报告规范;识别层级的多个成员的第一集合,其中第一集合包括由报告规范计划的在层级的详细级别处具有后代的成员;识别多个成员的不同于第一集合的第二集合,其中第二集合包括由该报告规范计划的在层级的详细级别处的不具有任何后代的成员;以及从报告规范生成OLAP查询,其中OLAP查询通过联集运算而将层级的第一成员集合与层级的第二成员集合连接。
优选地,本发明提供一种***,其中该操作进一步包括:执行OLAP查询以响应于报告规范生成结果。
优选地,本发明提供一种***,其中该报告规范不计划层级的详细级别,但是计划层级的除了该详细级别之外的至少一个级别。
优选地,本发明提供一种***,其中该报告规范包括过滤器,并且其中OLAP查询将该过滤器应用于详细级别处的第一集合。
优选地,本发明提供一种***,其中该报告规范包括过滤器,并且其中OLAP查询将该过滤器应用于除该详细级别之外的级别处的第二集合。
优选地,本发明提供一种***,其中该层级为不平衡的层级。
优选地,本发明提供一种***,其中该层级为粗糙的平衡层级,该粗糙的平衡层级基于由该报告规范计划的层级的最低级别而显现为不平衡。
本发明的又一个实施方式包括一种***,该***具有包含程序的计算机可读存储介质,当在处理器上执行该程序时,该程序执行用于针对立方体生成联机分析处理(OLAP)查询的操作。该立方体可以具有多个维度,并且每个维度可以包括成员层级。该操作一般可以包括:针对该立方体的层级接收报告规范;识别该层级的多个成员的第一集合,其中该第一集合包括由该报告规范计划的具有在层级的详细级别处后代的成员;识别多个成员的不同于第一集合的第二集合,其中该第二集合包括由该报告规范计划的在层级的详细级别处不具有任何后代的成员;以及从该报告规范生成OLAP查询,其中OLAP查询通过联集运算而将该层级的第一成员集合与层级的第二成员集合连接。
优选地,本发明提供一种包含程序的计算机可读存储介质,当在处理器上执行该程序时,该程序执行用于针对立方体生成联机分析处理(OLAP)查询的操作。该立方体可以具有多个维度,并且每个维度可以包括成员层级。其中该操作以包括:针对该立方体的层级接收报告规范;识别该层级的多个成员的第一集合,其中该第一集合包括由该报告规范计划的在层级的详细级别处具有后代的成员;识别多个成员的不同于第一集合的第二集合,其中该第二集合包括由该报告规范计划的在层级的详细级别处不具有任何后代的成员;以及从该报告规范生成OLAP查询,其中OLAP查询通过联集运算而将该层级的第一成员集合与层级的第二成员集合连接。
优选地,本发明提供一种计算机可读存储介质,其中该操作进一步包括:执行该OLAP查询以响应于该报告规范生成结果。
优选地,本发明提供一种计算机可读存储介质,其中该报告规范不计划该层级的该详细级别,但计划该层级的除该详细级别之外的至少一个级别。
优选地,本发明提供一种计算机可读存储介质,其中该报告规范包括过滤器,并且其中该OLAP查询将该过滤器应用于该详细级别处的该第一集合。
优选地,本发明提供一种计算机可读存储介质,其中该报告规范包括过滤器,并且其中该OLAP查询将该过滤器应用于除该详细级别之外的级别处的第二集合。
优选地,本发明提供一种计算机可读存储介质,其中该层级为不平衡层级。
优选地,本发明提供一种计算机可读存储介质,其中该层级为粗糙的平衡层级,该粗糙的平衡层级基于由该报告规范计划的该层级的最低级别而显现为不平衡。
附图说明
现在将参考所附附图仅通过示例的方式来描述本发明的一些实施方式,其中:
然而应该注意,所附附图仅示出本发明的典型实施方式,并且因此不被认为对其范围进行限制,因为本发明可以允许其他等同有效实施方式。
图1为根据本发明的一个实施方式的示出用于从报告规范生成OLAP查询的***的框图;
图2示出了根据本发明的一个实施方式的立方体的地理维度的层级;
图3为根据本发明的一个实施方式的显示层级的成员的数量值的表300;
图4为根据本发明的一个实施方式显示满足报告规范的国家和省份的数量值的表;
图5为根据本发明的一个实施方式的描绘用于从报告规范生成OLAP查询的方法的流程图;
图6为根据本发明的一个实施方式的、描绘用于确定在将报告规范转换为OLAP查询时是否应该执行补偿的方法的流程图;
图7示出了根据本发明的一个实施方式的从报告规范利用补偿转换而成的OLAP查询;以及
图8示出了根据本发明的一个实施方式的OLAP查询的示例。
具体实施方式
本发明的一些实施方式总体上提供用于从报告规范生成OLAP查询的技术。本发明的一个实施方式提供与OLAP***交互的应用。该应用可以补偿如何组织OLAP***中的数据,以生成报告规范的更准确结果。
在一个实施方式中,应用可以针对OLAP***中的立方体的维度层级接收报告规范。应用可以确定维度层级和/或报告规范是否展现很可能产生不完整和/或不准确结果的某些特性。具体而言,应用可以识别构成报告规范的不平衡维度层级。在这类情形下,应用可以在通过报告规范生成OLAP查询时补偿这些特性(即,防止不完整或不准确结果)。具体而言,应用可以在执行任何OLAP查询之前补偿该特性。通过在执行OLAP查询之前(而非之后)进行补偿,应用可以更容易区分:(i)针对无法满足报告规范格式中的过滤器而被正确地排除的成员;以及(ii)因层级的结构而被不正确地排除的成员。另外,应用可以仅在应用认为必要(基于报告规范和/或层级)时才执行补偿,从而减少由补偿产生的处理开销。
OLAP***通常跨在各种级别处的各种维度聚合数据,以在不同聚合级别提供该数据的不同视图。基于业务类型和组织,可以按地理、按团队和按产品在各种时段内聚合数据。聚合数据通常被称为聚合。例如,聚合可以为指定产品的七月份的销售数据。片段通常包括来自至少维度子集的级别,并且聚合通常与片段相关联。
另外,立方体的每个维度包括许多成员。维度的成员可以根据维度的级别组织为层级。例如,立方体可以包括地理维度,该地理维度具有表示各种地理位置(例如,加拿大、法国,等等)的成员。表示渥太华的成员(存在于地理维度的层级的城市级别处)可以布置于层级中作为表示安大略的成员(存在于层级的省份级别处)的子代成员。类似地,表示安大略的成员继而可以在层级中布置作为表示加拿大的成员(存在于层级的国家级别处)的子代成员。
立方体还可以包括测量,即,沿着立方体的维度层级所聚合的度量。例如,立方体可以包括在各种时段内的各种产品的总销售测量。类似地,立方体还可以包括平均销售测量。用户可以通过识别每个维度中的成员和测量来查询立方体的个别单元。
一般而言,业务分析师发布OLAP查询以获取数据,并且可以请求在各种级别处的聚合。如果聚合不可用,则OLAP***可以实时计算聚合。因为计算聚合以是耗时的,所以各种OLAP***储存经计划算的聚合以更有效地处理OLAP查询。
通常由OLAP***支持的操作的示例包括跨经由层级的维度或跨成员所应用的计算和建模、在连续时段内的趋势分析、对数据的屏幕上浏览的片段子集、向下挖取(drill-down)至数据的较深的合并级别、透过至底层详细数据,以及旋转至与数据相关联的浏览区域中的新维度比较。OLAP***的示例为从纽约阿芒克的国际商业机器公司可获得的InfoSphereTM Warehouse Cubing Service。
在处理OLAP查询中,(OLAP***的)OLAP服务器可以从驻留在OLAP***的立方体外部的数据导出立方体中的单元的值。例如,数据可以驻留于底层(关系型)数据库中。为了生成单元值,OLAP服务器可以分析单元以确定哪个测量和来自其他维度的哪些成员与该单元相关联。另外,如果单元值不可用(即,尚未被计划算,或相对于底层数据过时),则OLAP服务器可以生成关系型数据库查询以从数据库确定单元值。关系型数据库查询可以聚合与维度准则匹配的数据库行(例如,与单元的产品和时段相关联的行)。用于OLAP***的查询语言的示例为来自华盛顿Redmond的公司的多维度表达式。用于关系型数据库的查询语言的示例为结构化查询语言(SQL)。例如,在针对立方体处理MDX查询中,OLAP服务器可从维度成员并且根据从与立方体的单元相关联的测量生成SQL查询。结果,关系型数据库仅聚合与该单元有关的数据(例如,基于SQL语句的WHERE子句中的约束),并且将经聚合的数据返回至OLAP服务器。一般而言,OLAP查询可以获取在多个聚合级别处的数据,并且在一个实施方式中,针对OLAP查询进行的或在OLAP查询中包含的经聚合的数据引用的每一不同级别生成一个SQL查询。
另外,OLAP***可以与其他应用交互以向用户提供用于分析和报告数据的附加功能性。这类应用的示例包括和Business ObjectsTM。这些应用可以向用户提供用于分析数据并且构建报告的多种工具。例如,这些应用可以从用户接收报告规范。这类应用可以将报告规范转换为对底层数据源的一个或多个查询。例如,应用可以将报告规范转换为一个或多个OLAP查询。然而,在一些情形下,基于如何结构化维度层级,关于维度层级的报告规范可以产生不完整和/或不准确的结果。
虽然本文中可以参考与OLAP***交互的应用来描述实施方式,但是广泛地构思了其他一些实施方式。例如,在一个实施方式中,OLAP***自身使用本文中所描述的技术来通过报告规范生成OLAP查询。
在下文中,参考本发明的一些实施方式。然而,应理解,本发明不限于特定描述的实施方式。取而代之,构思了以下特征和元件(不论是否与不同实施方式相关)的任何组合以实施和实践本发明。此外,尽管本发明的一些实施方式可以获得优于其他可能解决方案和/或优于现有技术的优点,但是是否通过给定实施方式来获得特定优点并不限制本发明。因此,以下方面、特征、实施方式和优点仅为说明性的,而不被认为是所附权利要求范围的元素或限制,除非在权利要求书中明确地叙述。类似地,对“本发明”的参考不应被认为是对本文所公开的任何发明主题的概括,并且不应被认为是所附权利要求书的元素或限制,除非在权利要求书中明确地叙述。
本发明的一个实施方式实现为一种用于计算机***一同使用的程序产品。该程序产品的程序定义实施方式的功能(包括本文中所描述的方法),并且可以包括在多种计算机可读储存介质上。说明性计算机可读储存介质包括但不限于:(i)在其上永久地储存信息的非可写储存介质(例如,计算机内的只读存储器设备,诸如,可以通过CD-ROM驱动器读取的CD-ROM磁盘);(ii)在其上储存可改动信息的可写储存介质(例如,软盘驱动器或硬盘驱动器内的软盘)。这类计算机可读储存介质在承载指导本发明的功能的计算机可读指令时为本发明的一些实施方式。其他介质包括将信息传送至计算机(诸如,经由计算机或电话网络(包括无线通信网路))所经由的通信介质。后一实施方式具体地包括将信息传输至因特网和其他网络/从因特网和其他网络传输信息。这类通信介质在承载指导本发明的功能的计算机可读指令时为本发明的一些实施方式。厂泛地,在本文中可以将计算机可读储存介质和通信介质称为计算机可读介质。
一般而言,执行以实现本发明的一些实施方式的例程可以是操作***或特定应用、组件、程序、模块、对象或指令序列的一部分。本发明的计算机程序通常包括将由本地计算机转译为机器可读格式并且因此转译成可执行指令的众多指令。此外,程序包括本地驻留于该程序或在存储器中或在储存设备上找到的变量及数据结构。此外,可以基于在本发明的特定实施方式中实现的应用来识别下文中所描述的各种程序。然而,应了解,仅出于方便而使用以下任何特定程序术语,并且因此,本发明不应限于仅在通过此术语识别和/或暗示的任何特定应用中使用。
图1为根据本发明的一个实施方式的示出用于从报告规范生成OLAP查询的***100的框图。联网***100包括计算机102。计算机102可以经由网络130而连接至其他计算机。一般而言,网络130可以为电信网络和/或广域网(WAN)。在一个特定实施方式中,网络130为因特网。
计算机102通常包括处理器104,该处理器104系经由总线112而连接至存储器106、网络接口110、储存108、输入设备114及输出设备116。计算机102一般由操作***控制。操作***的示例包括UNIX、Microsoft操作***的版本,以及操作***的分发版本。(注释:Linux为Linus Torvalds在美国和其他国家的商标)。更一般而言,可以使用在本文中所公开的功能的任何操作***。包括处理器104以表示单一CPU、多个CPU、具有多个处理核的单一CPU,和类似者。类似地,存储器106可以为随机存取存储器。虽然存储器106显示为单一实体,但是应理解存储器106可以包括多个模块,并且存储器106可以存在于从高速缓存器和高速缓存至较低速但较大的DRAM芯片的多个级别处。网络接口设备110可以为允许计算机102经由网络130与其他计算机通信的任何类型网络通信设备。
储存108可以为硬盘驱动器储存装置。尽管储存108显示为单一单元,但是储存108可以为固定储存装置和/或可移除式储存装置(诸如,固定磁盘驱动器、软盘驱动器、磁带驱动器、可移除式记忆卡,或光学储存)的组合。存储器106和储存108可以为跨多个主要储存装置和辅助储存装置的一个虚拟地址空间的一部分。
输入设备114可以为用于将输入提供至计算机102的任何装置。例如,可以使用键盘、小键盘、光笔、触控式屏幕、轨迹球或语音辨识单元、音频/视频播放器,及其类似者。输出设备116可以为用于向计算机102提供输出的用户的任何设备。例如,输出设备116可以为任何常规显示屏幕或扬声器集合及其相应接口卡(即,视频卡及声卡)。尽管输出设备116显示为与输入设备114分开,但是可以将输出设备116与输入设备114组合。例如,可以使用具有集成的触控式屏幕的显示屏幕、具有集成的键盘的显示器,或与文本语音转换器组合的语音识别单元。
如所示,计算机102的存储器106包括OLAP服务器148、应用150、报告规范152、OLAP查询154和来自执行OLAP查询154的结果156。计算机102的储存108包括立方体158和数据160。
在一个实施方式中,OLAP服务器可以为软件应用,其概括大量详细数据以提供对经概括的数据(以立方体158的形式)的存取。详细数据(或简称为数据160)可以储存于关系型数据库中。OLAP服务器148可以从数据160生成立方体158,并且将立方体158储存于维度数据储存器中。另外,OLAP服务器148可以通过查询关系型数据库来计划算立方体158的一个或多个单元。经计划算的单元可以储存于立方体158中。在一个实施方式中,数据160和立方体158可以储存于关系型数据库中。
在一个实施方式中,应用150与OLAP服务器148交互以向用户提供用于分析和报告数据的附加功能性。例如,应用150可以基于报告规范152而建立针对用户的报告。可以比OLAP查询148更简单地建立报告规范152。即,具有比构建OLAP查询148通常所需的技术知识更少的技术知识的用户可能仍然能够建立报告规范152。可以以报告语言来书写报告规范152,该报告语言向用户隐藏OLAP查询语言(例如,MDX)的复杂性。
在一个实施方式中,应用150将报告规范152转换为OLAP查询154。如果存在立方体158的维度层级的(和/或报告规范的)特定特性,则OLAP查询154可以获取不准确和/或不完整的结果。例如,如果(i)OLAP查询154包括在维度层级的详细级别处的过滤器,并且(ii)维度层级为以下两者之一(A)不平衡或(B)为平衡,但是出于报告的目的而显现为不平衡(即,通过报告规范计划的最低级别显现不平衡),则该过滤器可以(从查询154的结果)不正确地排除在详细级别处的不具有后代的维度层级的成员。因而,应用150可以在将报告规范152转换为OLAP查询154时检测和补偿该特性。因此,应用150可以生成获取更准确和/或完整的结果的OLAP查询154。
一般而言,如果存在至少一个如下成员(i)不在层级的最低(即,最底)级别处并且(ii)不具有子代,则可以认为层级是“不平衡”的。换言之,如果层级包括不在层级的最低级别处的至少一个叶成员,则层级是不平衡的。另外,如果层级包括跳过级别的至少一对父子关系,则层级是“粗糙”(ragged)的。换言之,如果至少一个成员在除了紧接在其下方的级别之外的级别处具有子代,则层级是粗糙的。另外,如果存在不在由层级的报告规范152指定的部分的最低(即,最底)级别处的至少一个成员,则粗糙的平衡层级出于报告的目的而可能仍然不平衡。
为了示出平衡层级、不平衡层级和粗糙层级的概念,图2示出了根据本发明的一个实施方式的图1的立方体的维度的层级200。在该示例中,立方体表示立方体数据集合的地理维度的层级。假设该立方体还可以具有时间和产品的维度。还应注意,尽管被称为立方体,但OLAP立方体的维度本质可以扩展至N个维度。如所示,层级200包括十四个成员。示例而言,十四个成员包括:地理202、加拿大210、法国212、卢森堡大公国214、梵蒂冈216、安大略218、魁北克220、诺曼底222、巴黎大区224、渥太华226、蒙特利尔228、鲁昂230、巴黎232和卢森堡234。另外,地理202驻留于层级200的第一级别(表示所有地理位置)处。加拿大210、法国212、卢森堡大公国214和梵蒂冈216驻留于表示国家204的第二级别处。安大略218、魁北克220、诺曼底222和巴黎大区224驻留于表示省份206的第三级别处。渥太华226、蒙特利尔228、鲁昂230、巴黎232和卢森堡234驻留于表示城市208的第四级别处。
如层级200中所示,地理202的子代成员包括加拿大210、法国212、卢森堡大公国214和梵蒂冈216。类似地,加拿大210的子代成员包括安大略218和魁北克220。法国212的子代成员包括诺曼底222和巴黎大区224。卢森堡大公国的子代成员为卢森堡234。安大略218的子代成员为渥太华226。魁北克220的子代成员为蒙特利尔228。诺曼底222的子代成员为鲁昂230。巴黎大区224的子代成员为巴黎232。
如上所述,如果存在不在层级的最低级别处的至少一个叶成员,则层级不平衡。例如,层级200的梵蒂冈216为不在层级的最低级别(即,城市208)处的叶成员。因此,层级200不平衡。然而,如果不由于梵蒂冈216,则层级200将平衡。
如上所述,如果至少一个成员在除了紧接在其下方的级别之外的级别处具有子代,则层级粗糙。例如,卢森堡大公国214(在国家204级别处)具有在表示城市208的级别处的子代卢森堡。换言之,卢森堡大公国214与卢森堡234之间的父子关系跳过表示省份206的级别。因此,层级200为粗糙。然而,如果不由于此父子关系,则层级200将并非粗糙。另外,如果存在不在层级的由报告规范152指定层级的部分的最低(即,最底)级别处的至少一个成员,则粗糙的平衡层级可以出于报告的目的而可能仍然不平衡。例如,如果报告规范可以指示仅国家204和省份206将被包括于结果156中。如果在国家204处的至少一个成员为叶成员(并且因此在省份206级别处不具有子代),则出于报告的目的而将平衡层级称为的不平衡的。
在一个实施方式中,应用150将层级200的报告规范152转换为OLAP查询154。然而,如果存在层级200的特定特性,则OLAP查询152可以产生不准确和/或不完整的结果156。例如,特定特性可如下:(i)OLAP查询154包括在维度层级的详细级别处的过滤器;以及(ii)维度层级(A)不平衡或(B)平衡,但是出于报告的目的而显现为不平衡(即,由报告规范计划的最低级别显现为不平衡)。例如,假定报告规范152询问具有满足特定条件的数量值的所有国家和省份的列表。图3为根据本发明的一个实施方式的显示图2的层级200的成员的数量值的表300。如图所示,表300包括国家字段302、省份字段304、城市字段306以及数量字段308。表300指示渥太华226具有为10,020的数量。另外,蒙特利尔228具有为24,300的数量。另外,鲁昂具有为5,100的数量。另外,巴黎具有为35,300的数量。另外,卢森堡具有为700的数量。另外,梵蒂冈具有为200的数量。
假定报告规范152要求具有小于10,000的数量值的国家和省份的列表。图4为根据本发明的一个实施方式的显示满足报告规范152的国家及省份的数量值的表400。如所示,表400包括国家字段402、省份字段404和数量字段406。表400指示三个国家和/或省份满足报告规范152。三个国家和/或省份包括(法国的)诺曼底、卢森堡大公国和梵蒂冈。如所示,诺曼底、卢森堡大公国和梵蒂冈分别具有为5,100、700及200的数量值,其中每一数量值小于报告规范152所要求的10,000的数量值。因而,在该示例中,响应于报告规范152的国家和省份的列表包括国家字段402和省份字段404。
另外,用户经常期望在报告中使同一层级的成员相关。在这类情形下,报告包括国家和相关省份的列表(而非国家的第一列表和省份的第二列表)。在上面结合图4所描述的示例中,可以在报告中使表400的字段相关。例如,可以使报告中每行的省份单元与报告中相应行的国家单元相关。继而可以使每一行的省份单元与报告中相应行的国家单元相关。
作为另一示例,假定报告规范152计划地理层级的地区和国家。报告规范152还可以包括条件(例如,数量>200,000)。假设以下地区满足报告规范:北美洲、中美洲和南美洲。另外,假设以下国家满足报告规范152:加拿大、墨西哥和美国。表I显示报告中层级的不相关成员的示例:
表I-不相关成员示例
在该特定示例中,虽然报告包括满足报告规范152的地区和国家,但报告中每一行的国家单元可能未必与报告中相应行的地区单元相关。例如,为美国的国家不与为南美洲的地区相关。换言之,报告仅包括响应于报告规范的地区的第一列表和国家的第二列表。结果,该报告不便于用户阅读和/或理解。
为了满足用户对在报告中使同一层级的成员相关的期望,应用150可以生成诸如表II中所示的报告:
表II-相关成员示例
在该特定示例中,报告包括满足报告规范152的地区和国家。另外,报告中每一行的国家单元是与报告中相应行的地区单元相关。例如,国家美国是与为北美洲的地区相关。结果,该报告可更易于用户阅读和/或理解。
再次参见图4,回想诺曼底、卢森堡大公国和梵蒂冈分别具有为5,100、700及200的数量值,其中每个数量值小于报告规范152所要求的为10,000的数量值。然而,图2的层级200的结构可以导致结果400排除卢森堡大公国和/或梵蒂冈。就此而言,结果400可以为不完整的。另外,如果结果400包括概括(例如,总数量),则该概括在该概括未考虑(被排除的)卢森堡大公国和/或梵蒂冈的情况下可以为不准确的。
再次参见图2,卢森堡大公国214在表示省份206的级别处不具有后代。取而代之,卢森堡大公国214在表示城市208的级别处具有后代。然而,报告要求国家和省份(而非城市)。在此情形下,可以从结果156错误地排除与卢森堡234相关联(并且因此与卢森堡大公国间接相关联)的为700的数量值。
类似地,梵蒂冈216在表示省份206的级别处不具有后代。梵蒂冈216在表示城市208的级别处也不具有后代。在此情形下,还可以从结果156错误地排除与梵蒂冈216相关联的为200的数量值。
在一个实施方式中,如果报告规范152概括的不平衡层级(或出于报告的目的而显现为不平衡)或将过滤器应用于该层级,则应用150可以补偿层级的该不平衡性,以防止从结果错误地排除成员。图5为根据本发明的一个实施方式的描绘用于通过报告规范152生成OLAP查询154的方法500的流程图。如图所示,方法500在步骤510处开始,其中应用150接收报告规范152。表III显示了报告规范152的示例:
表III-报告规范示例(过滤器)
COLUMN1=Geography.Country.MEMBERS
COLUMN2=Geography.City.MEMBERS
FILTER=Quantity<10,000
如图所示,表III的报告规范在结果156中包括国家204和城市208。另外,该报告规范应用过滤器。过滤器指定结果156中每一城市(或国家)的关联数量值必须小于10,000。
在步骤520处,应用150可以确定在将报告规范152转换为OLAP查询154时将执行补偿。下面结合图6来进一步描述步骤520。在以下步骤中,应用150将层级的成员分类为两个集合,并且从两个集合生成OLAP查询。在步骤530处,应用150可以生成OLAP查询154的一部分,该部分建立在层级的详细级别处具有后代的经计划的成员的第一集合。如本文中所使用的那样,经计划的成员是指在输出作为结果156的一部分(例如,按报告规范152)的级别处的成员。另外,层级的详细级别是指层级的最低级别(例如,城市208)。
在步骤540处,应用150可以生成OLAP查询154的一部分,该部分建立在层级的详细级别处的不具有任何后代的经计划的成员(例如,梵蒂冈216)的第二集合。
在一个实施方式中,在与补偿不平衡层级分离的操作中,应用150可以将过滤器应用于两个集合。例如,根据一个实施方式,OLAP查询154的建立第一集合的部分还过滤在详细级别处的第一集合。即,在针对第一集合详细级别处应用报告规范的任何过滤器。另外,根据一个实施方式,OLAP查询154的建立第二集合的部分还过滤在计划成员的级别处(而非在详细级别处)的第二集合。即,在(例如,经计划的成员的)聚合级别处针对第二集合应用报告规范的任何过滤器。
在步骤550处,应用150可以生成OLAP查询154的一部分,该部分通过联合而将第一集合与第二集合连接。在步骤560处,应用150可以返回和/或执行OLAP查询154。执行OLAP查询154生成结果156。在步骤560之后,方法500终止。
图6为根据本发明的一个实施方式的、描绘用于确定在将报告规范152转换为OLAP查询154时是否应该执行补偿的方法600的流程图。方法600对应于图5的步骤520。如图所示,方法600在步骤610处开始,其中应用150确定报告规范是否包括先于同一层级的不同级别中的另一集合的经计划的集合。即,应用150确定报告规范是否计划层级的不同级别。如果否,则应用150转换报告规范152而不补偿(步骤670)。
否则,应用150确定层级是否平衡(步骤620)。如果否,则应用150确定是否有必要构建层级的叶成员集合(步骤650)。例如,假定报告规范未指示应该针对层级的选定级别计算任何概括。另外,假定报告规范未指定从层级的选定级别移除成员的任何过滤器。在此状况下,应用150可以确定没有必要构建层级的叶成员集合。因此,应用150可以在转换报告规范152而不补偿(步骤670)。否则,应用150使用补偿来转换报告规范152(步骤660)。
然而,如果应用150确定层级为平衡(步骤620),则方法600行进至步骤630,其中应用150确定层级是否为粗糙。如果否,则应用150在转换报告规范152而不补偿(步骤670)。
另一方面,如果应用150确定(在步骤630处)层级为粗糙,则应用150确定报告规范是否选择层级的最低级别(步骤640)。如果是,则应用150转换报告规范152而不补偿(步骤670)。否则,应用150确定是否有必要构建层级的叶成员集合(步骤650)。如果是,则方法600行进至步骤660以使用补偿转换报告规范。否则,方法600行进至步骤670以转换报告规范而不补偿。在步骤660或步骤670之后,方法600终止。
图7说明根据本发明的一个实施方式的根据表III的报告规范使用补偿所转换的OLAP查询700。OLAP查询700包括:(i)建立结果156的第一成员集合的第一部分702;以及(ii)建立结果156的第二成员集合的第二部分704(即,OLAP查询700的“补偿”部分)。例如,第一成员集合可以包括在层级的城市级别处具有至少一个后代的所有成员。第二成员集合可以包括层级中的在层级的城市级别处不具有任何后代的成员。例如,第二成员集合可以包括梵蒂冈216。
如所示,OLAP查询700包括对MDX函数的调用。经调用的MDX函数包括COUNT()、HEAD()、FILTER()、DESCENDANTS()、IIF()和GENERATE()。当然,本领域技术人员应认识到本发明的一些实施方式可以被调整以以支持其他函数、除MDX之外的其他OLAP查询语言,等等。
如所知地,COUNT()为返回集合中的单元的数目的MDX函数。此外,HEAD()为返回来自集合的第一指定数目个元素并同时保留复本的MDX函数。另外,FILTER()为返回来自基于条件来过滤指定集合所得集合的MDX函数。另外,DESCENDANTS()为返回成员的在指定级别或距离处的后代的集合的MDX函数。另外,IIF()为返回由逻辑测试确定的两个值之一的MDX函数。另外,GENERATE()将一个集合应用于另一集合的每个成员,并且接着通过联合而将所得集合连接。
在一个实施方式中,应用150可以包括对MDX函数的序列的调用,以在将报告规范152转换为OLAP查询154时执行补偿。例如,对于第一集合而言,应用150可以包括对HEAD()函数(例如,第一部分702)的调用,以选择国家204的在详细级别处具有满足条件QUANTITY<10000的后代的成员。对于第二集合(补偿集合),应用150还可以包括对HEAD()函数(例如,第二部分704)的调用,以选择国家204的在表示城市208的级别处不具有后代的成员。例如,应用150可以包括对IIF()的嵌套调用,以包括这类成员(即,被确定为在表示城市208的级别处不具有后代的成员)。应用150还可以设定属性以区分第一集合的成员与第二集合的成员。应用150可以包括对GENERATE()的调用,以将第一集合与第二集合组合。因而,OLAP查询700防止从结果错误地排除成员。
另外,除了补偿不平衡的层级之外,OLAP查询700还可以过滤两个集合(例如,因为报告规范包括过滤器)。例如,可以在层级的详细级别处过滤第一成员集合(例如,使用对FILTER()函数的调用706)。另外,可以根据报告规范152在层级的经计划的级别处过滤第二成员集合(例如,对FILTER()函数使用调用708)。
如上所述,如果报告规范152概括不平衡的层级(或出于报告的目的而显现为不平衡)或将过滤器应用于该层级,则应用150可以补偿层级的该不平衡性,以防止从结果错误地排除成员。已结合表III的报告规范而描述将过滤器应用于层级的报告规范的示例。表IV显示层级的经概括的成员的报告规范的示例。
表IV-报告规范示例(聚合)
ROW1
COLUMN1=Geography.RH02.Continent.MEMBERS
COLUMN2=Geography.RH02.Country.MEMBERS
ROW2
COLUMN1=
COLUMN2=Count(Geography.RH02.Country.MEMBERS)
如所示,表IV的报告规范包括在结果156中的来自地理层级的大陆和国家。另外,报告规范要求对地理层级的成员的概括操作。具体而言,报告规范要求对各个大陆的国家的计数。
在一个实施方式中,应用150可以从表IV的报告规范生成OLAP查询。图8示出了根据本发明的一个实施方式的OLAP查询的示例。类似于图7的OLAP查询700,OLAP查询800包括:(i)建立结果156的第一成员集合的第一部分802;以及(ii)建立结果156的第二成员集合的第二部分804。例如,第一成员集合可以包括在层级的国家级别处具有至少一个后代的所有大陆。第二成员集合可以包括层级中的在层级的国家级别处不具有任何后代的大陆。应用150可以包括对GENERATE()的调用,以将第一集合与第二集合组合。因而,OLAP查询800防止从结果错误地排除成员。
当然,本文中所描述的实施方式旨在说明而非限制本发明,并且广泛地构思其他一些实施方式。另外,本领域技术人员应认识到,本发明的一些实施方式可以被调整以支持其他OLAP查询、其他关系型数据库查询、除立方体之外的其他数据仓储的数据模型、以及储存于除关系型数据库之外的其他数据库中的底层数据。另外,可以支持各种OLAP***,例如,多维度OLAP(MOLAP)、关系型OLAP(ROLAP)、混合型OLAP(HOLAP)以及数据仓储和OLAP(DOLAP)。
有利地,本发明的一些实施方式提供用于从维度层级的报告规范生成OLAP查询的技术。在一个实施方式中,应用确定维度层级和/或报告规范是否很可能生成不准确和/或不完整的结果。例如,应用可以确定维度层级是否出于报告的目的而不平衡。如果是,则应用补偿不平衡的维度层级(即,以防止从结果不正确地排除成员)。补偿可以在执行任何OLAP查询之前发生。例如,应用将报告规范转换为包括在详细级别处不具有后代的成员的OLAP查询。因此,应用生成OLAP查询,OLAP查询在执行时生成更准确和/或完整结果(即,响应于报告规范)。另外,应用可能仅在应用认为必要(基于报告规范和/或层级)时才执行补偿,因此减少由补偿导致的处理开销。
虽然前述内容涉及本发明的一些实施方式,但是可以在不脱离本发明的基本范围的前提下设计本发明的其他及另外一些实施方式,并且本发明的范围由下面的权利要求书确定。
Claims (14)
1.一种用于在从报告规范生成联机分析处理OLAP查询时补偿不平衡的层级的方法,所述方法包括步骤:
配置一个或多个计算机处理器以执行用于针对立方体生成OLAP查询的操作,所述立方体具有多个维度,每个维度包括成员的层级,其中所述操作包括:
针对所述立方体的层级接收所述报告规范;
识别所述层级的多个成员的第一集合,其中所述第一集合包括由所述报告规范计划的、在所述层级的详细级别处具有后代的成员;
识别所述多个成员的不同于所述第一集合的第二集合,其中所述第二集合包括由所述报告规范计划的、在所述层级的所述详细级别处不具有任何后代的成员;以及
从所述报告规范生成所述OLAP查询,其中所述OLAP查询通过联集运算而将所述层级的所述第一集合与所述层级的所述第二集合连接。
2.根据权利要求1所述的方法,其中所述操作进一步包括:
执行所述OLAP查询以响应于所述报告规范生成结果。
3.根据权利要求1所述的方法,其中所述报告规范不计划所述层级的所述详细级别,但是计划所述层级的除详细级别之外的至少一个级别。
4.根据权利要求1所述的方法,其中所述报告规范包括过滤器,并且其中所述OLAP查询将所述过滤器应用于详细级别处的所述第一集合。
5.根据权利要求1所述的方法,其中所述报告规范包括过滤器,并且其中所述OLAP查询将所述过滤器应用于除所述详细级别之外的其他级别处的所述第二集合。
6.根据权利要求1所述的方法,其中所述层级为不平衡的层级。
7.根据权利要求6所述的方法,其中所述层级为粗糙的平衡层级,所述粗糙的平衡层级基于由所述报告规范计划的所述层级的最低级别而显现为不平衡。
8.一种用于在从报告规范生成联机分析处理OLAP查询时补偿不平衡的层级的***,所述***包括:
用于配置一个或多个计算机处理器以执行用于针对立方体生成OLAP查询的操作的装置,所述立方体具有多个维度,每个维度包括成员层级,其中所述装置操作包括:
用于针对所述立方体的层级接收报告规范的模块,
用于识别所述层级的多个成员的第一集合的模块,其中所述第一集合包括由过所述报告规范计划的、在所述层级的一个详细级别处具有后代的成员,
用于识别所述多个成员的不同于所述第一集合的第二集合的模块,其中所述第二集合包括由所述报告规范计划的、在所述层级的所述详细级别处不具有任何后代的成员,以及
用于从所述报告规范生成所述OLAP查询的模块,其中所述OLAP查询通过联集运算而将所述层级的所述第一集合与所述层级的所述第二集合连接。
9.根据权利要求8所述的***,其中所述装置进一步包括:
用于执行所述OLAP查询以响应于所述报告规范生成结果的模块。
10.根据权利要求8所述的***,其中所述报告规范不计划所述层级的所述详细级别,但是计划所述层级的除所述详细级别之外的至少一个级别。
11.根据权利要求8所述的***,其中所述报告规范包括过滤器,并且其中所述OLAP查询将所述过滤器应用于所述详细级别处的所述第一集合。
12.根据权利要求8所述的***,其中所述报告规范包括过滤器,并且其中所述OLAP查询将所述过滤器应用于除所述详细级别之外的其他级别处的所述第二集合。
13.根据权利要求8所述的***,其中所述层级为不平衡的层级。
14.根据权利要求13所述的***,其中所述层级为粗糙的平衡层级,所述粗糙的平衡层级基于由所述报告规范计划的所述层级的最低级别而显现为不平衡。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/628,886 | 2009-12-01 | ||
US12/628,886 US9189535B2 (en) | 2009-12-01 | 2009-12-01 | Compensating for unbalanced hierarchies when generating OLAP queries from report specifications |
PCT/EP2010/067119 WO2011067076A1 (en) | 2009-12-01 | 2010-11-09 | Compensating for unbalanced hierarchies when generating olap queries from report specifications |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102667774A CN102667774A (zh) | 2012-09-12 |
CN102667774B true CN102667774B (zh) | 2015-01-14 |
Family
ID=43479410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201080054477.8A Active CN102667774B (zh) | 2009-12-01 | 2010-11-09 | 当从报告规范生成olap查询时补偿不平衡层级 |
Country Status (9)
Country | Link |
---|---|
US (2) | US9189535B2 (zh) |
JP (1) | JP5501473B2 (zh) |
KR (1) | KR101369020B1 (zh) |
CN (1) | CN102667774B (zh) |
DE (1) | DE112010004014T5 (zh) |
GB (1) | GB201211366D0 (zh) |
IL (1) | IL219757A0 (zh) |
TW (1) | TW201140349A (zh) |
WO (1) | WO2011067076A1 (zh) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9189535B2 (en) | 2009-12-01 | 2015-11-17 | International Business Machines Corporation | Compensating for unbalanced hierarchies when generating OLAP queries from report specifications |
US10360527B2 (en) * | 2010-11-10 | 2019-07-23 | International Business Machines Corporation | Casual modeling of multi-dimensional hierarchical metric cubes |
US8635229B2 (en) | 2011-10-18 | 2014-01-21 | International Business Machines Corporation | Sequenced query processing in data processing system |
US8938416B1 (en) * | 2012-01-13 | 2015-01-20 | Amazon Technologies, Inc. | Distributed storage of aggregated data |
US9068023B2 (en) | 2012-03-09 | 2015-06-30 | Basf Se | Continuous process for the synthesis of graft polymers based on polyethers |
US10289972B1 (en) * | 2012-08-28 | 2019-05-14 | Jda Software Group, Inc. | System and method for real-time multi-facet interactive planning |
US9684877B2 (en) | 2012-09-18 | 2017-06-20 | Sap Se | System and method for improved consumption models for analytics |
US9135314B2 (en) * | 2012-09-20 | 2015-09-15 | Sap Se | System and method for improved consumption models for summary analytics |
CN103916478B (zh) * | 2014-04-11 | 2017-06-06 | 华为技术有限公司 | 基于分布式***的流式构建数据方的方法和装置 |
US9767176B2 (en) * | 2014-08-07 | 2017-09-19 | Bank Of America Corporation | Denormalize recursive, unbalanced, and ragged hierarchies |
US10685042B2 (en) * | 2014-12-22 | 2020-06-16 | Amazon Technologies, Inc. | Identifying join relationships based on transactional access patterns |
US10120905B2 (en) | 2014-12-22 | 2018-11-06 | Amazon Technologies, Inc. | Efficient determination of join paths via cardinality estimation |
US10120927B2 (en) | 2015-06-03 | 2018-11-06 | International Business Machines Corporation | Technology for generating a model in response to user selection of data |
US10345991B2 (en) | 2015-06-16 | 2019-07-09 | International Business Machines Corporation | Adjusting appearance of icons in an electronic device |
US10223421B2 (en) * | 2015-12-30 | 2019-03-05 | Sap Se | Virtual Aggregation |
CN106933906B (zh) * | 2015-12-31 | 2020-05-22 | 北京国双科技有限公司 | 数据多维度的查询方法及装置 |
US10140319B2 (en) | 2016-07-26 | 2018-11-27 | Bank Of America | System for identifying anomalies by automatically generating and analyzing a structure |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1482431A2 (en) * | 2003-05-27 | 2004-12-01 | Cognos Incorporated | System and method of multidimensional query results processing |
US7222130B1 (en) * | 2000-04-03 | 2007-05-22 | Business Objects, S.A. | Report then query capability for a multidimensional database model |
US7571182B1 (en) * | 2005-01-26 | 2009-08-04 | Star Analytics, Inc. | Emulation of a balanced hierarchy from a nonbalanced hierarchy |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6549907B1 (en) * | 1999-04-22 | 2003-04-15 | Microsoft Corporation | Multi-dimensional database and data cube compression for aggregate query support on numeric dimensions |
US6768986B2 (en) * | 2000-04-03 | 2004-07-27 | Business Objects, S.A. | Mapping of an RDBMS schema onto a multidimensional data model |
US6651055B1 (en) * | 2001-03-01 | 2003-11-18 | Lawson Software, Inc. | OLAP query generation engine |
US7139766B2 (en) * | 2001-12-17 | 2006-11-21 | Business Objects, S.A. | Universal drill-down system for coordinated presentation of items in different databases |
US7028046B2 (en) * | 2002-03-19 | 2006-04-11 | Hyperion Solutions Corporation | Method of splitting a multi-dimensional cube between a multi-dimensional and a relational database |
US7181450B2 (en) * | 2002-12-18 | 2007-02-20 | International Business Machines Corporation | Method, system, and program for use of metadata to create multidimensional cubes in a relational database |
US7953694B2 (en) | 2003-01-13 | 2011-05-31 | International Business Machines Corporation | Method, system, and program for specifying multidimensional calculations for a relational OLAP engine |
CA2429907A1 (en) * | 2003-05-27 | 2004-11-27 | Cognos Incorporated | Modelling of a multi-dimensional data source in an entity-relationship model |
US7805433B2 (en) * | 2005-10-14 | 2010-09-28 | Microsoft Corporation | Multidimensional cube functions |
US7765224B2 (en) * | 2005-11-18 | 2010-07-27 | Microsoft Corporation | Using multi-dimensional expression (MDX) and relational methods for allocation |
US7698257B2 (en) * | 2006-05-16 | 2010-04-13 | Business Objects Software Ltd. | Apparatus and method for recursively rationalizing data source queries |
US7730059B2 (en) * | 2007-03-30 | 2010-06-01 | International Business Machines Corporation | Cube faceted data analysis |
US9189535B2 (en) | 2009-12-01 | 2015-11-17 | International Business Machines Corporation | Compensating for unbalanced hierarchies when generating OLAP queries from report specifications |
-
2009
- 2009-12-01 US US12/628,886 patent/US9189535B2/en not_active Expired - Fee Related
-
2010
- 2010-11-09 CN CN201080054477.8A patent/CN102667774B/zh active Active
- 2010-11-09 JP JP2012541384A patent/JP5501473B2/ja active Active
- 2010-11-09 DE DE112010004014T patent/DE112010004014T5/de not_active Ceased
- 2010-11-09 KR KR1020127016195A patent/KR101369020B1/ko active IP Right Grant
- 2010-11-09 WO PCT/EP2010/067119 patent/WO2011067076A1/en active Application Filing
- 2010-11-12 TW TW099139111A patent/TW201140349A/zh unknown
-
2012
- 2012-05-13 IL IL219757A patent/IL219757A0/en unknown
- 2012-06-27 GB GBGB1211366.8A patent/GB201211366D0/en not_active Ceased
- 2012-09-15 US US13/620,827 patent/US8484157B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7222130B1 (en) * | 2000-04-03 | 2007-05-22 | Business Objects, S.A. | Report then query capability for a multidimensional database model |
EP1482431A2 (en) * | 2003-05-27 | 2004-12-01 | Cognos Incorporated | System and method of multidimensional query results processing |
US7571182B1 (en) * | 2005-01-26 | 2009-08-04 | Star Analytics, Inc. | Emulation of a balanced hierarchy from a nonbalanced hierarchy |
Also Published As
Publication number | Publication date |
---|---|
GB201211366D0 (en) | 2012-08-08 |
US9189535B2 (en) | 2015-11-17 |
CN102667774A (zh) | 2012-09-12 |
IL219757A0 (en) | 2012-07-31 |
KR20120103656A (ko) | 2012-09-19 |
TW201140349A (en) | 2011-11-16 |
JP5501473B2 (ja) | 2014-05-21 |
US8484157B2 (en) | 2013-07-09 |
DE112010004014T5 (de) | 2012-09-20 |
US20130013554A1 (en) | 2013-01-10 |
JP2013512517A (ja) | 2013-04-11 |
KR101369020B1 (ko) | 2014-03-12 |
US20110131173A1 (en) | 2011-06-02 |
WO2011067076A1 (en) | 2011-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102667774B (zh) | 当从报告规范生成olap查询时补偿不平衡层级 | |
US20200160441A1 (en) | Method and system for forecasting using an online analytical processing database | |
Jensen et al. | Multidimensional databases and data warehousing | |
US9286370B2 (en) | Viewing a dimensional cube as a virtual data source | |
CN101167048B (zh) | 多维企业软件***内的可聚集维度信息的生成 | |
Phipps et al. | Automating data warehouse conceptual schema design and evaluation. | |
US5548749A (en) | Semantic orbject modeling system for creating relational database schemas | |
US6718338B2 (en) | Storing data mining clustering results in a relational database for querying and reporting | |
US9535970B2 (en) | Metric catalog system | |
US20100131457A1 (en) | Flattening multi-dimensional data sets into de-normalized form | |
Hobbs et al. | Oracle 10g data warehousing | |
CN101111839A (zh) | 多维企业软件***中的报表模板生成 | |
CN101111835A (zh) | 多维企业软件***中的自动默认维度选择 | |
Shin et al. | Denormalization strategies for data retrieval from data warehouses | |
US7243106B2 (en) | Static drill-through modelling | |
Hancock et al. | Practical Business Intelligence with SQL Server 2005 | |
Peralta et al. | Using Design Guidelines to Improve Data Warehouse Logical Design. | |
Gallo et al. | Data warehouse design and management: theory and practice | |
Klauck et al. | Interactive, flexible, and generic what-if analyses using in-memory column stores | |
Agrawal et al. | Analysis of multidimensional modeling related to conceptual level | |
Rizzi et al. | Date Warehouse Design. | |
PHIPPS | Migrating an operational database schema to data warehouse schemas | |
CN115827685A (zh) | 一种适用于大数据指标的优化处理方法、装置及存储介质 | |
Jensen et al. | Fundamental Concepts | |
Malinowski | Improving Expression Power in Modeling OLAP Hierarchies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |