上期提到TM1就像“积木”,各维度按顺序 被组建为储存数据的 cube。
那么,今天我们将要一起学习维度中的各单元格类型,则是决定其拼接的“形状”。
TM1维度中的元素,一共有三种类型:字符串S、数值N、和合并元素C。
当cube由多个维度组建起来后,其中的单元格类型又是如何决定的呢?
这里的小tip是TM1将根据cube最后一个维度的元素类型,决定单元格的类型是字符串S或是数值N。
因此,建议将每个cube最后一个维度设置为单独的度量值维度,才能方便通过控制其元素类型来定义字符串单元格。
但需要注意的是,当度量值元素 为非字符串s类型时,如果构成单元格的任一维度 元素为合并类型C,该单元格将成为合并C。
通过这个特点,将更方便我们进行一些简单的加总计算。比如,我们可以在月份维度中通过一个季度的合并C元素来加总3个月的销售额;而对于复杂计算,我们还可以对合并的子元素设定不同的权重因子,先乘上权重因子后再作合计,这也是TM1最核心的运算功能,可提高运行效率。
最后,今天介绍的单元格类型的决定方式,大家可以参考下表总结:
当最后一个维度元素类型为字符串S时,单元格即为文字类型,否则只要单元格 任一维度元素类型 为合并C,则成为合并类型C-Level;剩下来的单元格就是N-Level。
以上两期是关于设计cube结构第一阶段的分享内容,下一期将和大家一同学习有哪些可以提高rule运算效率的小技巧。
Zoey的TM1学习日记:TM1不藏私系列——#9. 怎样决定Cube中单元格的格式类型?