sql-server – 使用LINQ时数据库的性能开销有多少?

前端之家收集整理的这篇文章主要介绍了sql-server – 使用LINQ时数据库的性能开销有多少?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
与使用C#和LINQ相比,与使用sql Server 2008后端大多数低级C的自定义优化查询相比,涉及多少数据库性能开销?

我在这里特别想到一个情况,你有一个相当数据密集的程序,并将进行数据刷新或更新至少一次每屏幕,并将有50-100个同时用户.

解决方法

在我的经验中,开销很小,只要撰写查询的人知道他/她正在做什么,并采取通常的预防措施,确保生成查询是最佳的,必要的索引到位等.换句话说,数据库的影响应该是一样的;在应用程序方面的开销最小但通常可以忽略不计.

这就是说,这有一个例外;如果单个查询生成多个聚合,则L2S提供程序将其转换为具有每个聚合的一个子查询的大型查询.对于大型表,这可能会产生重大的I / O影响,因为查询中的每个新聚合的查询的db I / O成本将以大小增加.

解决方法当然是将聚合移动到存储过程或视图. Matt Warren为替代查询提供者提供了一些示例代码,可以以更有效的方式翻译此类查询.

资源:

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=334211

http://blogs.msdn.com/mattwar/archive/2008/07/08/linq-building-an-iqueryable-provider-part-x.aspx

猜你在找的MsSQL相关文章