Sorgu Planları SQL Server 2014'te Performansı Daha Kötü Değiştiriyor


10

Son zamanlarda sunucumuzu SQL Server 2008R2'den SQL Server 2014'e yükselttik. 2008R2'de iyi çalışan bir sorgumuz var, ancak şimdi 2014'te inanılmaz derecede daha yavaş çalışıyor ve kötü bir yürütme planı var.

Birkaç test yaptım ...

  1. 2014 DB'yi 2008/2012 uyumluluk moduna geri getirin.
  2. Sayfalandırmayı kullanarak sorguyu test edin.

Bunların her ikisi de SQL Server 2008R2 ile aynı ve hızlı sorguyu çalıştırdı.

SQL Server 2014'te plan neden bu kadar kötü ve sorgu çok uzun çalışıyor?

Tahmini / Fiili

Bu resim, biri 2008R2'de çalıştırdığı şekilde rownumber kullanan 2 sorgu gösterir ve ikincisi sayfalama ile düzeltmedir. Her ikisi de 2014'te koştu, ikisi de çok farklı, ancak 2008'de 2014'te sayfalandırma kullandığımızla aynı performansı görüyoruz.

Yanıtlar:


7

Bu bir sorun değil, tasarım gereğidir ve performans artışı olarak kabul edilir.

Sorgularınız beklendiği gibi çalışmazsa, bunu veritabanınızın / uygulamanızın kodunda ele almanız gerekir.

Sunucu, oturum veya sorgu düzeyinde (kullanarak OPTION (QUERYTRACEON 9481)) izleme bayrağını 9481 kullanarak eski carnality tahmincisini zorlayabilirsiniz . Bu, veritabanının uyumluluk düzeyi ne olursa olsun zorlar.

CSS Ekibinin burada yayınladığı bir ton bilgi de var .

Karlılık Tahmincisi hakkında daha ayrıntılı bir gönderi ve SQL Server 2014'teki bu işlemin etrafındaki değişiklikler örnek olarak verilmiştir.


Bu bir şey için berbat bir bahane gibi geliyor
dvdmn
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.