我创建了维度数据模型,后来我意识到我没有任何关系......我希望你能帮助我!
让我解释一下我的所作所为。我从关系模型中获取数据(一个包含主键/外键及其关系,一些表包含相同的参数,表明它们的关系)并将其放入维度数据模型
要将数据从Relational复制到Dimensional Data模型,我使用了简单的Insert Select。当然我做一些数据操作,比如提取等等。
INSERT INTO...
SELECT sequence.nextval, param1, param2,...
FROM
(SELECT ...);
这导致了我的解决方案"在我的维度模型中没有关系,因为我只选择所需的参数并放入维度模型。
所有来源都在Oracle数据库中,我也在Oracle中实现Dimensional Model。
下面是系统部分示例。
这样做的正确方法是什么?
答案 0 :(得分:0)
你的解决方案看起来很乱。
你需要这个:
DimTrain,DimStearsMan,DimDate(谷物日),DimTime(24小时的第二粒),factTript。
他们创建了4个视图:DimDepartureDate,DimDepartutetime,DimArrivalDate,DimArrivaltime(您的工具可能会为您执行此操作;因此您可能不需要视图)。哦,你还需要scrips(或其他东西来填充DimTime和DimDate以及所有可能的组合,最好用10或20年的日期来填充DimDate。)
您应该只使用代理键来连接表(并且还要在表中保留业务ID,您的用户可能希望转到操作系统检查数据)。
然后创建factTrip并使用代理键(也称为维度键)将其连接到Dimensions,并将持续时间度量添加到factTrip。这是6个外键+指标。