Aracılığıyla paylaş


Bit eşlem süzgeçleri içeren planları yürütme yorumlama

Bit eşlem süzme kullanan paralel sorgu yürütme planları sahip bir Bit eşlem işleci (bir veya daha çok işleç alt ağaçlar).Bir bit eşlem süzgeç değerler ' küçük bir gösterimini kullanan bir tablo ikinci satırları süzme için işleç ağaçtan bir bölümünde tablo konsol ağacında, başka bir kısmında.Erken sorguda gerekli olmayan satır kaldırarak sonraki işleçleri çalışmak için daha az bir satır vardır ve sorguyu genel performansını artırır.

Içinde SQL Server 2008, bit eşlem süzme paralel sorgu planındaki sonra en iyi duruma getirme, gibi sunulan SQL Server 2005, veya dinamik olarak sorgu planı oluşturma sırasında sorgu iyileştiricisi tarafından kullanılmaya başlandı. Süzgeç dinamik olarak sunulan, onu olarak adlandırılmıştır bir bit eşlem süzgeç en iyi duruma getirilmiş.Bir sorgu planı, her iki bit eşlem süzgeçleri içerebilir ve bit eşlem süzgeçleri en iyi duruma getirilmiş.sorgu iyileştiricisi, bir bit eşlem süzgeç veya en iyi duruma getirilmiş bir bit eşlem süzgeç yararlı seçmeli ve hangi işleci filtre uygulandıktan belirler.Daha fazla bilgi için bkz:Bit eşlem süzme yoluyla veri ambar sorgu performansı en iyi duruma getirme.

Bit eşlem süzme içeren yürütme planı çözümleme, verileri, planı nasıl akacağını ve süzme uygulanır bilmek önemlidir.Bit eşlem süzme ve en iyi duruma getirilmiş bir bit eşlem yapı Giriş (boyut tablosu) tarafında oluşturulan bir karma birleştirmek; ancak, gerçek süzme genellikle yapılır içinde Parallelism Giriş yoklama üzerinde olan işleç (olgu tablosu) yan karma birleşim. Bit eşlem süzgeç bir tamsayı sütun dayandığında, ancak, süzgeci doğrudan ilk tablo ya da dizin taramayı operasyona uygulanabilir yerine Parallelism işleç.Bu teknik, satır içinde en iyi duruma getirme denir.

Bit eşlem süzgeçleri Showplans içinde görüntüleme

Bit eşlem süzgeçleri Sorgu planını görüntülemek için , küme seçenekleri SHOWPLAN_ALL, SHOWPLAN_TEXT veya SHOWPLAN_XML kullanın veya tıklatın Fiili yürütme planı içerir. in SQL Server Management Studio.

Bir XML gösterim planı üretilen, bit eşlem (fiziksel ve mantıksal işleçleri şu şekilde listelenir:

<NodeId relOp "2" PhysicalOp = "Bit eşlem" LogicalOp = EstimateRows "Bit eşlem oluşturma" = "88" EstimateIO = "0" EstimateCPU = "0.0718125" AvgRowSize = "6893" EstimatedTotalSubtreeCost = "0.229385" = "1" EstimateRebinds paralel olarak = "0" EstimateRewinds = = "0">

Bir bit eşlem filtre uygulandığı işleç biteşleminde, bulunduğu Sütun araştırması özellik.

En iyi duruma getirilmiş bir bit eşlem filtre uygulandığı işleç PROBE([Opt_Bitmap1001], {[biçiminde bir bit eşlem yüklemi içerir.sütun_adı} [, 'DE SATIR']).Bit eşlem yüklemi aşağıdaki bilgileri raporlar:

  • Bit eşlem adı olarak ada karşılık gelen Bit eşlem oluştur işleç.'Opt_' önek için bir en iyi duruma getirilmiş bir bit eşlem süzgecinin kullanılacağını gösterir.

  • Karşı probed sütun.Ağacı içinde süzülmüş veri akışı noktasıdır.

  • Bit eşlem yoklama olup gerçekleştirilir, satır.Satır en iyi duruma getirme kullanıldığında, bit eşlem yoklama IN SATıR parametresi ile çağrılır.Aksi halde, bu parametre eksik.

Örnek

Aşağıdaki örnek, nasıl en iyi duruma getirilmiş bir bit eşlem gösterir süzme yürütme planı kullanılır.Iki tablo boyut DimProduct ve DimCustomer olgu tablosu için katılın. FactInternetSales bir birincil anahtar-için-yabancı-anahtar birleşimi tek tamsayıdan oluşan bir sütun üzerinde kullanıyor.

USE AdventureWorksDW;
GO
SELECT * 
FROM dbo.FactInternetSales AS F
INNER JOIN dbo.DimProduct AS D1 ON F.ProductKey = D1.ProductKey
INNER JOIN dbo.DimCustomer AS D2 ON F.CustomerKey = D2.CustomerKey
WHERE D1.StandardCost <= 30 AND D2.YearlyIncome <= 50000;

Aşağıda, bir en iyi duruma getirilmiş bir bit eşlem süzgecinin boyut tablosu taranan olmayan niteleme satır olgu tablosundan ortadan kaldırmak için gereken bilgileri bilinen sonra her iki boyut tablolarından işleç alt ağacı oluşturulduğunu gösterir.Süzgeç sonra uygulanan olgu tablosu en erken olası konumda Tablo tarama işleç.Filtre uygulama, tablo tarama özellikleri doğrulama bölümünde gösterilir.Doğrulama içinde gösterilen bilgileri her ikisi de Opt_Bitmap1008 ve Opt_Bitmap1009 döndürülen satırları sınırlayın için kullanılan bit eşlem süzgeçleri optimize gösterir olgu tablosu.Içinde karşı sütunları probed olgu tablosu listelenen [F]. [CustomerKey] ve [F]. [ProductKey].Bu satır içinde en iyi duruma getirme işlemde kullanılan gösteren IN SATıR parametresi gösterilir.Satır en iyi duruma getirme mümkün değilse, bit eşlem süzme uygulandığı Parallelism işleç.

SQL Server query plan with bitmap filters.

Resim üzerinde bağlı olarak, aşağıdaki kapanışlar yapılabilir:

  • En iyi duruma getirilmiş bir bit eşlem süzgeçleri iki alt ağacı oluşturulur.

  • Her iki filtrenin dinamik olarak için tek bir (uygulanırTablo tarama) işleç.

  • En iyi duruma getirilmiş bir bit eşlem süzgeç en seçime bağlı olarak ilk uygulanan tahmini.

  • Boyut tablolarından olgu tablonun birleştirilen sütun, satır, en iyi duruma getirme kullanımını sağlar.Tek tamsayıdan oluşan bir sütun üzerinde başka bir deyişle, birleştirmek temel alır.

  • Sorgudaki satırları arasında akan sınırlı sayıda kaynaklanan en erken olası nokta uygulanan süzgeç Tablo tarama işlemi aracılığıyla ağacında kalan işletmenleri.