sql-server – 在多个事实表之间加入维度
如果请求的报告需要有关相同维度(并且具有相同的粒度)的汇总信息,但基础数据存储在单独的事实表中,那么数据仓库设计的好方法是什么?
例如,一份报告显示每个员工每年报告的工资总额和报告的总费用,当时工资和费用记录在不同的事实表中.或者一份报告,列出公司销售的每个SKU每月的总销售额和每月收到的库存,当销售来自一个事实表并且接收来自另一个. 天真地解决这个问题看起来很简单:只需并行查询和聚合两个事实表,然后将聚合结果拼接在数据仓库或客户端应用程序中. 但我也有兴趣考虑其他方法来思考这个问题.别人怎么解决了?我想知道数据仓库架构和设计,以及使客户端工具设计友好,以构建报告,如上面的例子. 此外,这个“维度三明治”用例是否在规范数据仓库术语中有名称?如果是,那么将更容易通过谷歌进行研究. 我们正在使用SQL Server,但我现在提出的问题有望与平台无关. 解决方法我今天了解到这种技术被称为 Drilling Across:
听起来像上面的天真解决方案(并行查询多个事实表并将结果拼接在一起)也是建议的解决方案. 更多信息: > Drilling Across – Kimball概述文章 非常感谢@MarekGrzenkowicz指出我正确的方向找到我自己的答案!我在这里回答它,以防其他人正在寻找同样的事情. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |