Reporting services SSRS如何为数据集创建定时刷新

Reporting services SSRS如何为数据集创建定时刷新,reporting-services,ssrs-2012,ssrs-tablix,Reporting Services,Ssrs 2012,Ssrs Tablix,所以我在MSSQL中有一个视图,PowerBiCloud每天自动读取数据两次 由于Power BI已被证明不可靠-刷新失败等-我们正在寻找其他替代方案 目前,我们已经通过Excel的Power Query让人们直接访问MSSQL,但是由于查询本身是一件大事,我们不希望5~6个人同时点击刷新而导致任何问题。我们的查询只是CPU密集型的 因此,我们想到的另一个替代方案是SSRS,它直接从我们的服务器托管,人们可以从中下载Excel副本并开始他们的快乐生活 我从未像以前一样使用过SSR,我想知道它是否

所以我在MSSQL中有一个视图,PowerBiCloud每天自动读取数据两次

由于Power BI已被证明不可靠-刷新失败等-我们正在寻找其他替代方案

目前,我们已经通过Excel的Power Query让人们直接访问MSSQL,但是由于查询本身是一件大事,我们不希望5~6个人同时点击刷新而导致任何问题。我们的查询只是CPU密集型的

因此,我们想到的另一个替代方案是SSRS,它直接从我们的服务器托管,人们可以从中下载Excel副本并开始他们的快乐生活

我从未像以前一样使用过SSR,我想知道它是否有类似于Power BI的系统,在该系统中,您定义了每天刷新的频率,这使它成为最终版本。因此,Power BI数据集每天更新两次,就是这样

在SSRS中,似乎每次有人运行报告,然后运行视图时,它都会刷新

我们如何定义对此的有意义的控制?例如,我们能否严格要求数据集每天14:30刷新一次?如果是,怎么做


任何帮助都将不胜感激

有几种方法可以做到这一点,这里有几种

SSRS支持数据集缓存。您可以定义数据集的缓存副本将过期的时间段,也可以指定缓存副本按计划过期。请注意,这不会刷新数据集

假设您将到期时间设置为4小时,这意味着第一个运行报表的人将执行查询,并且数据集将被缓存—这可能需要一些时间,具体取决于您的查询。在4小时窗口内运行同一报表的下一个用户将重新使用数据集的缓存副本,如果在5小时后有人运行报表,则将再次运行查询,并在接下来的4小时内缓存数据集的新副本,以此类推

这样做的好处是,如果报表一天没有运行,则不需要执行数据集查询,缺点是每四个小时,第一个用户就会等待查询运行

另一种选择是将查询结果转储到表中,并使用代理作业安排流程每天运行两次。把报告指向这张桌子,你就可以开始了

这样做的好处是用户可以更快地获得报告结果(除非他们在执行刷新作业时运行报告),缺点是无论是否需要,查询都将每天执行两次