我看过一些关于如何使用星型和雪花型模式构建数据仓库、OLTP 数据库事实和维度表的非规范化等的教程文章和帖子。
还看到这样的评论:
星型模式最多只能用于数据集市。真正的企业数据仓库绝对不可能用星型模式或雪花模式来表示。
我想创建一个用于报告服务的数据库,并且可能(如果这还不够)安装分析服务并从多维数据集中提取报告和数据。
我的问题是:是否真的有必要重新设计我当前的数据库并遵循带有事实和维度表的星型/雪花模式?
谢谢
答案1
在重新设计数据库之前,我会考虑一些事情。
- 我很确定报告服务不需要星号/雪花来完成其工作,因此您可能会看到可以使用规范化数据库构建什么。
- 尝试构建非规范化 OLTP 数据的视图。如果您重新设计数据库,这将让您思考所需的设计方面。
答案2
除非您转储整个 SQL 端并在多维数据集中构建存储库,否则情况确实如此 - 在这种情况下,您可能会摆脱数据底层的 OLTP 模式。
主要问题是非星型模式方法只会给服务器带来很大的分析负担。话虽如此,起诉分析服务的想法很棒 - 它们在这个领域大放异彩。只需尝试是否可以直接从 OLTP 模式加载它们,可能是它的快照。
答案3
数据仓库的另一个基本原理是,任何对数据进行调整或转换的计算都是在将数据加载到特定模式之前完成的,以便从数据仓库中提取的大部分数据都是“可立即使用的”。
答案4
我推荐一本关于这个主题的好书:http://www.amazon.co.uk/Microsoft-Data-Warehouse-Toolkit-Intelligence/dp/0471267155/ref=sr_1_3?ie=UTF8&s=books&qid=1272019644&sr=8-3
虽然它针对的是 2005 年(我认为 2008 年版本正在筹备中),但总体理论仍然适用,而且设计和规划步骤几乎与平台无关。
如果你想进入 DW,这是非常值得的:)