SSAS 中的计算列是否涵盖后端错误建模?

Calculated column in SSAS covering for faulty modeling in the backend?

我在 SSAS 中有一个遗留模型,其中我有一个包含列的事实 table:Key_Parent_SegmentKey_Segment.

他们都连接到一个角色扮演 ClientSegment table.

事实上 table 有一个计算列:

=IF(
    FactIncome[Key_Parent_Segment] < 0
    ,RELATED('Client Segment'[Segment])
    ,RELATED('Parent Client Segment'[Segment])
)

(在 SSAS 中,Client SegmentParent Client Segment 都具有与源相同的 DimClientSegment)

问:这不是模型的缺陷吗?这个计算出来的列不就是覆盖了source/backend处的一些未填充的值吗?

Isn't this a flaw in the model? Isn’t this calculated column just covering for some unfilled values at source/backend?

实际上,表格模型总是比它所基于的数据集市更具体、更完整。对表格模型进行少量更改是很常见的,这些更改可能理想地属于关系数据集市的设计更改。但实际考虑,如引入重大更改或简单的时间安排,通常会使在表格模型层(至少在最初)应用更改更加方便。