【问题标题】:Copying tables for reporting purposes to a separate database将用于报告目的的表复制到单独的数据库
【发布时间】:2017-03-14 09:40:39
【问题描述】:

我有一个包含大约 60 个表的事务性数据库 (SQL Server 2014),并且需要为报告目的创建一个单独的报告数据库。

这只需要每 24 小时运行一次 - 但是我需要将数据移动到一个不同的、对查询更友好的架构中!

因此,我希望我可以在事务数据库上创建一些视图,然后在报告数据库中基于该视图创建一个表并复制数据。

我最初想编写一个计划的 Windows 服务,它以某种方式从表中提取数据并插入到新的表中,但后来想到如果架构发生变化,它必须在两个地方更新,并且还认为肯定是企业 SQL Server 许可证一定有一些技巧。

然后我查看了特定表上的“数据库镜像”,但这看起来很快就会被弃用。

“日志传送”看起来更像是一种灾难恢复解决方案!

是否有解决此问题的行业“最佳”方法?

【问题讨论】:

  • 听起来像是计划备份。
  • 我刚刚发现实际上,我们将运行一个对查询更友好的不同模式!我会编辑我的帖子

标签: sql-server database reporting sql-server-2014


【解决方案1】:

您需要设计一个 ETL 流程来从源数据库中提取数据、对其进行转换并将其加载到您的报告数据库中。您可以使用许多工具来简化此操作。您可以使用 SSIS、Azure SQL 的 Azure 数据工厂,还有许多其他选项。您可以使用 SQL 代理来安排存储过程来运行您的 ETL 过程。

您的目标数据库看起来与源数据库大不相同。确实没有快速的方法(如安排备份那样快速)来完成此操作。有很多关于数据仓库和 ETL 设计的信息可供您使用,以帮助您决定如何进行。

【讨论】:

  • 谢谢 - 我会看看 SSIS!
猜你喜欢
  • 1970-01-01
  • 2023-03-07
  • 2013-12-04
  • 1970-01-01
  • 2010-10-30
  • 2020-08-21
  • 1970-01-01
  • 2010-09-05
  • 1970-01-01
相关资源
最近更新 更多