Aracılığıyla paylaş


Dizin Operations nasıl çevrimiçi çalışma

Bu konuda bir çevrimiçi dizin işlemi sırasında mevcut ve bu yapıları ile ilişkili etkinlikleri gösterir yapýlarý tanýmlar.

Çevrimiçi dizin yapıları

Dizin sırasında eşzamanlı kullanıcı etkinliği için izin vermek için veri tanımlama dili (ddl) işlemi, aşağıdaki yapıları çevrimiçi dizin işlemi sırasında kullanılır: Kaynak ve zaten varolan dizinler, hedef, ve kümelenmiş dizinler için geçici eşleme dizini.

  • Kaynak ve zaten varolan dizinleri

    kaynak Özgün tablo veya kümelenmiş dizin veri.Zaten varolan dizinleri kaynak yapısı ile ilişkili tüm kümelenmemiş dizinleri olan.Örneğin, dört ilişkili kümelenmemiş dizinler kümelenmiş dizin çevrimiçi dizin işlemi oluşturuyor, kaynak varolan kümelenmiş dizin ve zaten varolan dizinler kümelenmemiş dizinleri.

    Zaten varolan dizinler eşzamanlı kullanıcı seçme, ekleme, güncelleştirme ve silme işlemleri için kullanılabilir.Bu toplu ekler (desteklenir, ancak önerilmez) ve örtülü güncelleştirmeleri Tetikleyiciler ve bilgi içeren bütünlük kısıtlamaları.Önceden varolan tüm dizinler sorguları ve aramalar için kullanılabilir.Yani bunlar seçilmiş olması ile sorgu iyileştiricisi ve gerekirse, Index ipuçlarına belirtilen.

  • Hedef

    Hedef veya hedefler, yeni dizin (veya yığın) veya bir küme , yüklenmekte olan yeni dizinler oluşturulmuş veya yeniden.Kullanıcı ekleme, güncelleştirme ve silme işlemleri için kaynak uygulandığını tarafından SQL Server Veritabanı Altyapısı hedef sırasında dizin işlemi.Kümelenmiş bir dizin çevrimiçi dizin işlemi oluşturuyor, örneğin, hedef yeniden kümelenmiş dizin ise; Veritabanı Altyapısı kümelenmiş dizin yeniden oluşturulurken kümelenmemiş dizinleri yeniden.

    Hedef dizin dizin işlemi kararlıdır kadar select deyimleri işlerken aranmaz.Dahili olarak, dizin salt okunur olarak işaretlenmiş.

  • Geçici eşleme dizini

    Çevrimiçi dizin işlemleri oluşturmak, drop ya da kümelenmiş dizin yeniden oluşturmak, ayrıca geçici eşleme dizini gerektirir.Bu geçici dizin tarafından eşzamanlı işlemler ne zaman yerleşik yeni dizinleri silinecek kayıtları alttaki satırları belirlemek için kullanılan temel alınan tablo güncelleştirildi veya silindi.Bu kümelenmemiş dizin aynı adımı yeni kümelenmiş dizin (veya yığın) olarak oluşturulur ve ayrı sıralama işlemi gerektirmez.Eşzamanlı işlemler de tüm bunların INSERT, update ve delete işlemleri, geçici eşleme dizini korumak.

Çevrimiçi dizin etkinlikler

Dizinlenmemiş tablo (yığın), kümelenmiş dizin oluşturma gibi bir basit çevrimiçi dizin işlemi sırasında kaynak ve hedef üç aşama gidin: hazırlık, yapı ve final.

Çevrimiçi ilk kümelenmiş dizin oluşturma işlemi aşağıdaki çizimde gösterilmektedir.Kaynak nesne, öbek diğer dizinleri vardır.Her aşama için kaynak ve hedef yapı etkinlikleri gösterilir; ve eşzamanlı kullanıcı seçme, ekleme, güncelleştirme ve silme işlemleri de gösterilir.Hazırlık, yapı ve son aşamaları, her aşamasında kullanılan kilit modları ile birlikte belirtilir.

Çevrimiçi dizin işlemi sırasında gerçekleştirilen etkinlikler

Kaynak yapısı Aktiviteler

Aşağıdaki tablo her dizin işlemi ve karşılık gelen kilitleme stratejisini aşamasında kaynak yapıları kişiyle ilgili etkinlikleri listeler.

Aşama

Kaynak Aktivite

Kaynak kilitleri

Hazırlık

Çok kısa aşaması

Yeni boş dizin yapısını oluşturmak için sistem meta veriler hazırlama.

Tablo anlık görüntü tanımlanır.Diğer bir deyişle, satır sürüm oluşturma, işlem düzey okuma tutarlılık sağlamak için kullanılır.Daha fazla bilgi için bkz: Satır sürüm oluşturma tabanlı yalıtım düzeyleri anlama.

Kaynak bilgisayarda eşzamanlı kullanıcı yazma işlemleri çok kısa bir süre için bloke edilir.

Birden fazla kümelenmemiş dizinleri oluşturma dışında hiçbir eş zamanlı ddl işlemleri izin verilir.

S (paylaşılan) tablo *

(Amacı paylaşılan)

INDEX_BUILD_INTERNAL_RESOURCE **

Oluştur

Ana aşama

Verileri taranan sıralanmış, birleştirilmiş ve toplu yükleme işlemlerinde hedef eklenen.

Zaten varolan dizinleri ve oluşturulan tüm yeni dizinler için eşzamanlı kullanıcı seçme, ekleme, güncelleştirme ve silme işlemleri uygulanır.

(Amacı paylaşılan)

INDEX_BUILD_INTERNAL_RESOURCE **

Son

Çok kısa aşaması

Bu evre başlamadan önce tüm kaydedilmemiş güncelleştirme işlemlerini tamamlamanız gerekir.Alınan kilit bağlı tüm yeni kullanıcı okuma veya bu aşaması tamamlanıncaya kadar çok kısa bir süre için hareketler engellendi yazma.

Kaynak ile hedef değiştirmek için sistem meta veriler güncelleştirildi.

Gerekirse, kaynak bırakılır.Örneğin, yeniden inşa etmek veya kümelenmiş dizin bırakarak sonra.

INDEX_BUILD_INTERNAL_RESOURCE **

S (paylaşılan) oluşturuyorsanız, tablo üzerinde bir kümelenmemiş dizin. *

sch-m (şema yapısı (dizin veya tablo) tüm kaynak, değiştirme) dropped.* olur

* Dizin işlem herhangi kaydedilmemiş güncelleştirme hareketleri üzerindeki s-kilit veya sch-m kilidi alınıyor önce tamamlanması bekleyeceği tablo.

** Dizin işlemi sürerken kaynak kilit INDEX_BUILD_INTERNAL_RESOURCE kaynağı ve zaten varolan yapıları üzerinde eşzamanlı ddl işlemleri yürütülmesini engeller.Örneğin, bu kilit eşzamanlı yeniden aynı iki dizin oluşturulmasını engeller tablo.Bu kaynak kilit Sch-m kilidi ile ilişkili olsa da, veri denetleme deyimleri engellemez.

Önceki tablo , tek bir dizin içeren bir çevrimiçi dizin işlemi yapım aşamasında alınan tek bir paylaşılan (s) kilit gösterir.Ne zaman kümelenmiş ve kümelenmemiş dizinleri yerleşik veya yeniden, bir tek çevrimiçi dizin işlemi (örneğin, ilk kümelenmiş dizin oluşturma sırasında bir tablo bir veya daha fazla kümelenmemiş dizinleri içeren) iki kısa dönemli (s) paylaşılan kilitleri uzun vadeli Is kilitleri tarafından izlenen yapım aşamasında alındı.s kilit bir kümelenmiş dizin oluşturma ve kümelenmiş dizin oluşturma işlemi tamamlandığında, ilk alım, kümelenmemiş dizinler oluşturmak için ikinci bir kısa dönemli s kilit aldı.Kümelenmemiş dizinleri oluşturduktan sonra bir Is kilidi s kilit kadar son aşaması olarak çevrimiçi dizin işlemi indirgenmez.

Hedef yapısı Aktiviteler

Aşağıdaki tablo hedef yapısı, her dizin işlemi ve karşılık gelen kilitleme stratejisini aşamasında ilgili etkinlikleri listeler.

Aşama

Hedef etkinliği

Hedef kilitleri

Hazırlık

Yeni dizin oluşturulur ve küme salt yazılır.

(Amacı paylaşılan)

Oluştur

Gelen veri eklendiğinde kaynak.

(Ekler, güncelleştirmeler, siler) için uygulanan kullanıcı değişiklikler kaynak uygulanır.

Bu etkinlik, kullanıcı için saydamdır.

(Amacı paylaşılan)

Son

Dizini meta veriler güncelleştirildi.

Dizin okuma/yazma durumu küme.

S (paylaşılan)

veya

sch-m (şema değiştirme)

Hedef dizin işlemi tamamlanıncaya kadar kullanıcı tarafından verilen select deyimleri tarafından erişilir.

Hazırlık ve son aşaması tamamlandıktan sonra yordam önbelleği depolanan sorgu ve güncelleştirme planları geçersiz kılınır.Yeni dizin izleyen sorgular kullanır.

Bir imleç bildirilen bir çevrimiçi dizin işlemi dahil olduğu bir tablo üzerinde yaşam çevrimiçi dizin aşamalara göre sınırlıdır.Güncelleştirme imleçler her aşaması sırasında geçersiz kılınır.Salt okunur imleçler sonra son aşama geçersiz kılınır.