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.
Şunlar için geçerlidir: SQL Server 2017 (14.x) ve sonraki sürümleri, Azure SQL Yönetilen Örneği, Azure SQL Veritabanı
Bazen sorgu çok büyük veya çok küçük bir bellek izniyle yürütülür. Bellek izni çok büyükse, sunucuda paralelliği engelleriz. Çok küçükse diske taşabiliriz, bu da maliyetli bir işlemdir. Bellek verme geri bildirimi, önceki bir yürütmenin bellek gereksinimlerini anımsamaya çalışır (yüzdebirlik geri bildirimle, birden çok geçmiş yürütmeyle). Bellek verme geri bildirimi, bu geçmiş sorgu bilgilerine dayanarak sorguya verilen izni sonraki yürütmeler için uygun şekilde ayarlar.
Bu özellik üç dalga halinde yayınlanmıştır. Toplu iş modu bellek verme geri bildirimi, ardından satır modu bellek verme geri bildirimi ve SQL Server 2022 (16.x), Sorgu Deposu'nu kullanarak disk üzerinde bellek verme geri bildirimi ve yüzdebirlik verme olarak bilinen geliştirilmiş bir algoritma sunar.
Uyarı
Diğer sorgu geri bildirim özellikleri için bkz . Kardinalite tahmini (CE) geri bildirimi ve Paralellik derecesi (DOP) geri bildirimi.
Toplu iş modu bellek tahsis geri bildirimi
Şunlar için geçerlidir: SQL Server (SQL Server 2017 (14.x) ile başlayarak), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği (Veritabanı uyumluluk düzeyi 140'tan başlayarak)
Sorgunun yürütme planı, yürütme için gereken en düşük belleği ve tüm satırların belleğe sığmasını sağlamak için ideal bellek verme boyutunu içerir. Bellek verme boyutları yanlış boyutlandırıldığında performans düşer. Aşırı izinler belleğin boşa harcanmasına ve eşzamanlılığın azalmasına neden olur. Yetersiz bellek tahsisleri diske pahalı taşmalara yol açar. Yinelenen iş yüklerini ele alarak toplu iş modu belleği geri bildirim verir, sorgu için gereken gerçek belleği yeniden hesaplar ve ardından önbelleğe alınan plan için verme değerini güncelleştirir. Aynı sorgu deyimi yürütürken sorgu, düzeltilen bellek verme boyutunu kullanır ve eşzamanlılığı etkileyen aşırı bellek atamalarını azaltır ve diske pahalı taşmalara neden olan hafife alınan bellek izinlerini düzelter.
Aşağıdaki grafikte toplu iş modu uyarlamalı bellek verme geri bildiriminin kullanılmasına ilişkin bir örnek gösterilmektedir. Sorgunun ilk yürütülmesinde, yüksek taşmalar nedeniyle süre 88 saniyeydi :
DECLARE @EndTime datetime = '2016-09-22 00:00:00.000';
DECLARE @StartTime datetime = '2016-09-15 00:00:00.000';
SELECT TOP 10 hash_unique_bigint_id
FROM dbo.TelemetryDS
WHERE Timestamp BETWEEN @StartTime AND @EndTime
GROUP BY hash_unique_bigint_id
ORDER BY MAX(max_elapsed_time_microsec) DESC;
Bellek verme geri bildirimi etkinleştirildiğinde, ikinci yürütme için süre 1 saniyedir (88 saniyeden aşağı), taşmalar tamamen kaldırılır ve hibe daha yüksektir:
Bellek verme geri bildirimi boyutlandırma
Aşırı bellek verme koşulu için, verilen bellek gerçek kullanılan belleğin iki katı boyutundaysa, bellek verme geri bildirimi bellek verme işlemini yeniden hesaplar ve önbelleğe alınmış planı güncelleştirir. Bellek izni 1 MB'ın altında olan planlar fazla kullanımlar için yeniden hesaplanamaz.
Toplu mod işleçleri için diske taşmaya yol açabilecek yetersiz boyutlandırılmış bellek tahsisi durumunda, bellek tahsisi geri bildirimi bellek tahsisinin yeniden hesaplanmasını tetikler. Taşma olayları bellek izni geri bildirimi sistemine bildirilir ve genişletilmiş olay aracılığıyla spilling_report_to_memory_grant_feedback ortaya çıkarılabilir. Bu olay, plandaki düğüm kimliğini ve bu düğümün dökülen veri boyutunu döndürür.
Ayarlanmış bellek izni, GrantedMemory özelliği aracılığıyla gerçek (yürütme sonrası) planında gösterilir.
Bu özelliği grafiksel showplan'ın kök işlecinde veya showplan XML çıkışında görebilirsiniz:
<MemoryGrantInfo SerialRequiredMemory="1024" SerialDesiredMemory="10336" RequiredMemory="1024" DesiredMemory="10336" RequestedMemory="10336" GrantWaitTime="0" GrantedMemory="10336" MaxUsedMemory="9920" MaxQueryMemory="725864" />
İş yüklerinizin bu iyileştirmeye otomatik olarak uygun olmasını sağlamak için veritabanı için uyumluluk düzeyi 140'ı etkinleştirin.
Örnek:
ALTER DATABASE [WideWorldImportersDW] SET COMPATIBILITY_LEVEL = 140;
Bellek tahsisi geri bildirimi ve parametre duyarlı senaryolar
Farklı parametre değerleri de en iyi durumda kalmak için farklı sorgu planları gerektirebilir. Bu sorgu türü "parametreye duyarlı" olarak tanımlanır.
Parametreye duyarlı planlar için bellek tahsis geri bildirimi, belirsiz bellek gereksinimleri varsa sorguda kendiliğinden devre dışı kalır. Bellek verme geri bildirim özelliği, sorgunun birkaç tekrarlı çalıştırması sonrasında devre dışı bırakılır ve genişletilmiş olay izlenerek memory_grant_feedback_loop_disabled bu gözlemlenebilir. Bu koşul, SQL Server 2022'de (16.x) sunulan bellek verme geri bildirimi için kalıcılık ve yüzdebirlik moduyla azaltılır. Bellek verme geri bildiriminin kalıcılık özelliği, Sorgu Deposu'nun veritabanında etkinleştirilmesini ve "okuma yazma" moduna ayarlanmasını gerektirir.
Parametre algılama ve parametre duyarlılığı hakkında daha fazla bilgi için bkz. Sorgu İşleme Mimarisi Kılavuzu.
Bellek tahsisi geri bildirimi önbelleğe alma
Geri bildirim, tek bir yürütme için önbelleğe alınmış planda depolanabilir. Bellek verme geri bildirim ayarlamalarından yararlanan ise, bu deyimin ardışık olarak gerçekleştirilmesidir. Bu özellik, deyimlerin tekrar tekrar yürütülmesi için geçerlidir. Bellek verme geri bildirimi yalnızca önbelleğe alınmış planı değiştirir. SQL Server 2022(16.x) öncesinde, değişiklikler Sorgu Deposu'nda yakalanmamıştı.
Plan önbellekten çıkarılırsa geri bildirim kalıcı olmaz. Yük devretme durumu meydana geldiğinde geri bildirim kaybolacaktır. kullanan OPTION (RECOMPILE) bir deyim yeni bir plan oluşturur ve bunu önbelleğe almaz. Önbelleğe alınmadığından bellek tahsis geri bildirimi üretilmez ve bu derleme ve yürütme için saklanmaz. Ancak, kullanılmadığı halde önbelleğe alınan eşdeğer bir ifade (aynı sorgu hash'i ile) yeniden yürütülürse, ikinci ve sonraki ardışık yürütmeler bellek tahsisi geri bildiriminden yararlanabilir.
Bellek verme geri bildirim etkinliğini izleme
Bellek izni geri bildirim olaylarını izlemek için memory_grant_updated_by_feedback uzatılmış olayı kullanabilirsiniz. Bu olay geçerli yürütme sayısı geçmişini, planın bellek verme geri bildirimi tarafından kaç kez güncelleştirildiğini, değişiklikten önceki ideal ek bellek verme tahsisini ve bellek verme geri bildirimi önbelleğe alınmış planı değiştirdikten sonraki ideal ek bellek verme tahsisini izler.
Hafıza tahsisi geri bildirimi, kaynak yöneticisi ve sorgu önerileri
Verilen gerçek bellek, kaynak yöneticisi veya sorgu ipucu tarafından belirlenen sorgu bellek sınırına göre belirlenir.
Uyumluluk düzeyini değiştirmeden toplu iş modu bellek verme geri bildirimini devre dışı bırakma
Bellek tahsis geri bildirimi, veritabanı veya ifadeyi kapsamda devre dışı bırakılabilirken, veritabanı uyumluluk düzeyi 140 ve üzeri korunur. Toplu iş modu belleğini devre dışı bırakmak ve veritabanından kaynaklanan tüm sorgu yürütmeleri için geri bildirim vermek için, aşağıdaki SQL deyimlerini geçerli veritabanı bağlamında yürütün:
-- SQL Server 2017
ALTER DATABASE SCOPED CONFIGURATION SET DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK = ON;
-- Starting with SQL Server 2019, and in Azure SQL Database
ALTER DATABASE SCOPED CONFIGURATION SET BATCH_MODE_MEMORY_GRANT_FEEDBACK = OFF;
Etkinleştirildiğinde, bu ayar sys.database_scoped_configurations etkin olarak görünür.
Toplu iş modu belleğini yeniden etkinleştirmek için veritabanından kaynaklanan tüm sorgu yürütmeleri için geri bildirimde bulunun, SQL deyimlerini ilgili veritabanı bağlamında yürütün:
-- SQL Server 2017
ALTER DATABASE SCOPED CONFIGURATION SET DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK = OFF;
-- Azure SQL Database, SQL Server 2019 and higher
ALTER DATABASE SCOPED CONFIGURATION SET BATCH_MODE_MEMORY_GRANT_FEEDBACK = ON;
Ayrıca belirli bir sorgu için Toplu Mod Bellek İzni Geri Bildirimini devre dışı bırakmak için DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK öğesini USE HINT sorgu ipucu olarak belirleyebilirsiniz. Örneğin:
SELECT * FROM Person.Address
WHERE City = 'SEATTLE' AND PostalCode = 98104
OPTION (USE HINT ('DISABLE_BATCH_MODE_MEMORY_GRANT_FEEDBACK'));
Sorgu USE HINT ipucu, veritabanı kapsamlı yapılandırma veya izleme bayrağı ayarından daha önceliklidir.
Satır modu bellek tahsis geri bildirimi
Şunlar için geçerlidir: SQL Server (SQL Server 2019 (15.x) ile başlayarak), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği (Veritabanı uyumluluk düzeyi 150'den başlayarak)
Satır modu bellek verme geri bildirimi, hem toplu iş hem de satır modu işleçleri için bellek verme boyutlarını ayarlayarak toplu iş modu bellek verme geri bildirim özelliğini genişletir.
Azure SQL Veritabanı'nda satır modu bellek verme geri bildirimini etkinleştirmek için, sorguyu yürütürken bağlandığınız veritabanı için veritabanı uyumluluk düzeyi 150 veya üzerini etkinleştirin.
Örnek:
ALTER DATABASE [<database name>] SET COMPATIBILITY_LEVEL = 150;
Toplu iş modu bellek verme geri bildiriminde olduğu gibi, satır modu bellek verme geri bildirim etkinliği de memory_grant_updated_by_feedback XEvent aracılığıyla görülebilir. Ayrıca hem satır hem de toplu iş modu için bellek verme geri bildirim işleminin geçerli durumuna daha iyi görünürlük sağlayan iki yeni sorgu yürütme planı özniteliği sunuyoruz.
Bellek verme geri bildirimi için Sorgu Deposu gerekmez, ancak SQL Server 2022'de (16.x) sunulan kalıcılık iyileştirmeleri, Sorgu Deposu'nun veritabanı için ve "okuma yazma" durumunda etkinleştirilmesini gerektirir. Daha fazla bilgi için, bu makalenin ilerleyen bölümlerinde yer alan Percentil ve kalıcılık modu bellek izni geri bildirimi kısmına bakın.
Satır modu bellek verme geri bildirim etkinliği genişletilmiş olay aracılığıyla memory_grant_updated_by_feedback görünür.
Satır modu bellek verme geri bildiriminden başlayarak, gerçek yürütme sonrası planları için iki yeni sorgu planı özniteliği gösterilir: IsMemoryGrantFeedbackAdjusted ve LastRequestedMemory, sorgu planı XML öğesine eklenir MemoryGrantInfo.
- özniteliği,
LastRequestedMemoryverilen belleği önceki sorgu yürütmesinden Kilobayt (KB) cinsinden gösterir. -
IsMemoryGrantFeedbackAdjustedözniteliği, gerçek bir sorgu yürütme planı içindeki bir ifade için bellek izni geri bildiriminin durumunu denetlemenize olanak tanır.
Bu öznitelikte gösterilen değerler aşağıdaki gibidir:
IsMemoryGrantFeedbackAdjusted Değeri |
Açıklama |
|---|---|
| Hayır: İlk Yürütme | Bellek verme geri bildirimi, ilk derleme ve ilişkili yürütme için belleği ayarlamaz. |
| Hayır: Kesin Verme | Diske taşma yoksa ve deyimi verilen belleğin en az 50% kullanıyorsa bellek verme geri bildirimi tetiklenmemiştir. |
| Hayır: Geri bildirim devre dışı bırakıldı | Bellek verme geri bildirimi sürekli tetiklenirse ve bellek artışı ile bellek azaltma işlemleri arasında dalgalanmalar olursa, veritabanı altyapısı deyimi için bellek verme geri bildirimini devre dışı bırakır. |
| Evet: Ayarlama | Bellek tahsisi geri bildirimi uygulandı ve sonraki yürütme için daha da ayarlanabilir. |
| Evet: Yüzdebirlik Ayarlama | Bellek verme geri bildirimi, yalnızca en son yürütme işleminden daha fazla geçmişe bakan yüzdelik verme algoritması kullanılarak uygulanıyor. |
| Evet: Kararlı | Bellek verme geri bildirimi uygulandı ve verilen bellek artık kararlıdır, yani önceki yürütme için en son verilen, geçerli yürütme için verilen geri bildirimdir. |
Yüzdelik ve kalıcılık modu bellek verme geri bildirimi
Şunlar için geçerlidir: SQL Server (SQL Server 2022 (16.x) ile başlayarak), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği
Bu özellik SQL Server 2022'de (16.x) tanıtılmıştır, ancak bu performans geliştirmesi, veritabanı uyumluluk düzeyi 140 (SQL Server 2017'de tanıtıldı) veya daha yüksek bir düzeydeki sorgular ya da QUERY_OPTIMIZER_COMPATIBILITY_LEVEL_n ipucu ile kullanılabilir. Ayrıca, bu geliştirme veritabanı için Sorgu Deposu etkinleştirildiğinde ve "okuma yazma" durumunda olması gereklidir.
- SQL Server 2022'de (16.x) yüzdebirlik bellek verme geri bildirimi varsayılan olarak etkindir, ancak Sorgu Deposu etkinleştirilmediyse veya Sorgu Deposu "okuma yazma" durumunda değilse hiçbir etkisi olmaz.
- SQL Server 2022'de (16.x) bellek verme, CE ve DOP geri bildirimi için kalıcılık varsayılan olarak açıktır, ancak Sorgu Deposu etkinleştirilmediğinde veya Sorgu Deposu "okuma yazma" durumunda olmadığında hiçbir etkisi olmaz.
- Bellek verme geri bildirimi için yüzde birlik ve kalıcılık Azure SQL Veritabanı'nda kullanılabilir ve hem mevcut hem de yeni tüm veritabanlarında varsayılan olarak etkindir.
- Bellek verme geri bildirimine yönelik yüzdelik dilim ve kalıcılık şu anda Azure SQL Yönetilen Örneği'nde kullanılamıyor.
Özellik veritabanınız için etkinleştirilmeden önce iş yükünüz için bir performans temeli oluşturmanız önerilir. Temel sayılar, özellikten istenen avantajı elde ettiğinizi belirlemenize yardımcı olur.
Bellek verme geri bildirimi (MGF), bir sorgu için ayrılan belleğin boyutunu geçmiş performansa göre ayarlayan mevcut bir özelliktir. Ancak, bu projenin ilk aşamaları yalnızca önbellekteki planla bellek verme ayarlamasını depoladı; bir plan önbellekten çıkarılırsa geri bildirim işlemi yeniden başlatılmalıdır ve çıkarma işleminden sonra ilk birkaç kez sorgu yürütülürken düşük performans elde edilir. Yeni çözüm, sağlama bilgilerini Sorgu Deposu'ndaki diğer sorgu bilgileriyle kalıcı hale getirmektir, böylece avantajlar önbellek çıkarmaları arasında kalıcı olur. Bellek verme geri bildirimi kalıcılığı ve yüzde dilimi, bellek verme geri bildiriminin mevcut sınırlamalarını etkili fakat müdahale gerektirmeyen bir şekilde ele alır.
Buna ek olarak, hibe boyutu ayarlamaları yalnızca en son kullanılan hibeyi hesaba katıyordu. Bu nedenle, parametreli bir sorgu veya iş yükü her yürütmede önemli ölçüde değişen bellek verme boyutları gerektiriyorsa, en son verme bilgileri yanlış olabilir. Sorgu çalıştırılırken gerçek gereksinimlerle uyuşmayabilir. Bu senaryoda bellek verme geri bildirimi, her zaman kullanılan son verme değerini temel alarak belleği ayarladığımız için performans açısından yararlı değildir. Sonraki görüntüde yüzdelik dilim ve kalıcılık modu olmadan bellek tahsis geri bildirimiyle mümkün olan davranış gösterilmektedir.
Gördüğünüz gibi, bu olağan dışı ancak olası sorgu davranışında, sorgu yürütmesinin kendisi bellek miktarı bakımından değiştirilirse, gereken gerçek ve verilen bellek miktarları arasındaki salınım boşa harcanmış ve yetersiz bellekle sonuçlanır. Bu senaryoda, bellek tahsisi geri bildirimi kendini devre dışı bırakır ve yarardan çok zarara neden olduğunu fark eder.
Sorgunun son geçmişi üzerinde yüzdebirlik tabanlı hesaplama kullanarak, yalnızca son yürütme yerine, geçmiş yürütme kullanım geçmişine göre verme boyutu değerlerini düzeltebilir ve taşmaları en aza indirmek için iyileştirmeye çalışabiliriz. Örneğin, aynı değişen iş yükü aşağıdaki bellek verme davranışını görür:
Sorgu iyileştirici, Sorgu Deposu'nda kalıcı olan verileri kullanarak önbelleğe alınmış planın yürütülmesi için bellek tahsis boyutlarını hesaplar ve bu sırada geçmiş bellek tahsis gereksinimlerinin yüksek yüzdelik dilimini kullanır. Bellek verme ayarlamalarını gerçekleştirecek olan yüzde dilimi ayarlaması, yürütmelerin son geçmişine dayanır. Zamanla, verilen bellek izni sızıntıları ve boşa harcanan belleği azaltır.
Kalıcılık , DOP geri bildirimleri ve CE geri bildirimleri için de geçerlidir.
Bellek tahsis geri bildirim özelliklerini etkinleştirme ve devre dışı bırakma
Uyumluluk düzeyini değiştirmeden satır modu bellek verme geri bildirimini devre dışı bırakma
Satır modu bellek tahsisi geri bildirimi, veritabanı uyumluluk düzeyi 150 ve üzeri korunarak, veritabanı veya deyim kapsamında devre dışı bırakılabilir. Satır modu belleğini devre dışı bırakmak için veritabanından kaynaklanan tüm sorgu yürütmeleri için geri bildirim verin, SQL deyimlerini ilgili veritabanı bağlamında yürütün:
ALTER DATABASE SCOPED CONFIGURATION SET ROW_MODE_MEMORY_GRANT_FEEDBACK = OFF;
Satır modu bellek izni geri bildirimini yeniden etkinleştirmek için veritabanından kaynaklanan tüm sorgu yürütmeleri için, uygulamaya özel veritabanı bağlamında aşağıdakini yürütün.
ALTER DATABASE SCOPED CONFIGURATION SET ROW_MODE_MEMORY_GRANT_FEEDBACK = ON;
AyrıcaDISABLE_ROW_MODE_MEMORY_GRANT_FEEDBACK olarak belirleyerek belirli bir sorgu için satır modu belleği geri bildirimini devre dışı bırakabilirsiniz. Örneğin:
SELECT * FROM Person.Address
WHERE City = 'SEATTLE' AND PostalCode = 98104
OPTION (USE HINT ('DISABLE_ROW_MODE_MEMORY_GRANT_FEEDBACK'));
USE HINT sorgu ipucu, veritabanı kapsamlı yapılandırma veya izleme bayrağı ayarının önüne geçer.
Bellek verme geri bildirimi kalıcılığını ve yüzde birlik değerini etkinleştirme
Azure SQL Veritabanı ve SQL Server 2022'de (16.x) kalıcılık ve yüzdebirlik geri bildirimi varsayılan olarak etkinleştirilir .
Sorguyu yürütürken bağlandığınız veritabanı için veritabanı uyumluluk düzeyi 140 veya üzerini kullanın. Bunu ALTER DATABASE komutu ile değiştirebilirsiniz.
ALTER DATABASE <DATABASE NAME> SET COMPATIBILITY LEVEL = 140; -- OR HIGHER
Bu özelliğin kalıcılık bölümünün kullanıldığı her veritabanı için Sorgu Deposu etkinleştirilmelidir.
Yüzdelik dilimi devre dışı bırak
Veritabanından kaynaklanan tüm sorgu yürütmeleri için bellek verme yüzdesi geri bildirim yüzdelik dilimini devre dışı bırakmak üzere, geçerli veritabanı bağlamında aşağıdakileri yürütün:
ALTER DATABASE SCOPED CONFIGURATION SET MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT = OFF;
için MEMORY_GRANT_FEEDBACK_PERCENTILE_GRANT varsayılan ayar şeklindedir ON.
Kalıcılığı devre dışı bırakma
Belleği devre dışı bırakmak için, veritabanından kaynaklanan tüm sorgu yürütmeleri için geri bildirim kalıcılığı sağlayın.
Geçerli veritabanı bağlamında aşağıdakileri yürütür:
ALTER DATABASE SCOPED CONFIGURATION SET MEMORY_GRANT_FEEDBACK_PERSISTENCE = OFF;
Bellek verme geri bildirimi kalıcılığını devre dışı bırakmak, toplanan mevcut geri bildirimleri de kaldırır.
için MEMORY_GRANT_FEEDBACK_PERSISTENCE varsayılan ayar şeklindedir ON.
Bellek tahsis geri bildirimiyle ilgili dikkat edilmesi gerekenler
sys.database_scoped_configurations sorgulayarak geçerli ayarlarınızı görüntüleyebilirsiniz.
Uyarı
Bu özellik, hem BATCH_MODE_MEMORY_GRANT_FEEDBACK hem de ROW_MODE_MEMORY_GRANT_FEEDBACKOFF olarak ayarlandıysa çalışmaz.
Geri bildirim verileri Artık Sorgu Deposu'nda kalıcı hale getirildiğinde, Sorgu Deposu kullanım gereksinimlerinde bazı artışlar yaşanmaktadır.
Yüzdelik tabanlı bellek tahsisi, daha çok sızıntıları azaltma eğilimindedir. Artık yalnızca son yürütmeyi temel almadığından ancak geçmişteki birkaç yürütmenin gözlemini temel aldığı için bu, yürütmeler arasında bellek verme gereksinimlerinde geniş varyansa sahip olan iş yüklerinin bellek kullanımını artırabilir.
SQL Server 2022'den (16.x) başlayarak, yedek kopyalar için Sorgu Deposu etkinleştirildiğinde, kullanılabilirlik gruplarındaki ikincil replikalar için bellek tahsisi geri bildirimi kopya-duyarlıdır. Bellek verme geri bildirimi, birincil çoğaltmada ve ikincil çoğaltmada farklı geri bildirim uygulayabilir. Ancak, bellek verme geri bildirimi ikincil çoğaltmalarda kalıcı olmaz ve yük devretme sırasında eski birincil çoğaltmadan gelen bellek verme geri bildirimi yeni birincil çoğaltmaya uygulanır. İkincil çoğaltmaya uygulanan her türlü geri bildirim, ikincil çoğaltma birincil çoğaltma haline geldiğinde kaybolur. Sorgu Deposu, SQL Server 2025(17.x) ile başlayan ikincil kullanılabilirlik grubu çoğaltmalarında kullanılabilir. Daha fazla bilgi için bkz. ikincil çoğaltmalar için Sorgu Deposu.