Aracılığıyla paylaş


Otomatik dizin sıkıştırma (önizleme)

Şunlar için geçerlidir:Azure SQL VeritabanıMicrosoft Fabric'teAzure SQL Yönetilen ÖrneğiAUTD SQL veritabanı

Otomatik dizin sıkıştırma, dizin bakım işlerine zaman ve çaba harcamadan depolama alanı, disk G/Ç, CPU, bellek tüketimini azaltmanıza ve iş yükü performansını iyileştirmenize yardımcı olur. Dizin sıkıştırma, veritabanındaki veriler değiştikçe sürekli ve düşük ek yükle gerçekleştirilir.

Uyarı

Otomatik dizin sıkıştırma şu anda Azure SQL Veritabanı, Her Zaman Güncel güncelleştirme ilkesi ile Azure SQL Yönetilen Örneği ve Fabric'teki SQL veritabanında önizleme aşamasındadır.

Sık sorulan soruların yanıtları için bkz. Sık sorulan sorular (SSS).

Etkinleştirme ve devre dışı bırakma

Otomatik dizin sıkıştırma varsayılan olarak devre dışıdır. Aşağıdaki Transact-SQL deyimlerini çalıştırarak veritabanını etkinleştirebilir veya devre dışı bırakabilirsiniz.

  • Otomatik dizin sıkıştırmayı etkinleştir:

    ALTER DATABASE [database-name-placeholder]
    SET AUTOMATIC_INDEX_COMPACTION = ON;
    
  • Otomatik dizin sıkıştırmayı devre dışı bırak:

    ALTER DATABASE [database-name-placeholder]
    SET AUTOMATIC_INDEX_COMPACTION = OFF;
    

Otomatik dizin sıkıştırmanın etkinleştirilip etkinleştirilmediğini görmek için sys.databases katalog görünümünü kullanın. Örneğin, hangi veritabanlarında otomatik dizin sıkıştırmanın etkinleştirildiğini görmek için aşağıdaki sorguyu çalıştırın:

SELECT database_id,
       name,
       is_automatic_index_compaction_on
FROM sys.databases;

Özelliği denetlemek için IsAutomaticIndexCompactionOn işlevini de kullanabilirsiniz.

Avantajlar ve dikkat edilmesi gerekenler

Otomatik dizin sıkıştırma aşağıdaki avantajları sağlar:

  • Dizin bakım işleri için ayar yapmanıza ve bakımını gerçekleştirmenize gerek yoktur.
  • Dizin bakım işleri tarafından yüksek kaynak tüketimini önler.
  • Veritabanındaki veriler değiştirildiğinde oluşabilecek alan büyümesini azaltır.
  • Sorgu performansını artırır.
    • Sıkıştırılmış dizini okuyan bir sorgu daha az sayfa okur ve bu nedenle daha az disk G/Ç, CPU ve bellek gerektirir.
    • Bir sorgu planını geliştirmek için sıkıştırılmış dizin seçilme olasılığı daha yüksektir.

Önemli

Otomatik sıkıştırma yalnızca son değiştirilen sayfalar üzerinde çalışır. Sonuç olarak, sıkıştırmanın yükü, tüm sayfaları işleyen dizin yeniden derlemesi veya dizin yeniden düzenlemesi ile karşılaştırıldığında en düşük düzeydedir.

Sıkıştırma işleminin yükü çok az olsa da sıfır değildir. Otomatik dizin sıkıştırmayı etkinleştirdiğinizde şunları göz önünde bulundurun:

  • Sıkıştırma işlemi birçok satırı kaydırırsa, işlem günlüğü yazma giriş/çıkış miktarında ve işlem günlüğü yedeklemelerinin boyutunda bir artış görebilirsiniz.
  • Sıkıştırma gerçekleştiğinde, düşük tek basamaklı yüzde aralığında CPU kullanımında küçük bir artış fark edebilirsiniz. Bu artış yaygın değildir.
  • Dizin yeniden düzenlemeye benzer şekilde sıkıştırma işlemi, satırları bir sayfadan diğerine taşımak için kısa süreli özel (X) sayfa kilitleri alır.
    • Eşzamanlılık etkisi çok azdır. Sayfadaki bir kilit hemen alınamıyorsa, diğer sorguları ve işlemleri engellememek için sayfa atlanır.
      • Sorgular bazen kısa vadeli (milisaniye) engellemeyle karşılaşabilir. Bu engelleme, sıkıştırma işlemi zaten sayfada özel bir kısa vadeli kilit aldıktan sonra bir sorgu bir sayfa veya satır kilidi almaya çalışırsa oluşur ve yaygın değildir.

Nasıl çalışır?

Otomatik dizin sıkıştırma, arka plan kalıcı sürüm deposu (PVS) temizleyici işleminin bir parçasıdır. Bu işlem, veri sayfalarından eski satır sürümlerini düzenli aralıklarla kaldırır. Veritabanı için otomatik dizin sıkıştırmayı etkinleştirirseniz PVS temizleyicisi dizinleri de sıkıştırıyor.

Temizleyici, son eklenen, güncelleştirilen veya silinen satırları içeren her sayfayı ziyaret ettikçe, geçerli sayfadaki boş alanı ve aşağıdaki sayfalardan birkaçında kullanılan alanı denetler. Geçerli sayfada yeterli boş alan varsa, bu eylem aşağıdaki sayfalardan en az birini boş hale getirirse temizleyici aşağıdaki sayfalardaki satırları geçerli sayfaya taşır.

Boş sayfalar serbest bırakılır. Sonuç olarak, veritabanında kullanılan toplam sayfa sayısı azalır, sayfa yoğunluğu artar ve depolama alanı, disk G/Ç, CPU ve arabellek havuzu belleği tüketimi azalır.

Aşağıdaki diyagramda, sıkıştırma öncesi ve sonrası dizindeki veri sayfalarının kavramsal görünümü gösterilmektedir.

Otomatik dizin sıkıştırmadan önceki ve sonraki veri sayfalarının kavramsal görünümünü gösteren diyagram.

Veriler değiştirildiğinde ve eski satır sürümleri temizlendikten sonra sıkıştırma işlemi arka planda devam eder.

Sıkıştırma işlemi, aşağıdakiler gibi eşzamanlı etkinlikler nedeniyle bazı sayfaları atlayabilir:

  • Sayfayı kullanan etkin bir işlem.
  • Devam eden bir dizin derlemesi veya yeniden düzenlemesi.
  • Bir küçültme işlemi devam ediyor.
  • PVS'den temizlenecek büyük kapsamlı bir PVS boyutu veya durdurulan işlem sayısı.
    • PVS temizleme, otomatik sıkıştırmaya göre önceliklendirilir. PVS boyutu 150 GB'ı aşarsa veya durdurulan işlem sayısı 1.000'i aşarsa sıkıştırma askıya alınır.

Sıkıştırma işleminin sayfaları atlamasının daha az yaygın nedenleri için bkz. Sıkıştırma istatistiklerini izlemek için genişletilmiş olay kullanma.

Bir sayfa atlanırsa, bir sonraki işlem sırasında PVS temizleyicisi tarafından sıkıştırma amacıyla değerlendirilir.

Otomatik dizin sıkıştırma, sistem tablolarında ve dışındaki msdbsistem veritabanlarında kullanılamaz. Devre dışı bırakılmış sayfa kilitleri olan dizinler otomatik sıkıştırma için uygun değildir.

Veri sayfaları hakkında daha fazla bilgi için Sayfa ve kapsam mimarisi kılavuzu'na bakın.

Dizinler hakkında daha fazla bilgi için bkz. Dizin mimarisi ve tasarım kılavuzu.

Dizin yeniden düzenleme ve dizin yeniden oluşturma ile karşılaştırma

Geleneksel dizin bakım işlemleri (dizin yeniden düzenleme, dizin yeniden oluşturma) ile otomatik dizin sıkıştırma arasındaki aşağıdaki farkları göz önünde bulundurun:

Değerlendirmeler Öneriler
Sıkıştırma, veritabanındaki veriler değiştirildiği sürece sürekli ve minimum ek yükle gerçekleşir. Bu işlerin sağlayabilecekleri avantajları elde etmek için dizin bakım işleri ayarlamanız, izlemeniz ve bakımını yapmanız gerekmez.
Dizin yeniden düzenleme ve tüm sayfaların yeniden derlenmesinden farklı olarak, sıkıştırma işlemi yalnızca otomatik dizin sıkıştırmayı etkinleştirdikten sonra değiştirilen sayfaları dikkate alır. Bir dizinin sayfa yoğunluğu zaten düşükse, bunu artırmak için bir kerelik dizin yeniden düzenleme veya dizin yeniden derlemesi çalıştırmayı göz önünde bulundurun. Bu tek seferlik işlem, sayfa yoğunluğunun hemen artırılması için ek bir iyileştirmedir. Bu noktadan itibaren, otomatik sıkıştırma özelliği dizinleri kullanıcı müdahalesi gerektirmeden kompakt tutar.
Her dizin yeniden oluşturma işlemi, veri dosyalarında genellikle yeniden derlenen dizinin veya bölümün boyutuna eşit olan önemli bir boş alan gerektirir. Otomatik dizin sıkıştırma veya dizin yeniden düzenleme için veri dosyalarında boş alan ayırmanız gerekmez.
Dizin yeniden derleme veya dizin yeniden düzenlemeden farklı olarak sıkıştırma, dizin parçalanmayı azaltmaz. Sıkıştırma sonrasında artan sayfa yoğunluğu, dizin parçalanmasından daha önemlidir. Çoğu iş yükü için daha yüksek bir dizin parçalanması sorgu performansını veya kaynak tüketimini etkilemez.
Bir dizinin doldurma faktörü yüzde 100'den az olduğunda ancak sayfadaki veri miktarı doldurma faktörünü aştığında, dizin sıkıştırması veya yeniden düzenleme satırları sayfadan uzağa taşımaz. Dizin yeniden derlemesi yeni sayfalar oluşturur ve bunları doldurma faktörüne göre doldurur. Çoğu iş yükü için daha yüksek bir sayfa yoğunluğu tercih edilir. Sayfa bölmelerini azaltmak için daha düşük bir doldurma faktörü gerektiren iş yükleri, zaman zaman dizin yeniden derlemesinden yararlanabilir. Yeniden derleme, doldurma faktörüyle eşleşen daha düşük sayfa yoğunluğuna sahip sayfalar oluşturur.
Dizin yeniden derlemesinin aksine sıkıştırma, dizindeki istatistikleri güncelleştirmez. otomatik istatistik güncelleştirmesi iş yükünüz için yetersizse ve istatistikleri güncelleştirmek için dizin yeniden derlemesine güveniyorsanız, istatistik güncelleştirme işiyle birlikte otomatik sıkıştırma kullanmayı göz önünde bulundurun.

Dizin yeniden düzenleme ve yeniden oluşturma hakkında daha fazla bilgi için bkz. Sorgu performansını geliştirmek ve kaynak tüketimini azaltmak için dizin bakımını iyileştirme.

Sayfa yoğunluğu ve dizin parçalanması

Sayfa yoğunluğu ve dizin parçalanması , dizin tarafından alan tüketimini yansıtan ve sorgu performansını etkileyebilecek iki ölçümdür. sys.dm_db_index_physical_stats dinamik yönetim işlevi (DMF), bu ölçümleri sırasıyla avg_page_space_used_in_percent ve avg_fragmentation_in_percent sütunlarında raporlar.

Sıkıştırma, aynı sayfada daha fazla satır depolayarak sayfa yoğunluğunun artırılmasını sağlayarak performansı artırır ve kaynak tüketimini azaltır.

Otomatik dizin sıkıştırmayı etkinleştirdiğinizde dizin parçalanmanın daha yüksek olduğunu gözlemleyebilirsiniz. Bu koşul oluşursa şunları göz önünde bulundurun:

Değerlendirmeler Öneriler
Yazma yoğunluklu bazı iş yüklerinde sayfalar sıkıştırmadan kısa süre sonra yeniden bölünebilir. Sayfa bölmeleri dizin parçalanmasını artırır. Sonuç olarak iş yükü performansı etkileniyorsa sıkıştırma sonrasında sayfa bölmelerini azaltmak için biraz azaltılmış dolgu faktörüyle tek seferlik dizin yeniden derlemesi kullanın.

Örneğin, doldurma faktörünü yüzde 70-95 aralığında ayarlayın. Ancak doldurma faktörünü gereksiz yere azaltmayın veya çok düşük bir değere ayarlamayın. Çoğu iş yükü, doldurma faktörünün varsayılan yüzde 100'e ayarlanmasıyla en iyi performansa ve kaynak kullanımına ulaşır.
Sıkıştırma sırasında boş bir sayfanın serbest bırakılması, sayfa numaralandırma dizisinde bir ölçüde boşluk oluşturabilir. Kapsamlar içindeki boşluklar, dizin parçalanma oranını artırarak ön okuma I/O boyutunu azaltma olasılığına sahiptir. Önceden okuma kapasitesinden yararlanan iş yükleri için bile, sorguların kompakt hale getirildikten sonra daha az sayfa okuması nedeniyle parçalanmanın performans üzerindeki artan etkisi en aza indirilir.

Tavsiye

Çoğu iş yükü için yüksek sayfa yoğunluğunun avantajları, daha yüksek dizin parçalanmasından kaynaklanan tüm performans etkilerinden daha fazladır.

Otomatik dizin sıkıştırmasını izlemek

Otomatik dizin sıkıştırmanın verimliliğini görmek için, sayfa sayısı, ortalama sayfa yoğunluğu ve zaman içindeki ortalama dizin parçalanması gibi temel dizin ölçümlerini izleyebilirsiniz. Daha fazla bilgi için Anahtar dizini ölçümlerini belirleme örneğine bakın.

Genişletilmiş Olayları kullanarak ayrıntılı sıkıştırma istatistiklerini de izleyebilirsiniz. Daha fazla bilgi için sıkıştırma istatistiklerini izlemek için genişletilmiş olay kullanma örneğine bakın.

Sınırlamalar

Otomatik dizin sıkıştırma işlemi, yalnızca bir ayırma biriminde yer alan B ağacı dizininin yaprak düzeyindeki IN_ROW_DATA sayfaları dikkate alır. Buna şu sayfalarda yer alır:

  • Kümelenmiş dizinler ve kısıtlamalar.
  • Kümelenmemiş dizinler ve kısıtlamalar.
  • İÇ tablolarda XML, tam metin, uzamsal ve columnstore iç satır kümeleri gibi özel dizin türlerini depolayan B ağacı dizinleri.

Aşağıdaki sayfa türleri otomatik dizin sıkıştırma için uygun değildir:

  • Yığın tablolarındaki sayfalar.
  • ROW_OVERFLOW_DATA veya LOB_DATA ayırma birimlerindeki sayfalar.
  • Columnstore dizinlerinin sıkıştırılmış satır gruplarındaki sayfalar.
  • Bellek optimize edilmiş tablolardaki sayfalar.

Sıkça Sorulan Sorular (SSS)

Bu bölümde, otomatik dizin sıkıştırma hakkında sık sorulan sorular yanıtlanmıştır.

Otomatik sıkıştırmayı etkinleştirmek veya devre dışı bırakmak için yeniden başlatma veya özel veritabanı erişimi gerekiyor mu?

Hayır. Sıkıştırma, ALTER DATABASE ... SET AUTOMATIC_INDEX_COMPACTION = ... komutunu yürüttükten sonra dakikalar içinde başlar veya durur.

Sorgu performansını nasıl değiştirir?

Sorgular daha hızlı çalışır ve daha az disk G/Ç, bellek ve CPU kullanır. Bu iyileştirme, aksi takdirde dizin şişkinliklerine neden olabilecek önemli yazma etkinliğine sahip iş yüklerinde en belirgin şekilde görülür.

Depolama alanı tüketimini nasıl değiştirir?

Sıkıştırma, veri dosyalarında kullanılan alanın büyümesini azaltır. Ancak veritabanı küçültmesinin aksine, veri dosyalarının ayrılmış boyutunu azaltmaz.

Ek yük var mı?

Çoğu iş yükü için ek yük fark edilmez. Yazma yoğunluklu iş yükleri için işlem günlüğü G/Ç'sinde ve işlem günlüğü yedeklemelerinin boyutunda bir artış olduğunu fark edebilirsiniz.

Engellemeye neden olabilir mi?

Otomatik sıkıştırma nedeniyle engelleme olasılığı düşüktür. Herhangi bir engelleme oluşursa, kısa vadeli ve geçicidir (milisaniye).

Bir sorgu engellenmişse, sys.dm_exec_requests'da baş engelleyicinin komutunu denetleyin. Komut VERSION_CLEANER_MAIN veya VERSION_CLEANER_WORKER ise otomatik sıkıştırma sorguları engelleyebilir.

Dolgu faktörünü dikkate alıyor mu?

Otomatik sıkıştırma hiçbir zaman doldurma faktörünün üzerindeki bir sayfayı doldurmaz. Ancak, bir sayfa önceki DML deyimleri tarafından dolgu faktörünün üzerinde zaten doldurulmuşsa sıkıştırma, sayfa yoğunluğunun azaltılmasına neden olmaz. Sıkıştırmadan sonra sayfalar dolgu faktörünün üzerinde doldurulmuş olarak kalabilir.

Dizin satır veya sayfa sıkıştırma kullanıyorsa çalışır mı?

Evet. Otomatik sıkıştırma, dizindeki sayfalardaki boş alanı kaldırır. Sayfalardaki verilerin sıkıştırılıp sıkıştırılmaması önemli değildir.

Hayalet temizlemeden farkı nedir?

Hayalet temizleme, sayfalardan geçici olarak silinen satırları kaldırır ve bu da sayfada boş alan bırakır. Otomatik sıkıştırma, verileri daha az sayfada birleştirerek sayfalardaki boş alanı kaldırır.

Otomatik sıkıştırma etkinken bir dizin yeniden derlemesi veya dizin yeniden düzenlemesi çalıştırırsam ne olur?

Otomatik sıkıştırma, yeniden oluşturulan veya reorganize edilen dizinleri, devam ettirilebilir dizin işlemlerinin durduğu noktadaki dizinler de dahil olmak üzere, atlar.

Örnekler

Aşağıdaki T-SQL örneklerini master veritabanında değil, kullanıcı veritabanında çalıştırın.

Anahtar dizin ölçümlerini belirle.

Aşağıdaki sorgu, otomatik sıkıştırma için uygun dizinler için sırasıyla dizinin yaprak düzeyindeki sayfaların sayısını, sırasıyla , page_countve sütunlarında avg_page_space_used_in_percentortalama sayfa yoğunluğunu ve avg_fragmentation_in_percent parçalanmasını döndürür. Sorgu ayrıca veritabanındaki tüm dizinler için bu ölçümleri içeren bir toplamlar satırı döndürür.

SELECT COALESCE (OBJECT_SCHEMA_NAME(ips.object_id), '<Total>') AS schema_name,
       COALESCE (OBJECT_NAME(ips.object_id), '<Total>') AS object_name,
       COALESCE (i.name, '<Total>') AS index_name,
       COALESCE (i.type_desc, '<Total>') AS index_type,
       COALESCE (ips.partition_number, NULL) AS partition_number,
       AVG(ips.avg_page_space_used_in_percent) AS avg_page_space_used_in_percent,
       AVG(ips.avg_fragmentation_in_percent) AS avg_fragmentation_in_percent,
       SUM(ips.record_count) AS record_count,
       SUM(ips.page_count) AS page_count
FROM sys.dm_db_index_physical_stats(DB_ID(), DEFAULT, DEFAULT, DEFAULT, 'SAMPLED') AS ips
     INNER JOIN sys.indexes AS i
         ON ips.object_id = i.object_id
        AND ips.index_id = i.index_id
WHERE i.type_desc IN ('CLUSTERED', 'NONCLUSTERED', 'XML', 'SPATIAL')
      AND ips.index_level = 0
      AND ips.page_count > 0
      AND ips.alloc_unit_type_desc = 'IN_ROW_DATA'
GROUP BY ROLLUP(ips.object_id, i.name, i.type_desc, ips.partition_number)
HAVING ips.object_id IS NULL
       AND ips.object_id IS NULL
       AND i.name IS NULL
       AND i.type_desc IS NULL
       AND ips.partition_number IS NULL
       OR ips.object_id IS NOT NULL
          AND ips.object_id IS NOT NULL
          AND i.name IS NOT NULL
          AND i.type_desc IS NOT NULL
          AND ips.partition_number IS NOT NULL
ORDER BY IIF (ips.object_id IS NULL, 0, 1), page_count DESC;

Sorgu, sayfaların bir alt kümesini örnekleme yoluyla yaklaşık sonuçlar döndürür. SAMPLED'yı DETAILED ile değiştirerek daha kesin sonuçlar elde edin. Büyük veritabanları için DETAILED kullanmak, veritabanındaki tüm uygun dizinler tamamen tarandığından çok daha uzun sürebilir. Daha fazla bilgi için bkz. sys.dm_db_index_physical_stats.

Sıkıştırma istatistiklerini izlemek için genişletilmiş olay kullanma

Veritabanının auto_index_compaction_stats sıkıştırma istatistiklerini izlemek için genişletilmiş olayı kullanabilirsiniz. Olay her 10 dakikada bir tetiklenir. Bir dizini sıkıştırmak için sayfalar arasında taşınan satır sayısı, serbest bırakılan sayfaların sayısı ve çeşitli nedenlerle atlanan sıkıştırma girişimlerinin sayısı gibi verileri içerir. Veritabanı altyapısının başlatılmasından bu yana her olay tarafından bildirilen istatistikler kümülatiftir.

Aşağıdaki T-SQL örneği, auto_index_compaction_stats hedefinde olay verilerini toplayan bir olay oturumu oluşturur ve başlatır. Bir sorgu, her 10 dakikalık aralık için sıkıştırma istatistiklerini döndürmek amacıyla mevcut olayı önceki olayla karşılaştırır. Sorgu bir zaman aralığı için istatistikleri hesaplamak için en az iki olay gerektirdiğinden, olay oturumu başlatıldıktan sonra 20 dakikaya kadar veri döndürmeyebilir.

/*
Create and start an event session collecting the auto_index_compaction_stats event
into a ring_buffer target
*/
IF NOT EXISTS (SELECT 1
               FROM sys.dm_xe_database_sessions
               WHERE name = N'automatic_index_compaction')
BEGIN
    CREATE EVENT SESSION automatic_index_compaction ON DATABASE
    ADD EVENT sqlserver.auto_index_compaction_stats
    ADD TARGET package0.ring_buffer (SET MAX_MEMORY = 1024);

    ALTER EVENT SESSION automatic_index_compaction ON DATABASE STATE = START;
END;

/* Get event data from the ring_buffer target */
DECLARE @EventData AS XML = (SELECT CAST (xst.target_data AS XML) AS TargetData
                             FROM sys.dm_xe_database_session_targets AS xst
                                  INNER JOIN sys.dm_xe_database_sessions AS xs
                                      ON xst.event_session_address = xs.address
                             WHERE xs.name = N'automatic_index_compaction');

/* Return statistics for each 10-minute interval */
WITH compaction_stats_event AS (
    SELECT d.value('@timestamp', 'datetimeoffset') AS timestamp,
           d.value('(data[@name = "database_id"]/value/text())[1]', 'smallint') AS database_id,
           d.value('(data[@name = "compact_attempts"]/value/text())[1]', 'bigint') AS compact_attempts,
           d.value('(data[@name = "compact_completed"]/value/text())[1]', 'bigint') AS compact_completed,
           d.value('(data[@name = "pages_deallocated_compaction"]/value/text())[1]', 'bigint') AS pages_deallocated_compaction,
           d.value('(data[@name = "rows_moved"]/value/text())[1]', 'bigint') AS rows_moved
    FROM @EventData.nodes('/RingBufferTarget/event') AS e(d)
    WHERE e.d.value('@name', 'sysname') = 'auto_index_compaction_stats'
),
timestamp_map AS (
    SELECT database_id,
           timestamp,
           LAG(timestamp) OVER (PARTITION BY database_id ORDER BY timestamp) AS previous_timestamp
    FROM compaction_stats_event
)
SELECT c.timestamp,
       c.database_id,
       c.compact_attempts - p.compact_attempts AS compact_attempts,
       c.compact_completed - p.compact_completed AS compact_completed,
       c.pages_deallocated_compaction - p.pages_deallocated_compaction AS pages_deallocated_compaction,
       c.rows_moved - p.rows_moved AS rows_moved
FROM compaction_stats_event AS c
     INNER JOIN timestamp_map AS tm
         ON c.timestamp = tm.timestamp
        AND c.database_id = tm.database_id
     INNER JOIN compaction_stats_event AS p
         ON tm.previous_timestamp = p.timestamp
        AND tm.database_id = p.database_id
ORDER BY timestamp DESC;

Önceki sorguyu diğer olay alanlarını içerecek şekilde değiştirebilir ve çeşitli nedenlerle atlanan sıkıştırma girişimlerinin sayısı gibi daha fazla istatistik döndürebilirsiniz. Olayın tüm alanlarını ve açıklamalarını görmek için aşağıdaki sorguyu auto_index_compaction_stats kullanın.

SELECT name,
       type_name,
       description
FROM sys.dm_xe_object_columns
WHERE object_name = N'auto_index_compaction_stats'
      AND column_type = N'data';

Geri bildirim gönderme

Microsoft, otomatik dizin sıkıştırma ile ilgili geri bildirimlerinizi duymak istiyor. SQL geri bildirim forumunda yeni bir fikir göndererek ürün geri bildirimi gönderin. Diğer topluluk üyeleri fikirlerinizi ve önerilerinizi oylayabilir ve yorum yapabilir. Topluluk oyları ve yorumları, Microsoft'un ürün geliştirmelerini planlamasına ve önceliklerini belirlemeye yardımcı olur.