【问题标题】:Creating a Datawarehouse创建数据仓库
【发布时间】:2021-04-23 14:09:30
【问题描述】:

目前,我们的团队遇到了一个主要的数据库管理/数据管理问题,其中正在构建数百个数据库并将其用于次要/一次性应用程序,而应用程序实际上应该从现有数据库中提取。

由于我们的安全性如此严格,这些权威系统的所有者将不允许其他人以一致的(应用必要的)速率从他们那里提取数据,而是允许单个应用每周进行一次提取,并且这些数据是然后交给组织。

我被要求将所有公开可用的(每周快照)编译到一个数据仓库中,供最终用户使用。我们实际上是在谈论 30-40 个数据库,每个数据库都有数十万条记录。

将其转变为数据仓库的最佳方式是什么?创建一个 SQL 服务器并将每个服务器视为服务器上自己的数据库?至于我不太担心的单个应用程序连接,我真的很想知道存储所有数据以供消费的最佳做法是什么。

【问题讨论】:

    标签: sql sql-server database


    【解决方案1】:

    您所描述的更像是一个简单的数据湖。如果您被要求的只是一个让现有数据保持原样的地方,那么可以肯定的是,直接将所有 30-40 个数据库拉到一个新服务器上就可以了。需要注意的一件事是,如果他们正在创建 Database Snapshots,那么这些在这里将无济于事。使用实际的数据库备份,很容易构建一个将这些备份复制并恢复到新服务器的过程。这是假设所有源都在 SQL Server 上。

    “数据仓库”意味着除此之外的特定级别的组织,以促进跨多个来源的数据聚合报告。通常,您会识别数据库之间共享的任何概念,并为每个概念创建一个统一表,然后创建一个 ETL(提取、转换、加载)过程来标准化来自每个源的数据并将其移动到这些统一表中。这将是一个人建造的大型电梯。您可以阅读大量资源来帮助您入门——Ralph Kimball 的 The Data Warehouse Toolkit 是一本综合指南。

    在任何一种情况下,您可能想要研究的工具是SSIS。它适用于跨服务器复制数据,并具有适用于多个不同 RDBMS 平台的驱动程序。您可以从 SQL 代理计划 SSIS 包。它还有其他有助于数据仓库的功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多