Tworzenie stron
We/Wy z wystąpienie Aparat baz danych zawiera zapisy fizyczne i logiczne.Logiczne zapisu występuje podczas modyfikacji danych strona w buforu pamięci podręcznej.Fizyczne zapisu występuje, gdy strona jest zapisywany z buforu pamięci podręcznej dysku.
Po zmodyfikowaniu strona w pamięci podręcznej buforu nie bezpośrednio zapisana na dysku; natomiast strona jest oznaczony jako dirty.Oznacza to, że strona może zawierać więcej niż jednego zapisu logiczne przed fizycznym zapisaniem danych na dysku.Dla każdego zapisu logiczne rekordu dziennika transakcji jest wstawiany w pamięci podręcznej dziennika modyfikacji rekordów.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.Jest to niezbędne do poprawnej pracy Menedżera odzyskiwanie.Aby uzyskać więcej informacji, zobacz Dziennik transakcji zapisu z wyprzedzeniem.
Na następującej ilustracji pokazano proces pisania strona zmodyfikowane dane.
Gdy Menedżer buforu zapisuje strona, wyszukiwanie kolejnych stron dirty, które mogą być zawarte w jednym operacja zapisu zbiorczego.strona sąsiadujące strona kolejne identyfikatory, są z tego samego pliku; strony nie musi być ciągła w pamięci.Wyszukiwanie jest kontynuowane zarówno do przodu i wstecz aż do wystąpienia jednego z następujących zdarzeń:
Znaleziono czystą strona.
32 stron zostały znalezione.
A zanieczyszczona strona jest znaleziono, którego numer sekwencyjny dziennika (LSN) nie został jeszcze opróżniony w dzienniku.
strona zostanie znaleziony, nie może być zablokowane natychmiast.
W ten sposób można zapisać cały zestaw stron na pojedynczym dysku, operacja zapisu zbiorczego.
Tuż przed napisano strona formularza ochrony strona, określone w bazie danych zostanie dodany do strona.Jeśli ochrona poszarpane strona zostanie dodany, strona muszą być zablokowane dla we/wy EX(clusively).Wynika to z ochrony strona poszarpane modyfikuje strona dokonywania nienadające się do innego wątek do odczytu.Jeśli ochrona strony suma kontrolna jest dodawany lub baza danych używa Brak ochrony strony, strona jest zatrzaśnięcieed z UP(data) zatrzaśnięcie dla we/wy.To zatrzaśnięcie uniemożliwia modyfikowanie strona podczas zapisu przez nikogo innego, ale nadal umożliwia czytelnikom go używać.Aby uzyskać więcej informacji o opcjach ochrony strona do dysku, zobacz Zarządzanie buforu.
zanieczyszczona strona jest zapisywana na dysku na trzy sposoby.
Zapisywanie z opóźnieniem
Opóźnieniem jest procesu system, który utrzymuje dostępnych wolnych buforów przez usunięcie rzadko używane strony z buforu pamięci podręcznej.Dirty strony są najpierw zapisywane na dysku.
Chcesz pisania
Proces zapisu chcesz zapisuje strony dirty dane skojarzone z nonlogged operacji, takich jak luzem Wstaw i wybierz do.Proces ten umożliwia tworzenie i zapisywanie nowych stron miała miejsce równolegle.Wywołanie operacji, nie ma czekać, aż cała operacja zakończy się przed zapisywania stron na dysku.
Punkt kontrolny
Proces punkt kontrolny okresowo skanuje pamięć podręczną buforu dla buforów ze stronami z określonej bazy danych i zapisuje wszystkie zmienione strony dysku.Punkty kontrolne zaoszczędzić czas podczas odzyskiwanie później przez utworzenie punktu, w którym wszystkie strony dirty gwarantowana zostały zapisane na dysku.Użytkownik może zażądać operacji punkt kontrolny przy użyciu polecenia punkt kontrolny lub Aparat baz danych może generować automatyczne punkt kontrolny na podstawie ilości miejsca w dzienniku używane oraz czas, jaki upłynął od momentu ostatniego punkt kontrolny.Ponadto punkt kontrolny jest generowany po wystąpieniu niektórych działań.Na przykład gdy plik danych lub dziennika jest dodawany lub usuwany z bazy danych lub gdy wystąpienie SQL Server jest zatrzymana.Aby uzyskać więcej informacji, zobacz Punkty kontrolne i aktywna część dziennika.
Zapisywanie z opóźnieniem, pisania chcesz i procesów punkt kontrolny nie Czekaj na zakończenie operacji We/Wy.Zawsze używać we/wy asynchronicznych (lub nakładające się) i kontynuować prac później sprawdzanie powodzenia We/Wy.Dzięki temu SQL Server maksymalizację zasobów Procesora i we/wy dla odpowiednich zadań.