Dlaczego polecenie SELECT powoduje zapisy dyskowe? Delayed Block Cleanout!

Przyjrzyjmy się ciekawemu zjawisku, które przejawia się tym, że czasami wykonanie zapytania SELECT powoduje modyfikacje bloków dyskowych oraz zapisy danych powtórzenia (Redo). W konsekwencji , wydajność polecenia SELECT staje się nieakceptowalna. W poniższym eksperymencie posługuję się tabelą zawierającą milion rekordów, zajmująca 130MB. W pierwszym kroku, na tabeli wykonuję polecenie UPDATE, które modyfikuje co piąty rekord.[…]

Jak działa Database Buffer Cache? (część 1)

Buffer Cache to obszar pamięci wewnątrz SGA pełniący rolę dwukierunkowego bufora dyskowego uczestniczącego w operacjach odczytu i zapisu obiektów użytkowników (tabele, indeksy). Jego rozmiar jest określany automatycznie lub jest narzucony przez administratora (parametr db_cache_size). Buffer Cache służy redukcji aktywności dyskowej serwera. Zanim zapytanie SQL odczyta blok danych z dysku, najpierw próbuje znaleźć ten blok w[…]