0

我有一个查询,它从几乎 125 个不同的表中提取数据,我创建了大约 13 个嵌套存储过程,调用其他存储过程来提取所有需要的数据。Surprise Surprise Surprise 查询需要很长时间才能执行,有时我必须终止他的连接并重新运行它。

有人建议我使用暂存表,使用 SSIS 包将所需数据移到那里并从那里提取数据,但我有点不愿意使用 SSIS,因为我对 SSIS 不太满意,并且有时会请求此报告,并且为一份报告移动大约 10-15 GB 的数据似乎很麻烦。

任何建议任何想法请让这个地狱般的任务更简单,更快,更不容易出错???

4

1 回答 1

1

创建报告数据库。以某种频率(每小时、每天或满足报告用户需求的任何频率)将数据从事务数据库 ETL 到报告数据库。

您可以使用 SSIS,也可以选择为 ETL 执行一些存储过程。无论如何,您可能会使用 SQL 代理作业来安排它。

最后,在设计报表数据库方面,考虑以有助于报表性能的方式转换数据。许多人为了报告的目的“扁平化”或去规范化数据。我们将事务数据 ETL 到使用“星型模式”模式的数据仓库中,并且我们还有一个 Analysis Services 数据库和 MDX 报告。很可能您不需要为一份报告走那么远,但是,这在报告和 BI 优化数据结构的同一路径上更进一步。

于 2013-10-17T20:24:14.647 回答