繁体   English   中英

在Reporting Services中优化报告

[英]Optimize Reporting in Reporting Services

我有10个报告和250个客户。 所有报告均由我的客户运行,每个报告都带有参数。 根据参数,相同的报告将连接到不同的数据库并获得结果。 我知道使用不同的参数缓存不是一种选择。 但是我不想在白天对实时数据运行这些报告。 我有什么可以做的事情(快照,订阅)可以在一夜之间运行并发送这些报告或保存可以在接下来的24小时使用的快照?

提前致谢。

正如M Fredrickson所建议的,订阅可能在这里起作用,这取决于要发送的不同报告的数量。

另一种方法是将数据查询合并到单个共享数据源。 共享数据源可以启用缓存,并且有多个选项可用于刷新该缓存,例如在首次访问时或在定时的时间表上。 有关更多详细信息,请参见MSDN

缓存的数据源面临的挑战是弄清楚如何通过将参数移动到其他位置(通常是报表中的数据集过滤器)或移到单个数据元素(例如Tablix)的过滤器中来从实际数据查询中删除所有参数。

我使用这种方法在一夜之间刷新10分钟的查询,然后在不到30秒的时间内整天返回报告,并使用许多可能的参数过滤数据集。

您还可以通过在报表中使用多个数据集(一些缓存的数据集和一些不缓存的数据集)将这种方法与其他方法混合使用。

我建议走订阅路线。 尽管您可以做一些花哨的技巧来获取单个报告的多个快照 ,但使用订阅会更干净。

但是,由于您有250个客户和10个不同的报表,因此我怀疑您是否想在Report Manager中配置和管理2500个不同的订阅...因此,我建议您为每个报表创建数据驱动的订阅报告。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM