Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 用于图表最佳实践的SQL长流程统计数据生成_C#_Sql Server_Sql Server 2008 - Fatal编程技术网

C# 用于图表最佳实践的SQL长流程统计数据生成

C# 用于图表最佳实践的SQL长流程统计数据生成,c#,sql-server,sql-server-2008,C#,Sql Server,Sql Server 2008,我有一些SQL Server存储过程,可以为C#web应用程序中的图表生成统计数据 现在,web应用程序中的用户需要等待大约5分钟才能看到这些包含更新数据的图表,这对用户和我来说都是一件痛苦的事情 有些存储过程需要5分钟以上才能生成数据,但web用户不需要动态查看信息。可能每2-3小时更新一次图表 所以,我不知道解决这个问题的最佳做法是什么 我在考虑创建一个windows服务,每2-3小时调用一次SP,然后将数据存储在不同的表中 关于如何处理这件事有什么线索吗 感谢您的帮助这里有一些指向索引视图

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

现在,web应用程序中的用户需要等待大约5分钟才能看到这些包含更新数据的图表,这对用户和我来说都是一件痛苦的事情

有些存储过程需要5分钟以上才能生成数据,但web用户不需要动态查看信息。可能每2-3小时更新一次图表

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

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

关于如何处理这件事有什么线索吗


感谢您的帮助

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

MSDN

这里解释得很好

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

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


可以在此处找到索引视图的优点示例以及如何实现它们

您确定了哪些查询存在最严重的性能问题了吗?您可以考虑对这些查询使用索引视图。如果我记得正确的话,您可以创建这些索引视图,而不必更改任何存储过程——您的查询导航器应该知道使用索引视图,并且您可能会看到性能的提高。这似乎是代码最少的最快解决方案。我从未使用过索引视图,但听起来很合理!!我会试试看。我能看到一个好例子的链接吗?谢谢@ScotchIndexed视图是盒子里的工具。我认为现在建议将其作为不知道存储过程为何缓慢的解决方案还为时过早。索引视图没有成本。