Aracılığıyla paylaş


Fiziksel ve mantıksal işleçleri başvurusu

İşleçleri açıklar nasıl SQL Server yürütür sorgu veya bir veri düzenleme dili (dml) deyim.sorgu iyileştiricisi İşleçleri sorguda belirtilen sonuç oluşturmak veya dml deyim içinde belirtilen işlemi gerçekleştirmek için bir sorgu planı oluşturmak için kullanır.Sorgu planı fiziksel operatörleri oluşan bir ağacıdır.

Operatörler, fiziksel ve mantıksal işleçleri olarak sınıflandırılır.Mantıksal işleçler açıklayan kavramsal bir işlem işleme sorgu ilişkisel düzey.Fiziksel işleçleri, aslında somut yöntem veya algoritması kullanılarak mantıksal işleç tarafından tanımlanan işlem uygular.Örneğin, "birleştirmek" mantıksal bir işlemi "İç içe döngüleri birleşimler" dır fiziksel bir işleç olur.

  • Mantıksal İşleçler
    Bir deyim işlemek için kullanılan ilişkisel cebirsel işlem Mantıksal işleçleri açıklar.Başka bir deyişle, mantıksal işleçler kavramsal olarak hangi işlemi gerekiyor yapılması açıklanmaktadır.

  • Fiziksel işleçleri
    Fiziksel işleçleri Mantıksal işleçleri tarafından açıklanan işlem uygular.Her fiziksel işleçleri bir nesnedir veya rutin, bir işlemi gerçekleştirir.Örneğin, bazı fiziksel işleçleri bir tablo, dizin ya da görünümde sütunları veya satırları erişin.Diğer fiziksel işleçleri diğer türdeki işlemleri gerçekleştirin: Toplam işleç hesaplar bir ifade MIN, max, TOPLA, Say veya avg içeren ve birleştirmek birleştirmek işleç farklı türleri mantıksal birleştirmek işlemlerini gerçekleştirir.

    Fiziksel işleçleri başlatma verilerini toplamak ve kapatın.Özellikle fiziksel işleç aşağıdaki üç yöntem çağrıları yanıtlayabilir:

    • Init(): Init() yönteminin kendini başlatmak fiziksel bir işleç olur ve küme kadar herhangi veri yapıları gerekli.Birçok fiziksel işleç alabilirsiniz Init() normal olarak fiziksel bir işleç yalnızca birini alır rağmen çağırır.

    • GetNext(): GetNext() yöntem ilk veya sonraki satır verilerini almak fiziksel bir işleç olur.Fiziksel işleç sıfır ya da birçok alabilirsiniz GetNext() çağrıları.

    • Close(): Close() yöntem kapanması ve bazı temizleme işlemleri gerçekleştirmek fiziksel bir işleç olur.Fiziksel bir işleç yalnızca bir alan Close() çağırın.

The GetNext() method returns one row of data, and the number of times it is called appears as ActualRows in the Showplan output that is produced by using SET STATISTICS PROFILE ON or SET STATISTICS XML ON.Bunlar hakkında daha fazla bilgi için set seçenekleri Bkz: set İSTATİSTİKLERİ profili (Transact-sql) ve set İSTATİSTİKLERİ xml (Transact-sql).

The ActualRebinds and ActualRewinds counts that appear in Showplan output refer to the number of times that the Init() method is called.Bir döngü birleştirmek iç tarafında bir işleç olmadığı sürece ActualRebinds bir eşittir ve ActualRewinds sıfıra eşittir.Bir işleç döngülü birleştirmek iç tarafında ise, rebinds ve geri sarar sayısı toplamı dış birleştirmek tarafında işlenen satır sayısı eşit olmalıdır.Birini veya daha fazlasını birleştirmek ilişkili parametreleri değiştirildi ve iç tarafı reevaluated bir yeniden bağlanma anlamına gelir.Bir geri sarma değişti ilişkili parametreleri ve önceki iç hiçbiri anlamına sonuç küme yeniden kullanılabilir.

ActualRebinds ve ActualRewinds on set İSTATİSTİKLERİ xml kullanılarak üretilen xml Showplan çıktı yok.Bunlar yalnızca için doldurulan Kümelenmemiş dizin biriktirme, Uzak sorgu, Satır sayısı biriktirme, Sıralama, Tablo biriktirme, ve tablo değerli işlev operators.ActualRebinds ve ActualRewinds için de doldurulması Assert ve filtre operatörleri, StartupExpression öznitelik true olarak küme.

Zaman ActualRebinds ve ActualRewinds varsa maddelerdeki oldukları bir xml Showplan EstimateRebinds ve EstimateRewinds.Devamsızlık olduklarında, tahmini satır sayısını belirtir (EstimateRows) gerçek satır sayısı olarak karşılaştırılabilir olduğunu (ActualRows).Not gerçek grafik Showplan çıkış sıfır gerçek rebinds ve gerçek görüntüler yok olduğunda geri sarar.Grafik Showplans hakkında daha fazla bilgi için bkz: Grafik yürütme görüntüleme (SQL Server Management Studio'yu) planları.

İlgili sayaç ActualEndOfScans, yalnızca ne zaman Showplan çıkış AYARLANMIŞ İSTATİSTİKLERİ xml kullanılarak üretilen kullanılabilir.Fiziksel bir işleç, veri akışının sonunu eriştiğinde, bu sayacın değeri bir artırılır.Fiziksel bir işleç sıfır, bir, veri akışının sonunu ulaşabilirsiniz veya birkaç kez.işleç döngülü birleştirmek iç tarafında ise rebinds ve geri sarar gibi sonuna kadar taramaları sayısı birden fazla olabilir.Taramalar sonuna küçük veya eşit sayı toplamına rebinds ve geri sarar olması gerekir.

Fiziksel işleçleri için yürütme algoritmaları karşılık gelir.Fiziksel işleçleri örnekler dizin tarama/arama, iç içe döngülü birleştirmek, birleştirmek Katıl, karma birleştirmek/toplama, akış toplama.Fiziksel işleçleri kendileriyle ilgili maliyetleri düşüktür.Her adımda bir sorgu veya dml deyim yürütme fiziksel işleç ile ilgilidir.

Eşleme fiziksel ve mantıksal işleçleri

sorgu iyileştiricisi Mantıksal işleçler oluşan bir ağaç olarak bir sorgu planı oluşturur.Sonra sorgu iyileştiricisi planı oluşturur sorgu iyileştiricisi en etkili fiziksel işleci her mantıksal işleç için seçer.sorgu iyileştiricisi Hangi fiziksel işleci bir mantıksal işleç gerçekleştireceksiniz belirlemek için maliyet tabanlı bir yaklaşım kullanır.

Genellikle, mantıksal bir işlem birden çok fiziksel işleçleri tarafından uygulanabilir.Ancak, nadiren de olsa, aynı zamanda birden fazla mantıksal işlemleri fiziksel bir işleç uygulayabilirsiniz.

Bu Bölümde

Bu bölüm aşağıdaki fiziksel ve mantıksal işleçleri açıklamalarını içerir:

Aggregate

Aralık Birleştir

Aritmetik ifade

Birleştirme birleştirmek

Onaylama işlemi

İç içe döngüler

Ata

Kümelenmemiş dizin Sil

Zaman uyumsuz Concat

Kümelenmemiş dizin Ekle

Bit eşlem

Kümelenmemiş dizin tarama

Bit eşlem oluşturma

Kümelenmemiş dizin ara

Yer işareti arama

Kümelenmemiş dizin biriktirme

Şube yeniden bölümlenir

Kümelenmemiş dizin güncelleştirmesi

Yayın

Çevrimiçi Dizin Ekle

Önbellek

Parallelism

Kümelenmiş Dizin Sil

Parametre Tablo tarama

Kümelenmiş Dizin Ekle

Kısmi toplam

Kümelenmiş dizin birleştirme

Popülasyon sorgu

Kümelenmiş dizin tarama

Sorgu yenileme

Kümelenmiş dizin ara

Uzak Sil

Kümelenmiş dizin güncelleştirmesi

Uzak dizin tarama

Daralt

Uzak dizin ara

Hesaplamak Scalar

Uzak Ekle

Bitiştirme

Uzak sorgu

Sabit tarama

Uzaktan tarama

Dönüştürme

Uzaktan güncelleştirme

Çapraz birleştirme

Repartition akışları

İmleç Catchall

Sonuç

Bildirmek

Arama RID

Sil

Sağa Anti noktalı Katıl

Silinen tarama

Sağ dış birleşim

Farklı

Sağa noktalı Katıl

Ayrı sırala

Satır sayısı biriktirme

Dağıt akışları

Segment

Dinamik

Kesimi yeniden bölümlenir

Dinleyicilerle biriktirme

Sıra

Sorgu Getir

SequenceProject

Filter

Anlık görüntü

Akış DISTINCT

Sıralama

Tam dış birleşim

Bölme

Akışları TOPLA

Biriktirme

Karma eşleştir

Akış toplama

Karma eşleştir kök

Anahtarı

Karma eşleştir Team

Tablo Sil

Eğer

Tablo Ekle

İç birleşim

Tablo Birleştir

Ekle

Tablo tarama

Eklenen tarama

Tablo biriktirme

İçsel

Tablo güncelleştirme

Yineleyici Catchall

Tablo değerli fonksiyon

Anahtar arama

Üst

Anahtar kümesi

Üst n sıralama

Dil öğesi Catchall

UDX

Yavaş biriktirme

Union

Sola Anti noktalı Katıl

Güncelleştirme

Sol dış birleştirme

While

Sol SEMI JOIN

İmleç fiziksel ve mantıksal işleçleri

Günlük satır tarama