我是DW的新手。当我们应该使用术语Datamart以及何时应该使用术语Datawarehousing。请以示例解释,可能是您自己的示例,也可能是Adventureworks。
答案 0 :(得分:1)
我没有在MS SQL Server上工作。但这是一个商业用例的通用示例。
让我再添加一个术语。首先,有一个主transactional database
与您的应用程序交互(假设您有一个应用程序与之交互,显然)。数据会写入Master database
(希望您正在使用Master-Slave replication
),同时会被复制到精简版中。根据业务和报告要求,清理和ETL
对应用程序数据执行,数据汇总并以denormalized
形式存储,以提高报告性能并减少连接数。复杂的预先计算的数据随时可供业务用户使用,以用于报告和分析目的。这是dimensional database
- 它是主要事务数据库的非规范化形式(最有可能在 3NF 中)。
但是,正如您所知,所有企业都有不同的支持系统,这些系统也会以电子表格, csvs 和 flatfiles 的形式引入数据>。此数据通常用于单个域,例如呼叫中心,集合等等。我们可以将每个这样的单独域数据称为数据集市。来自不同域的数据也由ETL工具操作,并且denormalized
以其自己的方式。当我们将所有datamarts
和dimensional databases
结合起来解决业务报告和分析问题时,我们会得到一个数据仓库。
假设您有一个主要的应用程序,在网站上运行 - 这是您的主要业务。您在该网站上拥有所有主要的消费者互动。这将为您提供primary dimensional database
。对于消费者支持,您可能有一个单独的解决方案,例如贵公司实施的 Avaya 或 Genesys - 它们将为您提供相同(或可能是不同服务器)的数据。您准备ETLs
将数据加载到您自己的服务器上。您将结果数据称为data marts
。你将所有这些东西结合起来得到一个data warehouse
。我知道,我是重复的,但这是故意的。