Rozdrobnienie blokady i hierarchii
The Microsoft Aparat baz danych programu SQL Server has multigranular locking that allows different types of resources to be locked by a transaction.Aby zminimalizować koszty blokowania, Aparat baz danych blokad zasobów automatycznie poziom odpowiednim do zadań.Blokowanie w mniejszych ziarnistość, takich jak wiersze, zwiększa współbieżność, ale ma wyższe koszty, ponieważ więcej blokad muszą się odbyć, jeżeli wiele wierszy są zablokowane.Blokowanie w większej ziarnistość, takich jak tabele, są drogie w zakresie współbieżność, ponieważ blokowanie całej tabela ogranicza dostęp do dowolnej części tabela przez inne transakcje.Ma jednak mniejszym obciążeniu ponieważ mniej blokady są właściwie utrzymywane.
Aparat baz danych Często ma uzyskać blokady na wielu poziomach ziarnistość do zapewnienia pełnej ochrony zasób.Ta grupa blokada na wielu poziomach ziarnistość jest nazywany hierarchii blokada.Na przykład w celu zapewnienia pełnej ochrony odczytu indeksu wystąpienie Aparat baz danych może być uzyskanie blokady udziału w wierszach i blokad udostępnienie zamierzone na stronach i tabela.
W poniższej tabela przedstawiono zasoby Aparat baz danych można blokada.
Zasób |
Opis |
---|---|
RID |
Identyfikator wiersza, używane do blokada jednego wiersza w sterty. |
KLUCZ |
A blokada wiersza w ramach indeksu używany do ochrony klucz zakresów w transakcjach możliwy do serializacji. |
STRONY |
8 Kilobajtów (KB) strona w bazie danych, takich jak strona danych lub indeks. |
ZAKRES |
Ciągłe grupy ośmiu stron, takich jak strony danych lub indeks. |
HoBT |
Sterty lub B-drzewo.A blokada ochrony B-drzewo (indeks) lub stron sterty danych w tabela, która nie ma indeks klastrowany. |
TABELA |
Całą tabela, włączając w to wszystkie dane i indeksy. |
PLIK |
Plik bazy danych. |
APLIKACJA |
Zasób określonej aplikacji. |
METADANE |
Blokady metadanych. |
ALLOCATION_UNIT |
jednostka alokacji. |
BAZY DANYCH |
Cała baza danych. |
Ostrzeżenie
HoBT i tabel blokad mogą mieć wpływ opcji LOCK_ESCALATION ALTER TABLE.