Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunun için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Microsoft Fabric'teki SQL veritabanı
Akıllı sorgu işleme (IQP) özellik ailesi, benimsemek için en az uygulama çabasıyla mevcut iş yüklerinin performansını geliştiren geniş kapsamlı etkiye sahip özellikler içerir. Aşağıdaki grafikte, IQP özelliklerinin ailesi ve SQL Server için ilk tanıtıldıkları zaman ayrıntılarıyla gösterilmiştir. Tüm IQP özellikleri Azure SQL Managed Instance ve Azure SQL Database kullanılabilir. Bazı özellikler veritabanının uyumluluk düzeyine bağlıdır.
Akıllı sorgu işlemeye genel bakış için bu videoyu izleyin:
Akıllı sorgu işleme (IQP) özelliklerinin tanıtımları ve örnek kodu için bkz. GitHub örnek deposu.
Veritabanı için geçerli veritabanı uyumluluk düzeyini etkinleştirerek iş yüklerini akıllı sorgu işleme için otomatik olarak uygun hale getirebilirsiniz. Bunu Transact-SQL kullanarak ayarlayabilirsiniz. Örneğin:
ALTER DATABASE [WideWorldImportersDW]
SET COMPATIBILITY_LEVEL = 170;
Aşağıdaki tabloda tüm akıllı sorgu işleme özelliklerinin yanı sıra veritabanı uyumluluk düzeyine yönelik gereksinimleri de ayrıntılı olarak açıklandı. Sürüm notları ve daha ayrıntılı açıklamalar da dahil olmak üzere tüm IQP özellikleri hakkında ayrıntılı bilgi için bkz. Akıllı sorgu işleme özellikleri ayrıntılı olarak.
Azure SQL Database ve SQL Server 2025 için IQP özellikleri
| IQP Özelliği | Azure SQL Database'da desteklenir | SQL Server 2025'te (17.x) desteklenir | Description |
|---|---|---|---|
| İsteğe bağlı parametre planı iyileştirme (OPPO) | Evet, veritabanı uyumluluk düzeyi 170'den başlayarak | Evet, veritabanı uyumluluk düzeyi 170 olan SQL Server 2025 (17.x) ile başlayarak | Tek bir deyimden birden çok plan oluşturan Parametreye Duyarlı Plan İyileştirme (PSPO) geliştirmesiyle tanıtılan uyarlamalı plan iyileştirme (Multiplan) altyapısından yararlanıyor. Özellik, bir parametrenin NULL OR NOT NULLolup olmadığına bağlı olarak çalışma zamanında daha uygun bir plan seçebilir ve bu da bu tür sorgu desenleri için varsayılan olarak en iyi olmayan performansa sahip sorgular için performansı artırır. |
| İfadeler için kardinalite tahmini (CE) geri bildirimi | Evet, veritabanı uyumluluk düzeyi 170'den başlayarak | Evet, veritabanı uyumluluk düzeyi 160 olan SQL Server 2025 (17.x) ile başlayarak | Önceki yürütmelerden ders alarak ve bu ifadelerin gelecekteki yürütmelerine uygun CE modeli seçeneklerini otomatik olarak uygulayarak sorgular arasında yinelenen ifadeler için kardinalite tahminlerini geliştirmek için CE geri bildirimini genişletir. |
| OPTIMIZED_SP_EXECUTESQL | Yes | Evet, SQL Server 2025 (17.x) ile başlayarak | Derleme fırtınalarının etkisini etkili bir şekilde azaltın. Derleme fırtınası, çok sayıda sorgunun aynı anda derlendiği ve performans sorunlarına ve kaynak çekişmesiyle sonuçlanan bir durumdur. Bu özelliği etkinleştirin, böylece sp_executesql çağrıların derleme perspektifinden saklı yordamlar ve tetikleyiciler gibi nesneler gibi davranmasına izin verin. |
Azure SQL Database ve SQL Server 2022 için IQP özellikleri
| IQP Özelliği | Azure SQL Database'da desteklenir | SQL Server 2022 (16.x) ve sonraki sürümlerde desteklenir | Description |
|---|---|---|---|
| Uyarlamalı Birleşimler (Toplu İş Modu) | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Evet, SQL Server 2017'den (14.x) başlayarak veritabanı uyumluluk düzeyi 140 | Uyarlamalı birleşimler, çalışma zamanı sırasında gerçek giriş satırlarına göre dinamik olarak bir birleştirme türü seçer. |
| Yaklaşık Sayı Ayrı | Yes | Evet, SQL Server 2019'dan (15.x) itibaren | Yüksek performans ile düşük bellek tüketimi avantajıyla büyük veri senaryoları için tahminî COUNT DISTINCT sağlayın. |
| Yaklaşık Yüzdebirlik | Evet, veritabanı uyumluluk düzeyi 110'dan başlayarak | Evet, uyumluluk düzeyi 110 olan SQL Server 2022'den (16.x) başlayarak | Yaklaşık yüzdebirlik toplama işlevlerini kullanarak hızlı kararlar alınmasına yardımcı olmak için kabul edilebilir derece tabanlı hata sınırlarına sahip büyük bir veri kümesinin yüzdebirlik dilimlerini hızla hesaplayın. |
| Rowstore'da Batch Modu | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Evet, SQL Server 2019'dan (15.x) başlayarak uyumluluk düzeyi 150 | Columnstore dizinlerine gerek kalmadan CPU'ya bağlı ilişkisel DW iş yükleri için toplu iş modu sağlayın. |
| Kardinalite tahmini (CE) geri bildirimi | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Evet, uyumluluk düzeyi 160 olan SQL Server 2022'den (16.x) başlayarak | Verimsiz CE varsayımlarının düşük sorgu performansına neden olduğu iş yüklerini iyileştirmek için yinelenen sorgular için kardinalite tahminlerini otomatik olarak ayarlar. CE geri bildirimi, sorgu yürütme planı kalitesini geliştirmek için belirli bir sorguya ve veri dağıtımına daha uygun bir model varsayımı belirler ve kullanır. |
| Paralellik derecesi (DOP) geri bildirim | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Verimsiz paralelliğin performans sorunlarına neden olabileceği iş yükleri için iyileştirme yapmak üzere yinelenen sorgular için paralellik derecesini otomatik olarak ayarlar. Query Store etkinleştirilmesini gerektirir. |
| Aralıklı Yürütme | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Evet, SQL Server 2017'den (14.x) başlayarak veritabanı uyumluluk düzeyi 140 | Sabit bir tahmin yerine, ilk derlemede karşılaşılan çok deyimli tablo değerli fonksiyonun gerçek kardinalitesini kullanır. |
| Bellek tahsis geri bildirimi (Batch Modu) | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Evet, SQL Server 2017'den (14.x) başlayarak veritabanı uyumluluk düzeyi 140 | Toplu iş modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
| Bellek tahsis geri bildirimi (Satır Modu) | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Evet, veritabanı uyumluluk düzeyi 150 olan SQL Server 2019(15.x) ile başlayarak | Satır modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
| Bellek verme geri bildirimi (Yüzdebirlik) | Evet, tüm veritabanlarında etkin | Evet, veritabanı uyumluluk düzeyi 140 olan SQL Server 2022 (16.x)) ile başlayarak | Geçmiş sorgu yürütmeyi dahil ederek, bellek verme geri bildiriminin mevcut sınırlamalarını müdahale etmeden iyileştirir. |
| Memory Grant Geri Bildirimi Kalıcılığı | Evet, tüm veritabanlarında etkin | Evet, veritabanı uyumluluk düzeyi 140 olan SQL Server 2022 (16.x)) ile başlayarak | Bellek tahsisi geri bildirimini kalıcılaştıran yeni işlevler sağlar. veritabanı için ve READ_WRITE modunda Query Store etkinleştirilmesini gerektirir. |
| CE geri bildirimi kalıcılığı | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Evet, veritabanı uyumluluk düzeyi 160 olan SQL Server 2022 (16.x)) ile başlayarak | veritabanı için ve READ_WRITE modunda Query Store etkinleştirilmesini gerektirir. |
| Query Store ile Optimize edilmiş plan zorlaması | Yes | Evet, SQL Server 2022 (16.x) ile başlayarak). | Zorlamalı sorguların yinelenmesi için derleme ek yükünü azaltır. Daha fazla bilgi için bkz. Query Store ile Optimize edilmiş plan zorlama. |
| Skaler UDF Satır İçi Yerleştirme | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Evet, veritabanı uyumluluk düzeyi 150 olan SQL Server 2019(15.x) ile başlayarak | Skaler UDF'ler, çağrı sorgusuna "inlined" eşdeğer ilişkisel ifadelere dönüştürülür ve bu da genellikle önemli performans kazanımlarına neden olur. |
| Parametreye Duyarlı Plan optimizasyonu | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Evet, veritabanı uyumluluk düzeyi 160 olan SQL Server 2022'den (16.x) başlayarak | Parametre Duyarlı Plan iyileştirmesi, parametreli sorgu için tek bir önbelleğe alınmış planın, tekdüzen olmayan veri dağıtımları gibi tüm olası gelen parametre değerleri için en uygun olmadığı senaryoyu ele alır. |
| Tablo Değişkeni Ertelenmiş Derleme | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Evet, veritabanı uyumluluk düzeyi 150 olan SQL Server 2019(15.x) ile başlayarak | Sabit bir tahmin yerine ilk derlemede karşılaşılan tablo değişkeninin gerçek kardinalitesini kullanır. |
Azure SQL Managed Instance için IQP özellikleri
| IQP Özelliği | Azure SQL Managed Instance'da desteklenir | Description |
|---|---|---|
| Uyarlamalı Birleşimler (Toplu İş Modu) | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Uyarlamalı birleşimler, çalışma zamanı sırasında gerçek giriş satırlarına göre dinamik olarak bir birleştirme türü seçer. |
| Yaklaşık Sayı Ayrı | Yes | Yüksek performans ile düşük bellek tüketimi avantajıyla büyük veri senaryoları için tahminî COUNT DISTINCT sağlayın. |
| Yaklaşık Yüzdebirlik | Evet, veritabanı uyumluluk düzeyi 110'dan başlayarak | Yaklaşık yüzdebirlik toplama işlevlerini kullanarak hızlı kararlar alınmasına yardımcı olmak için kabul edilebilir derece tabanlı hata sınırlarına sahip büyük bir veri kümesinin yüzdebirlik dilimlerini hızla hesaplayın. |
| Rowstore'da Batch Modu | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Columnstore dizinlerine gerek kalmadan CPU'ya bağlı ilişkisel DW iş yükleri için toplu iş modu sağlayın. |
| Kardinalite tahmini (CE) geri bildirimi | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Verimsiz CE varsayımlarının düşük sorgu performansına neden olduğu iş yüklerini iyileştirmek için yinelenen sorgular için kardinalite tahminlerini otomatik olarak ayarlar. CE geri bildirimi, sorgu yürütme planı kalitesini geliştirmek için belirli bir sorguya ve veri dağıtımına daha uygun bir model varsayımı belirler ve kullanır. |
| İfadeler için kardinalite tahmini (CE) geri bildirimi | Evet, Azure SQL Managed Instance'da veritabanı uyumluluk düzeyi 160'tan başlayarak SQL Server 2025 veya Her zaman güncelgüncelleme ilkesi. Hayır, SQL Server 2022 güncelleştirme ilkesi için. | Önceki yürütmelerden ders alarak ve bu ifadelerin gelecekteki yürütmelerine uygun CE modeli seçeneklerini otomatik olarak uygulayarak sorgular arasında yinelenen ifadeler için kardinalite tahminlerini geliştirmek için CE geri bildirimini genişletir. |
| Paralellik derecesi (DOP) geri bildirim | Evet, Azure SQL Managed Instance'da SQL Server 2025 veya Always-up-to-dateupdate ilkesi ile veritabanı uyumluluk düzeyi 160'tan başlayarak. Hayır, SQL Server 2022 güncelleştirme ilkesi için. | Verimsiz paralelliğin performans sorunlarına neden olabileceği iş yükleri için iyileştirme yapmak üzere yinelenen sorgular için paralellik derecesini otomatik olarak ayarlar. Query Store etkinleştirilmesini gerektirir. |
| Aralıklı Yürütme | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Sabit bir tahmin yerine, ilk derlemede karşılaşılan çok deyimli tablo değerli fonksiyonun gerçek kardinalitesini kullanır. |
| Bellek tahsis geri bildirimi (Batch Modu) | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Toplu iş modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
| Bellek tahsis geri bildirimi (Satır Modu) | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Satır modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
| Bellek verme geri bildirimi (Yüzdebirlik) | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Geçmiş sorgu yürütmeyi dahil ederek, bellek verme geri bildiriminin mevcut sınırlamalarını müdahale etmeden iyileştirir. |
| Bellek İzni, CE ve DOP geri bildirim sürekliliği | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Bellek tahsisi geri bildirimini kalıcılaştıran yeni işlevler sağlar. CE ve DOP geri bildirimleri her zaman kalıcıdır. veritabanı için ve READ_WRITE modunda Query Store etkinleştirilmesini gerektirir. |
| İsteğe bağlı parametre planı iyileştirme (OPPO) | Evet, Azure SQL Managed Instance'da SQL Server 2025 veya Always-up-to-dateupdate ilkesi ile veritabanı uyumluluk düzeyi 170'den başlayarak. Hayır, SQL Server 2022 güncelleştirme ilkesi için. | Tek bir deyimden birden çok plan oluşturan Parametreye Duyarlı Plan İyileştirme (PSPO) geliştirmesiyle tanıtılan uyarlamalı plan iyileştirme (Multiplan) altyapısından yararlanıyor. Özellik, bir parametrenin NULL OR NOT NULLolup olmadığına bağlı olarak çalışma zamanında daha uygun bir plan seçebilir ve bu da bu tür sorgu desenleri için varsayılan olarak en iyi olmayan performansa sahip sorgular için performansı artırır. |
| Query Store ile Optimize edilmiş plan zorlaması | Hayır | Zorlamalı sorguların yinelenmesi için derleme ek yükünü azaltır. Daha fazla bilgi için bkz. Query Store ile Optimize edilmiş plan zorlama. |
| Parametreye Duyarlı Plan optimizasyonu | Evet, veritabanı uyumluluk düzeyi 160'tan başlayarak | Parametre Duyarlılık Planı İyileştirme, parametreli sorgu için tek bir önbelleğe alınmış planın, tekdüzen olmayan veri dağıtımları gibi tüm olası gelen parametre değerleri için en uygun olmadığı senaryoyu ele alır. |
| Skaler UDF Satır İçi Yerleştirme | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Skaler UDF'ler, çağrı sorgusuna "inlined" eşdeğer ilişkisel ifadelere dönüştürülür ve bu da genellikle önemli performans kazanımlarına neden olur. |
| Tablo Değişkeni Ertelenmiş Derleme | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Sabit bir tahmin yerine ilk derlemede karşılaşılan tablo değişkeninin gerçek kardinalitesini kullanır. |
SQL Server 2019 için IQP özellikleri
| IQP özelliği | SQL Server 2019 'da (15.x) desteklenir | Description |
|---|---|---|
| Uyarlamalı Birleşimler (Toplu İş Modu) | Evet, SQL Server 2017'den (14.x) başlayarak veritabanı uyumluluk düzeyi 140 | Uyarlamalı birleşimler, çalışma zamanı sırasında gerçek giriş satırlarına göre dinamik olarak bir birleştirme türü seçer. |
| Yaklaşık Sayı Ayrı | Yes | Yüksek performans ile düşük bellek tüketimi avantajıyla büyük veri senaryoları için tahminî COUNT DISTINCT sağlayın. |
| Rowstore'da Batch Modu | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Columnstore dizinlerine gerek kalmadan CPU'ya bağlı ilişkisel DW iş yükleri için toplu iş modu sağlayın. |
| Aralıklı Yürütme | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Sabit bir tahmin yerine ilk derlemede karşılaşılan çok deyimli tablo değerli işlevinin gerçek kardinalitesini kullanın. |
| Bellek tahsis geri bildirimi (Batch Modu) | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Toplu iş modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
| Bellek tahsis geri bildirimi (Satır Modu) | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Satır modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
| Skaler UDF Satır İçi Yerleştirme | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Skaler UDF'ler, çağrı sorgusuna "inlined" eşdeğer ilişkisel ifadelere dönüştürülür ve bu da genellikle önemli performans kazanımlarına neden olur. |
| Tablo Değişkeni Ertelenmiş Derleme | Evet, veritabanı uyumluluk düzeyi 150'den başlayarak | Sabit bir tahmin yerine ilk derlemede karşılaşılan tablo değişkeninin gerçek kardinalitesini kullanın. |
SQL Server 2017 için IQP özellikleri
| IQP özelliği | SQL Server 2017 'de (14.x) desteklenir | Description |
|---|---|---|
| Uyarlamalı Birleşimler (Toplu İş Modu) | Evet, SQL Server 2017'den (14.x) başlayarak veritabanı uyumluluk düzeyi 140 | Uyarlamalı birleşimler, çalışma zamanı sırasında gerçek giriş satırlarına göre dinamik olarak bir birleştirme türü seçer. |
| Yaklaşık Sayı Ayrı | Yes | Yüksek performans ile düşük bellek tüketimi avantajıyla büyük veri senaryoları için tahminî COUNT DISTINCT sağlayın. |
| Aralıklı Yürütme | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Sabit bir tahmin yerine ilk derlemede karşılaşılan çok deyimli tablo değerli işlevinin gerçek kardinalitesini kullanın. |
| Bellek tahsis geri bildirimi (Batch Modu) | Evet, veritabanı uyumluluk düzeyi 140'tan başlayarak | Toplu iş modu sorgusunda diske taşan işlemler varsa, ardışık yürütmeler için daha fazla bellek ekleyin. Sorgu, kendisine ayrılan belleğin 50%'ını harcarsa, ardışık yürütmeler için bellek tahsis boyutunu azaltın. |
Query Store gereksinimi
| IQP özelliği | Query Store'un etkin olması ve READ_WRITE gerektirir. |
|---|---|
| Uyarlamalı Birleşimler (Toplu İş Modu) | No |
| Yaklaşık Sayı Ayrı | No |
| Yaklaşık Yüzdebirlik | No |
| Rowstore'da Batch Modu | No |
| Kardinalite tahmini (CE) geri bildirimi | Yes |
| Paralellik derecesi (DOP) geri bildirim | Yes |
| Aralıklı Yürütme | No |
| Bellek tahsis geri bildirimi (Batch Modu) | No |
| Bellek tahsis geri bildirimi (Satır Modu) | No |
| Bellek verme geri bildirimi (Yüzdebirlik ve Kalıcılık modu) | Yes |
| Query Store ile Optimize edilmiş plan zorlaması | Yes |
| Skaler UDF Satır İçi Yerleştirme | No |
| Parametreye Duyarlı Plan optimizasyonu | Hayır, ancak önerilir |
| Tablo Değişkeni Ertelenmiş Derleme | No |
İlgili içerik
- Akıllı sorgu işleme özellikleri ayrıntılı olarak
- Joins (SQL Server)
- Yürütme modları
- Sorgu işleme mimarisi kılavuzu
- Mantıksal ve Fiziksel Showplan İşleç Referansı
SQL Server 2017 SQL Server 2019 SQL Server 2022 - Bellek tahsis geri bildirimi
- Akıllı Sorgu İşleme Gösterimi
- Sabit Katlama ve İfade Değerlendirmesi
- GitHub üzerinde Intelligent query processing tanıtımları
- SQL Server Database Engine ve Azure SQL Database için Performans Merkezi
- Query Store kullanarak performansı izleyin
- İş yüklerini izlemek için Query Store ile en iyi uygulamalar