我们可以将字符串值显示为 mondrian olap 上的度量吗

Posted

技术标签:

【中文标题】我们可以将字符串值显示为 mondrian olap 上的度量吗【英文标题】:Can We show the string value as a measure on mondrian olap 【发布时间】:2012-08-03 09:25:14 【问题描述】:

我想将字符串值显示为度量值之一。当事实表分别具有整数值和字符串值并且还具有一些外部表的键时。然后我可以将整数值显示为度量值,但我不能将字符串值显示为度量值。因为多维数据集架构中的Measure element(用 XML 编写)不允许度量值没有“聚合器”(它指定度量值的聚合函数)。当然我知道我们不能聚合一些字符串值。但我想显示层次结构中最新级别的字符串值。

我阅读了以下文章。 A figure(在本页中间附近)显示了一个包含字符串值作为度量值的多维数据集。但这是一个维度表的属性值的例子,所以这个字符串值不包含在事实表中。我想显示包含在事实表中的字符串值。

A Simple Date Dimension for Mondrian Cubes

有人知道可以将字符串值显示为度量值吗?或者我必须编辑蒙德里安的源代码?

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,并通过将度量标记中的aggregator 属性设置为max 来解决它。 例如

\<Measure name="Comment" datatype="String" column="comment" caption="Comment" aggregator="max"/\>

【讨论】:

【参考方案2】:

为什么需要衡量?

如果自然不会对其应用聚合,而您只需要字符串值,那么它是一个维度,而不是一个度量。试图强迫它成为一种衡量标准并不是最好的方法。

我认为您引用的数字只是显示钻取,并且唯一的实际 衡量标准是营业额。报告布局在维度和度量方面略有误导。

如果由于某种原因您不想将其拆分为单独的物理表,则可以在架构中再次将事实表用作维度表。

听起来字符串可能是整数的高基数,可能是 1:1。根据多维数据集的大小,这可能是也可能不是性能挑战。但不要试图将其作为衡量标准。

祝你好运!

【讨论】:

以上是关于我们可以将字符串值显示为 mondrian olap 上的度量吗的主要内容,如果未能解决你的问题,请参考以下文章

Mondrian Schema - 计算的成员维度查找

聚合最后一个值和聚合总和 mdx mondrian

ola 不错的sql server 维护方案

相对日期过滤问题 Pentaho Workspace(Mondrian) AnalyzerDateFormat 周重叠两个月仅显示一周的开始日期

mondrian mdx 过滤日期维度中年份级别的集合

Mondrian系列-星型和雪花模型-概述