Aracılığıyla paylaş


Bulma ve benzer sorgular, sorgu ve Query kullanarak ayarlama sağlamalarını planlanır.

Sorgularda yoğun kaynak arama, bulma ve topluca önemli bir sistem kaynağı tüketmek benzer sorguları ayarlama düşünmelisiniz.The sys.dm_exec_query_stats and sys.dm_exec_requests dynamic management views provide query hash and query plan hash values that you can use to help determine the toplamak kaynak usage for similar queries and similar query execution plans.

Bu konu, sorgu planı karma, karma değerlerini birikmeli maliyet benzer sorgu yürütme planları ve bulmak için kullanım örnekleri sağlar ve benzer sorgular ve yürütme planları performansı artırmak için bir yol sunar ve sorgu karma tanımlar.

Query hash ve sorgu planı karma anlama

Sorgu karma sorguya dayalı olarak hesaplanır ve benzer mantığı ile sorguları tanımlamak için kullanılan bir ikili karma değerdir.sorgu iyileştiricisi, sorgu derlenirken sorgu karmayı hesaplar.Yalnızca hazır bilgi değerleri farklı sorgularda aynı sorguyu karma değere sahip.Örneğin, aşağıdaki iki sorgu aynı sorgu karmaya sahip kullanıcılar tarafından yalnızca atanan hazır bilgi değerleri farklı olduğundan FirstName ve LastName.

Mantıksal kendi farklılıklar olduğundan, aşağıdaki iki sorgu farklı sorgu sağlamalarının sahip (VE ve VEYA) ve yalnızca rakamları için sınırlı değildir.

Sorgu planı karma üzerinde sorgu yürütme planı hesaplanır ve benzer bir sorgu yürütme planları tanımlamak için kullanılan bir ikili karma değerdir.sorgu iyileştiricisi, yürütme planı değerleri mantıksal ve fiziksel işleçler ve önemli işleç öznitelikleri alt küme küme kümesini kullanarak, sorgu derlenirken sorgu planı karmayı hesaplar.Önemli işleç özniteliklerinin alt küme küme aynı öznitelik değerlerinin yanı sıra aynı fiziksel ve mantıksal işleç ağaç yapısı, sahip bir sorgu yürütme planları sorgu planı aynı karmaya sahip olacaktır.

Aynı sorgu sağlamalarının sorgularla farklı veri çalıştırıldığında, sorgu sonuçlarının önem farklar farklı sorgu planı sağlamalarının kaynaklanan, farklı sorgu yürütme planları seçmek sorgu iyileştiricisi neden olabilir.

Aşağıdaki örnek, iki'ne benzer sorguları gösterir sorgu aynı karmaya sahip olabilir, ancak aynı sorgu yürütme planı sahip olmayabilirsiniz.Karma değerlerini görüntülemek için iki yol vardır: son SELECT deyiminin ve burada listelendikleri gösterim planı XMLStmtSimple öznitelik değerleri olarak öğesiQueryHash and QueryPlanHash.

Varsa, önem için tahmin eder ProductID = 3 öğeler yüksek sorgu iyileştiricisi sorgu planı dizin tarama işlecini kullanabilirsiniz. Önem için Productıd tahminleri, = 1 alt sorgu iyileştiricisi dizin kullanabilir misiniz arama işleç.

Özgünlük karma değerleri için

Karma çakışmaları hangi farklı sorgularda ve sorgu planları, aynı karma değere sahip olması olasıdır.Karma çakışması olasılığı çok küçük ve olası oluşmaya olsa da, sorgu benzersizliğini üzerinde bağımlı uygulamaları, karma ve planı karma hataları, yinelenen bir karma değerleri nedeniyle olabilir sorgula.Örneğin, sorgu sağlama ve sorgu planı karma bir birincil anahtar veya benzersiz bir sütun kullanılmamalıdır.

Sorgular, Birikmeli Maliyet bulma

Aşağıdaki örnek, ortalama CPU göre ilk beş sorguları hakkında bilgi verir saat.Bu örnekte, mantıksal olarak eşdeğer sorgularını, kendi toplu kaynak tüketimini gruplanması sorguları, sorguyu karma göre toplar.

Aşağıdaki örnek için ortalama CPU göre ilk beş sorgu planları hakkında bilgi verir saat.Bu örnek, aynı karmaya sorgu planı sorgularını, kendi toplu kaynak tüketimini gruplanması sorguları, sorgu planı karma göre toplar.

Query hash ve sorgu planı karma kullanarak sorgu performansı artırma

Izleme ve yürütme planı değişiklikleri öğrenmek

Performans degradations veya geliştirmeleri sorguda derlenmiş çekirdekler ve farklı sorgu yürütme planı bir sorgu iyileştiricisi üreten oluşabilir.Sorgu planı karma kullanarak, yakalama, depolamak ve sorgu yürütme planları zamanla karşılaştırın.Planlar değişti hangi yürütme performans verilerinizi ve yapılandırma değişiklikleri etkisini tanılamanıza yardımcı olduğunu bilerek.

Sistem değiştirme, sonra yapılandırma, özgün sorgu planı karma değerlerini kritik sorgularını sorgu planı karma değerlerini karşılaştırabilirsiniz.Sorgu planı karma değerleri arasındaki farklılıklar, sistem yapılandırmasını değiştirdiğinizde, önemli sorguları için güncelleştirilmiş sorgu yürütme planları sonuçlandı söyleyebilirsiniz.Geçerli bir uzun süre çalışan sorgu için yürütme sys.dm_exec_requests, sorgu planı karma değeri iyi performans için bilinen, temel sorgu planı karma değerden, farklıysa durdurmaya da karar verebilirsiniz.

Önbelleğe alınmış bir planı yeniden geliştirme için benzer sorgular parameterize

Bir sorgu aynı sorgu sağlama ve sorgu planı karma, parametreli hale getirilmiş bir sorguya oluşturarak performansı.Bir sorgu parametresi birden çok sorgularla bir hazır bilgi değerleri yerine arama önbelleğe alınan sorgu yürütme planı yeniden kullanılmasını sağlar.Önbelleğe alınan sorgu planlarını yeniden yararları hakkında daha fazla bilgi için bkz: Yürütme planı önbelleğe alma ve yeniden.

Uygulamayı değiştirebilir, benzer bir sonuç elde etmek için Zorlanmış parameterization ile şablon planı kılavuzları kullanabilirsiniz.Daha fazla bilgi için bkz:Plan Kılavuzları'nı kullanarak sorgu Parameterization davranışı belirleme.