Linq 如何减少数据库';压力
我有一个数据库(sql server 2005),现在表中有大约100000条名为users的记录,当我使用linq to sql进行查询时,速度越来越慢。我如何进行一些操作以提高速度?分析您的查询并向表中添加一些索引可能会有所帮助Linq 如何减少数据库';压力,linq,sql-server-2005,Linq,Sql Server 2005,我有一个数据库(sql server 2005),现在表中有大约100000条名为users的记录,当我使用linq to sql进行查询时,速度越来越慢。我如何进行一些操作以提高速度?分析您的查询并向表中添加一些索引可能会有所帮助 要获得更具体的答案,请发布更具体的信息(表结构、索引、L2S生成的sql代码等)分析查询并向表中添加一些索引可能会有所帮助 要获得更具体的答案,请发布更具体的信息(表结构、索引、sql代码L2S生成等)使用存储过程,然后使用linq To sql获得所需的行,这将提
要获得更具体的答案,请发布更具体的信息(表结构、索引、L2S生成的sql代码等)分析查询并向表中添加一些索引可能会有所帮助
要获得更具体的答案,请发布更具体的信息(表结构、索引、sql代码L2S生成等)使用存储过程,然后使用linq To sql获得所需的行,这将提高性能。使用存储过程,然后使用linq To sql获得所需的行,这将提供性能。您可以(按优先顺序)
- 将查询另存为存储过程
- 向用户添加索引 表,用于查询/排序的内容
- 分析您的查询 (如果是复杂的),看看是否有一种资源密集度较低的方法 做这件事的必要性。有图形查询分析器可以帮助您
- 作为最后的手段,不要使用LINQ,而是使用ADO.NET实体框架,它的速度要快得多。但是,只有当您已经完成了上述所有工作时,您才能看到疯狂的东西的性能改进
- 将查询另存为存储过程
- 向用户添加索引 表,用于查询/排序的内容
- 分析您的查询 (如果是复杂的),看看是否有一种资源密集度较低的方法 做这件事的必要性。有图形查询分析器可以帮助您
- 作为最后的手段,不要使用LINQ,而是使用ADO.NET实体框架,它的速度要快得多。但是,只有当您已经完成了上述所有工作时,您才能看到疯狂的东西的性能改进
在图形执行计划中,查找使用大量CPU的步骤和传输大量记录的路径。这些是您想要优化的。您可能正在某个地方进行表扫描,速度很慢,或者可能在某个地方加入了比您需要的更多的记录,速度很慢,等等。您可以使用的分析数据库访问并查看需要优化的内容的最佳工具有:
在图形执行计划中,查找使用大量CPU的步骤和传输大量记录的路径。这些是您想要优化的。可能您正在某个地方执行表扫描,速度很慢,或者可能在某个地方加入了比您需要的记录更多的记录,速度很慢,等等。向我们展示SQL查询和表结构(至少索引)。向我们展示SQL查询和表结构(至少索引)。事实上,您应该始终执行前两项,除非您的查询很简单(从用户中选择*)。在这种情况下,存储过程可能不会有帮助,但您应该始终将索引添加到要搜索的字段中,只要它们包含很大不同的非空值。(如果有很多重复项,请进行测试,因为索引实际上可能较慢)。事实上,您应该始终执行前两项,除非您的查询非常简单(从用户中选择*)。在这种情况下,存储过程可能不会有帮助,但您应该始终将索引添加到要搜索的字段中,只要它们包含很大不同的非空值。(如果有很多重复项,请进行测试,因为索引实际上可能较慢)。