有没有人有资源可以列出在设计 ROLAP 多维数据集时要考虑的事项,而不是 MOLAP(我在 Pentaho 中做这件事,但我想其他实现的原理并没有不同)。例如,我正在考虑类似的事情:
是否应该在 ETL 阶段进行额外的转换工作以减少查询多维数据集时的计算工作?
我的所有维度表都应该与我的多维数据集在同一个数据库中吗?
有没有人有资源可以列出在设计 ROLAP 多维数据集时要考虑的事项,而不是 MOLAP(我在 Pentaho 中做这件事,但我想其他实现的原理并没有不同)。例如,我正在考虑类似的事情:
是否应该在 ETL 阶段进行额外的转换工作以减少查询多维数据集时的计算工作?
我的所有维度表都应该与我的多维数据集在同一个数据库中吗?
我是印度尼西亚的 Pentaho 实现者。首先,您当然应该尝试通过所涉及的代理键来聚合所有度量值组。
在 Mondrian 中,您可以使用额外的聚合表“缓存”一些计算。你可以在 Pentaho Aggregate Designer 中完成。但在那之后,您将需要在数据仓库/ETL 阶段进行额外的工作。
问候,
费里斯
首先 - 设计相似,但它们由不同的性能和可扩展性策略驱动。
其次 - etl 过程几乎相同。除了 - 由于关系数据库中的可伸缩性特性,您通常会在 rolap 多维数据集中看到比 molap 多维数据集更多的数据。您经常会在非 rolap 数据库(仓库,甚至事务数据库)中看到一个 rolap 多维数据集,它不仅仅支持 rolap。
最后,如果数据量很大,通常会生成聚合表。这种聚合可以通过很多不同的方式完成,但我想说它通常不是由您的 ETL 流程驱动的,除非您缺乏管理单独的异步流程的能力,或者拥有使运行期间汇总作业不切实际的数据量。
感谢 Feris 的链接和输入,但最后我还是选择了这本书:
我仔细阅读了Mondrian网站 + 文档,但这本书似乎更全面。