是否可以合并2个事实表以在Mondrian架构中创建多维数据集 示例销售和费用的情况?
答案 0 :(得分:4)
通常在一个事实表中同时包含销售和成本度量,并将它们作为度量添加到一个多维数据集中。
如果你不能将它们放在同一个事实表中,它们需要有共同的维度,所以它们可以在Virtual Cube(最多到Mondrian 3.8)中连接在一起。时间维度通常是:
DHW
date_key, ..., sales
date_key, ..., cost
date_key, day_of_month, month, year, ...
Mondrian OLAP架构
dim_date
,主键列date_key
,等级年year
,等级月... fact_sales
,维度[日期]使用情况date_key
,衡量sales
fact_sales
,维度[日期]使用情况date_key
,衡量cost
[Date]
,虚拟多维数据集度量[Sales.sales]
,虚拟多维数据集度量[Cost.cost]
答案 1 :(得分:4)
如果可以使用Mondrian 4,则可以指定应该执行的确切SQL语句来检索事实表的数据。因此,您可以在数据库级别进行连接,如下所示:
<PhysicalSchema>
<Query alias="FACT">
<ExpressionView>
<SQL dialect="generic">
select f.*, f2.measure_2 from FACT f INNER JOIN FACT2 f2 ON f.id = f2.fact_id
</SQL>
</ExpressionView>
</Query>
</PhysicalSchema>
请参阅此处的完整示例: http://thejavatar.com/mondrian-4-in-pentaho-bi-server/