sql-server – SQL Server – 用于报告的单独数据库?

前端之家收集整理的这篇文章主要介绍了sql-server – SQL Server – 用于报告的单独数据库?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我们的sql Server上,我们为每个Web应用程序提供了一个数据库.对于报告,我们使用Reporting Services,所有报告数据(包括报告参数)都来自存储过程.

存储过程与报告中的数据位于同一数据库中.因此,例如,为Stock报告提供服务的过程在Stock数据库中.某些报告显示来自多个数据库的信息,然后proc将位于其中一个源数据库中.报告参数从Enterprise数据库中的procs获取数据,这些数据库包含商店,员工等数据.

这意味着所有报告至少具有与Enterprise数据库的连接以及与另一个数据库的另一个连接 – 有时甚至更多.

我的问题是:将报告过程转移到单独的“报告”数据库中是否有好处.我知道将报告移动到另一台服务器上的好处,我不是在谈论它 – 这将在同一台服务器上.

可能影响到这一点的事情是:

>报表有多个数据库连接会影响报表的速度吗?
>将报告proc与数据放在一个单独的数据库中会阻止我们使用索引视图吗?
>您是否发现在单独的数据库中管理报告更容易/更难?

请让我知道你在想什么.

解决方法

答案是:是的,这样做有好处.关于运营数据库的报告将使用大量资源,并将干扰运营​​系统的性能.请记住,数据库性能受到机械约束(磁盘磁头来回移动和旋转延迟,因为我们等待正确的扇区使其出现在头部下方).您有两种广泛的报告策略选择:

> Replicate your database到另一台服务器上并将报告sprocs移到它上面.报告在复制的服务器上运行.这是最省力的,可以重用现有的报告和存储过程.
>构建一个Data Warehouse,整​​合来自您的生产系统的数据并将其转换为a form that is much friendlier for reporting.如果您有很多临时统计报告可以通过“昨天的业务结束”快照完成,数据仓库可能是更好的方法.

猜你在找的MsSQL相关文章