Aracılığıyla paylaş


Plan zorlamak anlama

KULLANIN plan sorgu ipucu sorgu için belirtilen sorgu planı kullanmak için sorgu iyileştiricisi zorlamak için kullanılır.KULLANIN plan sorgu İpucu xml biçiminde bir bağımsız değişken olarak kullanmak istediğiniz sorgu planı kabul ederek çalışır.use planla, planlarını neden yavaş yürütme süreleriyle, ancak daha iyi planları var bildiğiniz sorguları için kullanılabilir.Ortak bir senaryoda iyi bir önceki sürümünde yürütülen sorgular içerebilir SQL Server, ancak yükseltilmiş bir sürüm altında bir hizmet paketi veya bir tam sürüm yükseltme. Bu yükseltme mi kötü gerçekleştirmekÇoğu saat, çoğu sorgu yürütme süreleriyle eşit veya daha iyi performans için bir yükseltme müşteri adayları; Ancak, bazı özel durumlar olabilir.use plan sorgu ipucu tarafından seçilen bir sorgu planı, bu gibi durumlarda işlemek üzere kullanılabilir durumda sorgu iyileştiricisi bir önceki ürün sürüm yükseltme sonrasında seçilen üzerinden tercih edilir.

Sorgular dağıtılan uygulamalar içinde en düşük performans giderirken use plan sorgu ipucu planı kılavuzları ile birlikte kullanılabilir.Plan kılavuzları giremez veya doğrudan uygulamayı değiştirmek istiyor musunuz, sorgular sorgu ipuçları uygulamak için kullanılır.Plan kılavuzları hakkında daha fazla bilgi için bkz: Plan kılavuzları kullanarak sorgular dağıtılan uygulamalar içinde en iyi duruma getirme.use plan sorgu ipucu planı kılavuzları nasıl uygulanabilir gösteren ayrıntılı senaryolar için bkz: Plan zorlama senaryosu: Bir sorgu planı belirtir bir Plan kılavuzu oluşturma ve Plan zorlama senaryosu: Yeniden bir sorgudan alınan bir Plan zorlamak için bir Plan kılavuz oluşturmak.

Plan zorlama, çoğu sorgu türleri için kullanılabilir.Bu tablolar, kümelenmiş ve kümelenmemiş dizinleri, dizin oluşturulmuş görünümler ve bölümlenmiş tablolar ve dizinler sorguları içerir.Birlikte kullanımını PLANLAMAK belirtilebilir veri işleme dili (dml) deyimi eklemek, GÜNCELLEŞTİRMEK, birleştirme veya silme.Not değişiklikleri ekleme veya bir dizin gibi veritabanı şeması için use plan İpucu içinde belirtilen plan geçersiz kılmak.Geçersiz bir planı doğrudan sorguda kullanım planı belirtildiğinde, bu da sorgunun başarısız olmasına neden olur.Geçersiz bir planı plan Kılavuzu'nda kullanım planı belirtildiğinde, sorgunun başarısız olmasına neden olur; Ancak, plan ipucu kullanmadan derlenmiş ve en iyi seçim olabilir.PLANI kullanmak ipucu bir plan Kılavuzu içinde kullanıldığında, kullanabileceğiniz sys.fn_validate_plan_guide planın geçerliliğini doğrulamak için işlev.Temel sonuçlar , işlevini, plan Kılavuzu bırakma ve sorgu retune veya veritabanı tasarımını değiştirmek karar verebilirsiniz.Örneğin, plan Kılavuzu'nda belirtilen dizin yeniden.

use plan sorgu ipucu ile oluşturulan sorgu planları yalnızca gibi diğer sorgu planları önbelleğe alınır.

Plan zorlamak sınırlamaları

Bir tek, statik yürütme planı için bir sorgu planı zorlamak sınırlar.Plan zorlama yeteneğini kaldırır sorgu iyileştiricisi veri boyutları ve dağıtımları, yeni dizinler ve diğer değişkenler uyum için.Bu nedenle, plan zorlamak, kullandı, performans sorunlarına neden olabilir.Plan zorlamak, yalnızca tam olarak sorgu performansı, yeni ve doğru istatistik kullanma gibi artırmak için diğer seçenekleri araştırma sonrasında kullanılmalıdır ve dizinler en iyi duruma getirilmiş.Plan zorlamak idareli kullanılmalıdır ve yalnızca deneyimli veritabanı yöneticileri ve geliştiricileri tarafından performans sorunları ve veritabanı ve uygulamalarına değişen ortamı hakkında bilgi sahibi kim.

use plan sorgu ipucu daıtılan uygulamayı bir sorgunun derleme etkilemenin kullanırken, ipucu, yerine bir plan Kılavuzu içinde doğrudan uygulamaya katıştırılan kullanılmalıdır.Bunu yaptığınızda, aşağıdaki gizli tehlikelerini ele alabilirsiniz:

  • Değiştirme veya değiştirme veya derlenmesine ipucu kaldırın.Sınırlı durumlarda uygulanan bir sürümünde ipucu use plan SQL Server uygulama ileride yayımlanacak bir hizmet paketi veya sürüm sürüm.Bu nedenle, uygulama dağıtıldıktan sonra use planla ipucu kaldırmak veya değiştirmek olabilir.

  • Büyük bir ipucu kullanarak doğrudan sorguda önlenebilir.Bu sorguyu okumayı kolaylaştırır.

    Önemli notÖnemli

    Kullanım planı kullanan bir plan kılavuzu oluşturma sırasında sınama sırasında imleç isteği ile plan zorlamak istediğiniz sorguyu genellikle teslim olup olmadığını doğrulamanız gerekir.Sorgu planları için imleç-tabanlı sorgular farklı kullanılanlardan olmayanimleç sorgular.Bu nedenle, geçerli imleç isteği ile gönderilen sorgu use plan ipucu belirtme bir plan kılavuz oluşturmak için plan Kılavuzu bir imleç planı belirtmeniz gerekir.Daha fazla bilgi için bkz: use plan sorgu ipucu imleçler ile sorgular kullanma.

Plan zorlamak için aşağıdaki sorgu türleri desteklenmez:

  • Dinamik, anahtar kümesi kullanımlı ve salt ileri imleçler ile sorgular.Statik ve fast-forward yalnızca imleçler desteklenir.Daha fazla bilgi için bkz: use plan sorgu ipucu imleçler ile sorgular kullanma.

  • Dağıtılmış sorgular.

  • Tam metin sorguları.

Ayrıca bkz.

Kavramlar

Diğer Kaynaklar