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