在TM1中,cube作为多维度数据的集合。
像拼乐高积木,我们把维度放在一起时,组建为储存数据的cube。
今天我们将一起学习在创建TM1维度“积木”时,各维度顺序有哪些最佳实践的小技巧。
首先,对于TM1,系统内支持两种不同的维度顺序:一种是为了展示及索引使用,该顺序一旦创建后就无法修改;另一种则是为了物理存储容量考虑。
因此,创建cube时需要先考量功能、性能和运维等各方面,其次再考虑内存容量的影响。
我们也可以通过系统检查,是否需要重新排列维度顺序以更好优化存储容量,比如右键一个cube选择重新排列维度,选择系统优化时可以由系统判断出最佳顺序;也可以选择用户自行排序,并对比出顺序调整前后的容量差别。
调整的主要原则是将最后一个维度设为度量值,根据从最小分散度到最大分散度的维度,接着为最小密度到最大密度的维度的优先次序进行调整。但是,内存消耗小不代表效率高,不同的维度次序会影响着内存、查询返回效率和加载效率。
最后需要注意的是,虽然没有100%正确的方式去设计cube结构及维度顺序,但是哪怕只包含一个度量值元素,所有cube中最后一个维度也要设置为度量值维度。
例如在销售cube中, 我们可以在最后的维度中加入价格、数量和总量等度量值元素。该设置是为了可以更好地与cube中其他维度共享,也可以最大程度上与其他cube维持一致性,并降低运维成本、增加扩充弹性。
Zoey的TM1学习日记:TM1不藏私系列——#8. 新建Cube的维度顺序有哪些实践小技巧?
度量值维度同时也是决定单元格格式的重要因素,我们将在下一期详细介绍怎样通过度量值而决定单元格的类型。