BusinessObjects中的多维数据集与微多维数据集

时间:2014-06-20 13:38:17

标签: business-objects

我在理解BusinessObjects环境中的立方体和微立方体时遇到问题。 虽然我试图在网上找到答案,但我找不到能给出全面解释的答案。 除了功能描述之外,我想知道立方体在哪里以及微立方体位于何处:在服务器上还是在浏览器中? 有多少个立方体/微立方体?每个报告一个微管或每个会话一个微立方体,或者其他?

此外,任何人都可以解释数据库级别上聚合的差异,因为在报告级别上聚合为聚合(在定义度量时,有两种可能性 - 在报告和/或聚合级别上定义聚合)。虽然网上有一些答案,但它们太笼统了。因此,我希望通过一个例子来简单解释。

最后,是否可以在数据基础层中对表进行着色? (因为我在宇宙中有很多表,如果我可以为事实和维度表着色,那将非常有用。)

2 个答案:

答案 0 :(得分:2)

有助于理解在BO中查询传统(非OLAP)数据的两遍性质。在BO中刷新报表时,报表引擎会根据查询中指定的对象(结果和条件)构造SQL语句。

将SQL语句发送到数据库,然后报表引擎将检索从数据库返回的数据。此数据成为 microcube - 它只不过是从数据库接收的数据的表格表示。如果您可以直观地看它,它看起来与在传统SQL工具(例如TOAD或SQL * Plus)中运行SQL语句所获得的相同。

然后微立方体成为报告呈现的来源。例如,您可以通过拖动对象列表中的维度和度量来在报表中创建表格。在拖动这些对象时,表格将根据需要重新计算并重新显示。这一切都是通过从源数据中检索和计算来自 microcube 而不是的数据来完成的。也就是说,当您与报表选项卡进行交互时,您不会从数据库启动刷新 - 所有计算都是从微管上完成的。

例如,假设您创建了一个包含两个维度(State,Region)和一个度量(Sales)的新查询。 SQL可能如下所示:

select state_nm,region_nm,sum(sales_amt)
  from all_sales
 group by state_nm,region_nm

请注意,sum_()应用于sales_amt。这导致数据库在此字段上执行初始聚合。

刷新后创建的微立方体可能如下所示:

AL    North     30000
AL    South     40000
AR    North      5000
AR    South     10000

现在,您在报表中创建一个表,然后选择State和Sales。报告引擎使用微管上的数据显示结果:

AL     70000
AR      5000

在这种情况下,BO报表引擎已对Sales Amt执行sum()聚合。这是报告端聚合。

然后你删除State。同样,报告引擎从微立方体聚合表,而不是数据库:

75000

微立方体与报告文件一起存储。如果您通过InfoView处理WebI报告,则微立方体将加载到服务器的内存中。保存报告时,会在服务器上创建物理文件(扩展名为.wid);微立方体存储在该文件中。如果再次打开报告,微立方体将再次加载到服务器的内存中,并可用于交互。

如果您使用的是Rich Client,则会应用相同的行为,它只是使用您的工作站和本地存储。

术语“多维数据集”通常用于描述OLAP环境中的数据源(例如,SSAS或Essbase)。这是外部到BO - BO将从 OLAP多维数据集中查询数据

答案 1 :(得分:1)

关于聚合

  • 数据库聚合由您的RDBMS在源数据上执行,传输到客户端应用程序(例如Web Intelligence)之前。您可以在度量的select语句中(在Universe的业务层中)使用SUM()COUNT()等语句来应用数据库聚合。它只适用于度量对象,而不是维度。

    • 更改从数据库中检索的数据
    • 由于返回的数据集较小,可对性能产生积极影响
    • 利用数据库聚合性能

  • 投影汇总报告汇总是客户端应用程序(例如Web Intelligence)检索数据后执行的聚合数据库,因此在内存中。

    • 随着尺寸变化而投影(投影聚合)
    • ,即时发生
    • 从数据库中检索的结果集保持不变

关于表格颜色:查看教程 Apply color to tables that share the same information 。这应该向您展示如何为数据基础中的表配置颜色。