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



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

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

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

所以我们想到的另一个选择是SSRS,直接从我们的服务器托管,人们可以从这里下载Excel副本,然后开始他们的快乐之路。

我从来没有使用过SSRS,我想知道它是否有类似于Power BI的系统,在Power BI中,您定义了每天刷新的频率,这使它成为最终的。因此,Power BI数据集每天刷新两次,它就是它。

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

我们如何定义一个有意义的控件呢?我们是否可以严格要求数据集在每天下午14:30刷新一次?如果有,那是怎么回事?

任何帮助将是非常感激的家伙!

有几种方法可以做到这一点,这里只是几个…

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

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

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

另一种选择是将查询结果转储到一个表中,并使用Agent作业安排该进程每天运行两次。把报告指向这张表,你就可以走了。

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

相关内容

  • 没有找到相关文章

最新更新