【发布时间】:2010-01-02 19:44:17
【问题描述】:
这里有一点背景:
我或多或少知道what a data warehouse is。我读过几十本关于数据仓库的指南,我玩过 SSAS,我知道星型模式、维度表和事实表是什么,我知道 ETL 是什么以及如何去做。 这不是“如何”问题或教程请求。
我的问题是,我读过的所有关于数据仓库的材料似乎都掩盖了构建数据仓库的基本原理。它们都是比喻性的,或者在某些情况下以字面意思开头“所以你决定建立一个数据仓库......”除非我还没有做出那个决定。
所以我希望 SO 成员可以指点我或帮助提出某种半客观的测试。我可以适应特定系统并最终得到“是的,我们需要一个数据仓库”或“不,今天的回报太小”的东西。我认为我应该能够回答的具体问题是:
在什么时候构建数据仓库是值得考虑的选择?换句话说,我应该注意哪些迹象、指标或其他标准可能表明标准的交易环境已经不够用了?
完整数据仓库的替代方案有哪些?事务数据库中的非规范化和沼泽标准复制的“报告服务器”是我想到的两个;在加入 DW 之前,我还有什么需要探索的吗?
为什么数据仓库比上述替代方案更好?如果答案是“它取决于”,那么它取决于什么?
我什么时候不应该尝试构建数据仓库?无论上下文如何,我都对任何被宣布为“最佳实践”的东西持怀疑态度。当然,在某些情况下,DW 是错误的选择——它们是什么?
是否有任何实用示例可以查看通过引入数据仓库而得到改进的系统?可以端到端地向我解释,他们需要仓库进行什么样的决策或分析,他们如何决定在其中放置什么,以及仓库最终如何适应更大的环境?我不想要一个人为的“让我们从 AdventureWorks 数据库中制作一个立方体”——实现与我无关,我对 规格和设计以及整体思考过程感兴趣 参与其中。
我一般尽量不问多方,但我认为这些都是密切相关的。我愿意接受至少解决前 4 个问题的任何答案,尽管最后一个问题确实有助于在我的脑海中明确这一点。如果有人已经写过这方面的文章,链接很好,只要它们相当简洁和具体(指向 Ralph Kimball 主页的链接 = 没有帮助)。
希望我已经把问题说清楚了 - 提前感谢您的回答!
【问题讨论】:
标签: database database-design data-warehouse