我一直在阅读数据多维数据集是什么,并且有很多资源说它是什么和为什么(OLAP /商业智能/聚合你会使用一个但从不如何。
大多数资源似乎都是referencing relational data商店,但似乎您不必使用RDBMS。
但似乎没有任何东西显示您如何构建架构以及如何有效地进行查询以避免聚合所有这些数据的运行时间较慢。我能找到的最好的是这个edx类是"目前不可用":Developing a Multidimensional Data Model。
答案 0 :(得分:1)
您可能已经知道有两种不同的OLAP方法:
现在开发MOLAP解决方案有点意义;这种方法实际上是> 10年前,当服务器受到少量RAM的限制,而且HDD上的SQL数据库无法足够快地处理GROUP BY查询 - 而MOLAP只是实现“在线分析处理”的唯一途径。目前我们拥有非常快的NVMe SSD,服务器可能有数百GB的RAM和数十个CPU内核,因此对于相对较小的数据库(高达TB或更多),通常的OLTP数据库可以作为ROLAP后端足够快地运行(执行查询)秒);在真正大数据的情况下,MOLAP几乎无法以任何方式使用,应该以任何方式使用专门的分布式数据库。
答案 1 :(得分:0)
一般的智慧是,当立方体基于“维度”模型时,立方体效果最佳。 AKA是一种通常(但并非总是)在RDBMS中实现的星型模式。这是有道理的,因为这些模型的设计可以快速进行查询和聚合。
大多数多维数据集在用户与它们交互之前自己进行聚合,因此从用户的角度来看,多维数据集本身的聚合/查询时间比源表的结构更有趣。但是,一些立方体技术只不过是一个“语义层”'将查询传递给底层数据库,这些称为ROLAP。在这些情况下,基础数据结构变得更加重要。
呈现给多维数据集用户的数据接口从他们的角度来看应该是简单的,这通常会排除非维度模型,例如将多维数据集直接建立在OLTP系统的数据库结构上。