Aracılığıyla paylaş


Dizin ddl işlemleri için disk alanı gereksinimleri

Oluşturduğunuzda, yeniden oluşturmak veya dizinler bırakın disk alanının önemli bir husustur.Yetersiz disk alanı performansı düşebilir veya hatta dizin işlemin başarısız olmasına neden.Bu konu dizini için gereken disk alanı miktarını belirlemenize yardımcı olacak genel bilgi verir veri tanımlama dili (ddl) işlemlerini.

Ek Disk alanı gerektiren dizin işlemleri

Aşağıdaki dizin işlemleri ek disk alanı gerektirir:

  • ALTER DİZİN YENİDEN DÜZENLE; Ancak, günlük alanı gereklidir.

  • kümelenmemiş dizin bırakarak zaman dizini bırakın.

  • drop INDEX, bırakarak, bir kümelenmiş dizin taşımak için yan tümce tümce tümce belirtmeden çevrimdışı ve olmayan tümce tümcekümelenmiş dizines mevcut değil.

  • create table (birincil anahtar veya UNIQUE kısıtlamaları)

Ek Disk alanı gerektiren dizin işlemleri

Tüm diğer dizin ddl işlemleri, işlem sırasında kullanılacak ek geçici disk alanı ve yeni bir dizin yapısı veya yapılar depolamak için kalıcı bir disk alanı gerektirir.Dizin yapıları hakkında daha fazla bilgi için bkz: Tablo ve dizin veri yapıları mimarisi.

Yeni bir dizin yapısı oluşturduğunuzda, bunların uygun dosyaları ve filegroups (kaynak) eski ve yeni (hedef) yapıları için disk alanı gereklidir.Dizin oluşturma hareketi tamamlar kadar eski yapı kaldırıldı.

Aşağıdaki dizin ddl işlemleri yeni dizin yapıları oluşturmak ve ek disk alanı gerektirir:

  • DİZİN OLUŞTURMA

  • DROP_EXISTING İLE DİZİN OLUŞTURMA

  • ALTER DİZİN YENİDEN OLUŞTURMA

  • alter tablo KISITLAMA Ekle (birincil anahtar veya UNIQUE)

  • alter tablo bırakma kısıtlaması (birincil anahtar veya UNIQUE) ne zaman kısıtlaması temel bir kümelenmiş dizin üzerinde

  • Bırakma dizini taşımak için (uygulanır yalnızca kümelenmiş dizinler.)

Sıralama için geçici Disk alanı

Disk yanı sıra kaynak ve hedef yapıları, geçici disk alanı için gereken alanı sıralamak için gerekli sürece sorgu iyileştiricisi sıralama gerektirmeyen yürütme planı bulur.

Sıralama gerekiyorsa, sıralama ortaya yeni bir dizinde bir saat.kümelenmiş dizin ve tek bir deyim içinde ilişkili kümelenmemiş dizinleri yeniden oluşturmak, örneğin, dizinler sıralanmış art arda olur.Bu nedenle sıralama için gerekli olan ek geçici disk alanı yalnızca işlem içindeki en büyük dizin olarak büyük olması gerekir.Kümelenmiş dizin hemen her zaman budur.

SORT_IN_TEMPDB seçenek ise küme on, en büyük dizin içine sığması gerekir tempdb.Bu seçeneği, bir dizin oluşturmak için kullanılan geçici disk alanı miktarını artırır, ancak dizin oluşturmak için gereken zamanı azaltabilir, tempdb diskler farklı bir dizi olan kullanıcı veritabanı.İçinde sıralama hakkında daha fazla bilgi için tempdb, bkz: tempdb ve dizin oluşturma.

SORT_IN_TEMPDB, küme için kapalı (varsayılan) her dizin bölümlenmiş dizinler dahil olmak üzere, kendi hedef disk alanında; sıralanır ve yalnızca yeni dizin yapıları için disk alanı gerekli.

Disk alanı hesaplama örneği için bkz: Dizin Disk alanı örneği.

Çevrimiçi dizin işlemleri için geçici Disk alanı

Çevrimiçi dizin işlemleri gerçekleştirdiğinizde ek geçici disk alanı gereklidir.

kümelenmiş dizin, yeniden veya çevrimiçi bırakılan, yeni yer imi için eski yer işaretlerini eşleştirmek için geçici kümelenmemiş dizin oluşturulur.SORT_IN_TEMPDB seçenek ise küme bu geçici dizin oluşturulur, on tempdb.SORT_IN_TEMPDB ise küme için kapalı, aynı dosya grubu veya bölümü Düzen gibi hedef dizin kullanılır.Geçici eşleme dizini her satır için bir kayıt içeren tablo, ve içeriği de dahil olmak üzere eski ve yeni yer imi sütun Birliği uniqueifiers ve tanımlayıcıları ve dahil olmak üzere herhangi bir sütun hem yer imleri kullanılan tek bir kopyasını kaydetmeÇevrimiçi dizin işlemleri hakkında daha fazla bilgi için bkz: Çevrimiçi dizin işlemleri gerçekleştirme.

Not

SORT_IN_TEMPDB seçenek olamaz küme drop INDEX deyimleri için.Geçici eşleme dizini her zaman hedef dizini olarak aynı dosya grubu veya bölümleme düzeni oluşturulur.

Efektleri dizin operasyondan başka işlemler tarafından yapılan değişiklikler yalıtmak için çevrimiçi dizin işlemleri kullan satır sürüm.Bu paylaşım kilitleri okunup okunmadığını satırlardaki isteyen gereğini engeller.Eşzamanlı kullanıcı güncelleştirme ve silme işlemleri sırasında çevrimiçi dizin işlemleri gerektiren alan sürüm kayıtlarında tempdb.Daha fazla bilgi için bkz: Çevrimiçi dizin işlemleri gerçekleştirme ve Satır sürüm oluşturma tabanlı yalıtım düzeyleri anlama.