我知道一些关于数据库内部的知识。实际上,我已经实现了一个小型,简单的关系数据库引擎,在磁盘上使用ISAM结构和BTree索引等等。这很有趣,而且很有教育意义。我知道我现在更加认识如何仔细设计数据库模式和编写查询,现在我更了解RDBMS如何在底层工作。任何人都知道关于OLAP内部的任何事情?
但我对多维OLAP数据模型一无所知,而且我很难在互联网上找到任何有用的信息。
信息是如何存储在磁盘上的?什么数据结构构成了立方体?如果MOLAP模型不使用表格,列和记录,那么...什么?特别是在高维数据中,哪种数据结构使MOLAP模型如此高效? MOLAP实现是否使用类似于RDBMS索引的东西?
为什么OLAP服务器在处理临时查询时更好?在一个普通的关系数据库中处理可能需要小时的相同种类的聚合可以在毫秒中在OLTP多维数据集中处理。这个模型的底层机制是什么使之成为可能?