用于绘制最佳实践的SQL长流程统计信息生成

时间:2013-02-25 20:20:13

标签: c# sql-server sql-server-2008

我有一些SQL Server存储过程可以为C#Web应用程序中的图表生成统计数据。

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

某些Store过程需要5分钟以上才能生成数据,但Web用户无需动态查看信息。也许每2-3小时更新一次图表。

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

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

有关如何处理此事的任何线索?

感谢帮助

2 个答案:

答案 0 :(得分: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

答案 1 :(得分:0)

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

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

索引视图的优势示例及其实现方法可以在http://msdn.microsoft.com/en-us/library/dd171921(v=sql.100).aspx

找到