只是想知道数据如何实际存储在多维数据库中。
我看到的所有参考文献都显示了一个三维立方体,只是为了想象它的精细,但实际上它必须只是2-D,具有外键关系仪式?
谢谢,
答案 0 :(得分:2)
最后找到了我自己的问题的答案,发布以便对可能有类似疑虑或想要了解多维数据库的其他人有所帮助。
与使用ER-Model(用于OLTP查询)的Relational数据库不同,多维数据库(用于OLAP查询)使用Star-Schema或Snowflake-schema进行大量数据的分析研究。
这些模式由一个事实表和多维表组成。 不管维度的数量(即维度表),这里的数据也以简单的二维格式存储,具有相同的主键 - 外键概念。
更多技术细节: 所有维度表都有自己的主键。维度表中的行数预计会更少(与事实表相比),但是预计列数会更多地给出该维度的所有细节。
事实表由上面讨论的所有维表的主键作为外键组成,所有可能的组合都有。
基本示例: 尺寸表“a”:
主键......此维度的许多其他列
A1
A2
尺寸表“b”:
主键......此维度的许多其他列
B1
B2
事实表:(来自所有维度表的PK的所有组合)
表“b”中表“a”外键的外键
A1 B1
A1 B2
A2 B1
A2 B2
因此,事实表中的行数非常高(与维表相比),但列数与维表的数量几乎相同。
使用此事实表并基于查询,可以从所需的维度表中以不同的组合检索数据,这些组合可用于分析研究。