1

我有一些 SQL Server Store Procs,它们为 C# Web 应用程序中的图表生成统计数据。

现在,Web 应用程序中的用户必须等待大约 5 分钟才能看到这些带有更新数据的图表,这对用户和我来说都是一种痛苦。

某些 Store procs 需要超过 5 分钟才能生成数据,但网络用户不需要即时查看信息。也许每 2-3 小时更新一次图表。

所以,我不知道解决这个问题的最佳做法是什么。

我正在考虑创建一个 Windows 服务,每 2-3 小时将调用一次 SP,然后将数据存储在不同的表中。

关于如何处理这个问题的任何线索?

感谢帮助

4

2 回答 2

0

这里有一些索引视图的链接。正如评论所说,视图允许您快速获取信息,而不是每次使用存储过程时都进行选择。阅读第二个链接以获得关于视图的非常好的解释。

MSDN http://msdn.microsoft.com/en-ca/library/ms187864%28v=sql.105%29.aspx

这里解释得很好 http://www.codeproject.com/Articles/199058/SQL-Server-Indexed-Views-Speed-Up-Your-Select-Quer

于 2013-02-25T20:38:21.080 回答
0

正如我在评论中所说,索引视图(有点像物化视图)可以提高某些常见查询的性能,而无需制作临时表之类的东西。

索引视图的好处是性能,并且不需要太多额外的编码和工作。当您创建索引视图而不是临时表时,查询导航器将(应该)知道何时利用此视图,最终用户无需指定临时表或聚合表。

可以在此处找到索引视图的好处以及如何实现它们的示例http://msdn.microsoft.com/en-us/library/dd171921(v=sql.100).aspx

于 2013-02-25T20:38:54.000 回答