架构师_程序员_码农网

K Parolayı al
Kayıt Olun

QQ登录

Başlamak için sadece bir adım

Arama
Görüntüleme:12183|Yanıt: 1
打印 上一主题 下一主题

[Arşiv]SQL Server Performans Optimizasyonu - Dizin Parçalanması

[Bağlantıyı Kopyala]
SQL Server Performans Optimizasyonu
D 跳转到指定楼层
sahibi
发表于 2020-12-27 22:32:27|只看该作者回帖奖励|TersGözat|Okuma Modu
Dizin Parçalanmasına Genel Bakış

Dizin parçalanması nedir ve bu konuda neden endişelenmeliyim?
Bir dizin, dizindeki mantıksal sıralamanın (dizindeki anahtar değerlere dayalı olarak) dizinlenen sayfalardaki fiziksel sıralamayla eşleşmediği sayfalar içerdiğinde parçalanma meydana gelir.
Veritabanı motoru, temel veriler üzerinde bir ekleme, güncelleme veya silme işlemi gerçekleştirildiğinde dizini otomatik olarak değiştirir. Örneğin, bir tabloya satır eklemek, yeni anahtar değerlerin eklenmesine yer açmak için satır deposu dizinindeki mevcut sayfaların bölünmesine neden olabilir. Zamanla, bu değişiklikler dizindeki bilgilerin veritabanı genelinde dağılmasına (parçalanmasına) neden olabilir. Parçalanma, bir dizinde bulunan sayfalardaki mantıksal sıralama (anahtar değerlere dayalı olarak) veri dosyasındaki fiziksel sıralamayla eşleşmediğinde ortaya çıkar.
Çok sayıda parçalanmış dizin sorgu performansını düşürebilir çünkü dizinin işaret ettiği verileri aramak için ek G/Ç gerekir. Daha fazla G/Ç, özellikle tarama işlemleri söz konusu olduğunda uygulama yanıtının yavaşlamasına neden olabilir.
Veritabanı dizin parçalanmasını kontrol etmek için

Komuta:



Birleştirme iki şekilde yapılabilir: dizinlerin yeniden düzenlenmesi ve dizinlerin yeniden oluşturulması. Dizinlerin yeniden oluşturulması, eski dizinlerin silinmesi ve yeni dizinlerin tek bir işlemde yeniden oluşturulması anlamına gelir; bu işlem orijinal dizinlerin sabit disk alanını geri alır ve dizin yapısını oluşturmak için yeni depolama alanı tahsis eder. Bir dizinin yeniden düzenlenmesi, yeni depolama alanı tahsis edilmemesi ve veri sayfalarının mantıksal sırasının fiziksel sırayla tutarlı olması için dizin yapısının yaprak düğümlerinin orijinal alan temelinde yeniden düzenlenmesi ve dizindeki fazla alanın boşaltılması anlamına gelir; bu da dizinin yeniden düzenlenmesinin yaprak düğümlerinin harici parçalanmasını azaltmak olduğu anlamına gelir.

Parçalanma derecesini tespit etmek için sys.dm_db_index_physical_stats işlevini kullanın, avg_fragmentation_in_percent alanı mantıksal parçalanma yüzdesi tarafından döndürülür, genel olarak Microsoft eşik olarak %30'u önerir:

avg_fragmentation_in_percent >%5 ve <=%30: dizini yeniden düzenleyin (ALTER INDEX REORGANIZE);
avg_fragmentation_in_percent >%30: dizini yeniden oluştur (ALTER INDEX REBUILD);

avg_fragmentation_in_percent: dizin parçalanma yüzdesi, parçalanma %10 ila %20'den azsa, parçalanmanın bir sorun haline gelmesi olası değildir, dizin parçalanması %20 ila %40 ise, parçalanma bir sorun haline gelebilir, ancak dizini ortadan kaldırmak için dizin yeniden düzenlemesi ile çözülebilir, büyük parçalanma ( parçalanma % 40'tan büyük olduğunda), dizinin yeniden oluşturulması gerekebilir .


Belirtilen bir tablonun tüm dizinlerinin parçalanma bilgilerini sorgulamak için



Tablo yeniden oluşturma dizini


Veritabanındaki tüm tablolar için dizinleri yeniden oluşturun



Referans: https: //docs.microsoft.com/zh-cn/sql/relational-databases/indexes/reorganize-and-rebuild-indexes?view=sql-server-ver15




Önceki: URL yanlışlıkla "/itsvse" ile bittiği için istek biçimi tanınamıyor.
Sonraki:ORM çerçevesi Dapper kullanımı basit
Birincisi, bir öncekinde kullanılan modelin aynısını kullanmak, ikincisi ise bir öncekinde kullanılan modelin aynısını kullanmaktır.
zgy0209zgy zgy0209zgy zgy0209zgy
发表于 2021-9-22 13:11:22|只看该作者
Neden bahsettiğimden emin değilim, ama neden bahsettiğimden emin değilim.
Çiftçi ağı kodu, sadece uygulama sürecinde yayınlandı, teknik zorluklarla karşılaştı, başkalarını yanıltmayın.
Geri gönderi yapabilmeniz için giriş yapmanız gerekmektedir Giriş Yap | Kayıt Ol

İntegral kurallarının bu versiyonu


YASAL UYARI: Code Farmer tarafından yayınlanan tüm yazılım, programlama materyalleri veya makaleler sadece öğrenme ve araştırma amaçlı kullanılmaktadır; yukarıdaki içerik ticari veya yasadışı amaçlarla kullanılamaz, aksi takdirde tüm sonuçlardan lütfen kullanıcı sorumludur. Bu site bilgileri ağdan alınmıştır, telif hakkı anlaşmazlığının bu site ile hiçbir ilgisi yoktur. Yukarıdaki içeriği indirdikten sonraki 24 saat içinde bilgisayarınızdan tamamen kaldırmalısınız. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kaydı satın alın ve daha iyi orijinal hizmet alın. Herhangi bir ihlal varsa, bununla ilgilenmek için lütfen bizimle e-posta yoluyla iletişime geçin.

Posta To:help@itsvse.com

QQ| ( 鲁ICP备14021824号-2)|Sitemap

GMT+8, 2024-9-19 00:16

Hızlı YanıtBaşadön Listeye dön