Sayfa yazma

G/Ç gelen bir örnek , Veritabanı Altyapısı içeren mantıksal ve fiziksel yazar.Mantıksal yazma sayfa veri değiştirildiğinde oluşur arabellek önbelleği.Fiziksel bir yazma diske yazılan sayfa arabellek önbellekten oluşur.

Arabellek önbelleği sayfa değiştirildiğinde, onu hemen yazılmaz disk; dön Bunun yerine, sayfa olarak işaretlenmiş kirli.Bunun anlamı bir sayfa fiziksel olarak yazılmadan önce yapılan birden fazla mantıksal yazma olabilir diske.Her mantıksal yazma için hareket günlük kaydını kaydeden değişiklik günlüğü önbelleğe eklenir.The log records must be written to disk before the associated dirty page is removed from the buffer cache and written to disk.SQL Server uses a technique known as write-ahead logging that prevents writing a dirty page before the associated log record is written to disk.Bu kurtarma yöneticisinin doğru çalışma için gereklidir.Daha fazla bilgi için bkz: İşlem günlüğü yazma ileriye.

Değiştirilen veri sayfa yazma işlemi aşağıdaki çizimde gösterilmektedir.

Değiştirilmiş veri sayfası yazma.

Arabellek Yöneticisi sayfa okurken, tek bir yer bitişik kirli sayfaları arar toplayarak yazma işlemi.Bitişik sayfaları ardışık sayfa kimliklerine sahip ve aynı dosyadan şunlardır; Sayfa bellekte bitişik olması gerekmez.Aşağıdaki olaylardan biri gerçekleşene kadar arama hem ileriye ve geriye doğru devam:

  • Temiz bir sayfa bulunamadı.

  • 32 sayfa bulundu.

  • Günlük sıra numarası (SSN) henüz günlüğe temizlendi değil kirli sayfa bulunur.

  • Bir sayfa, hemen latched edemiyor bulunamadı.

Bu şekilde, tüm sayfaları küme ile tek bir diske yazılabilir toplayarak yazma işlemi.

Yalnızca bir sayfa yazılmadan önce form veritabanında belirtilen sayfa koruma sayfaya eklenir.Bozuk sayfa koruması eklediyseniz, sayfa olmalıdır için g/Ç EX(clusively) latched.Bunun nedeni sayfayı okumak başka iş parçacığı için uygun hale getirme, bozuk bir sayfa korumasını değiştirir.Sayfa koruma sağlama toplamı eklenir veya sayfa koruma veritabanı kullanır sayfası olur mandalile bir UP(tarih) ed mandal g/Ç için.Bu mandal başkası sayfa yazma sırasında değiştirmesini engeller, ancak yine de kullanmak okuyucuları.Disk g/Ç sayfa koruma seçenekleri hakkında daha fazla bilgi için bkz: Arabellek Yönetimi.

kirli sayfa üç yoldan biriyle diske yazılır.

  • Yavaş yazma

    Tembel yazan arabellek önbellekten kullanılan sayfaları, seyrek kaldırarak boş arabellek kullanılabilir kalmasını sağlayan bir sistem işlemi olur.Kirli sayfaları ilk kez yazma diske.

  • Dinleyicilerle yazma

    Dinleyicilerle yazma işlemi toplu gibi nonlogged işlemleri ile ilişkili kirli veri sayfaları Ekle ve select into yazar.Bu işlem, oluşturma ve yazma paralel gerçekleşebilmesi için yeni sayfalar sağlar.Yani, arama işlemi sayfaları diske yazmadan önce tüm işlem bitene kadar bekleyin zorunda değildir.

  • Denetim noktası

    Denetim noktası işlemi düzenli olarak belirtilen veritabanından alınan sayfalı arabellekleri için arabellek önbelleği tarar ve tüm kirli sayfaları diske yazar.Denetim noktaları, tüm kirli sayfaları garanti yazmış olduğunuz için bir noktası oluşturarak bir sonraki kurtarma sırasında saat kaydetmek için disk.Kullanıcı denetim noktası komutunu kullanarak bir denetim noktası işlemi isteyebilir veya Veritabanı Altyapısı verebilir temel alınarak günlük kullanılan alan miktarını ve saat otomatik denetim noktaları geçen bu yana son denetim noktası.Buna ek olarak, belirli etkinlikler oluştuğunda bir denetim noktası oluşturulur.Örneğin, bir veri veya günlük dosyası eklendiğinde veya bir veritabanından kaldırılması ya da, örnek , SQL Server durduruldu.Daha fazla bilgi için bkz: Denetim noktaları ve günlük Active kısmı.

    Denetim noktası işlemleri yavaş yazma ve dinleyicilerle yazma g/Ç işlemi tamamlamak bekleyin.Bunlar her zaman zaman uyumsuz (veya çakışan) g/Ç kullanmak ve g/Ç başarı için daha sonra denetimi ile diğer çalışma devam edin.Böylece, SQL Server cpu ve g/Ç kaynakları en üst düzeye çıkarmak içinuygun görevleri.

Ayrıca bkz.

Kavramlar