BAZY DANYCH

Odczyt widmo (Phantom read)

Jest to sytuacja w której dwa odczyty w ramach jednej transakcji zwracają różną ilość wierszy. Jest to bliźniaczo podobna sytuacja do Niepowtarzalnego odczytu (Phantom read), lecz w tym wypadku chodzi o liczbę odczytanych wierszy. Przykład – zamawianie towaru 0. Na stanie w magazynie jest już tylko jedna sztuka towaru (jeden wiersz)1. John postanawia kupić ten …

Odczyt widmo (Phantom read) Czytaj dalej »

Brudny odczyt (Dirty read)

Jest to sytuacja, w której transakcja odczytuje dane które nie zostały jeszcze zatwierdzone (commit) przez inną transakcję. Przykład – przelewy bankowe 0. Użytkownik John ma na koncie 60 zł1. Użytkownik Frank wykonuje przelew w wysokości 30 zł na konto Johna2. Użytkownik John zauważa, że ma na koncie 90 zł więc kupuje sobie upatrzoną od dawna …

Brudny odczyt (Dirty read) Czytaj dalej »

Zagubiony zapis (Lost update)

Jest to sytuacja, w której jeszcze przed zakończeniem (commit) jednej transakcji druga transakcja nadpisuje zmiany tej pierwszej. Istotnym elementem jest tutaj uprzednie sprawdzenie stanu bazy danych. Przykład – licznik odwiedzin strony 0. Załóżmy, że jeszcze nikt nie odwiedził jeszcze naszej strony, a więc licznik jest równy zero (licznik = 0)1. Pierwsza transakcja (pierwszy użytkownik wchodzi …

Zagubiony zapis (Lost update) Czytaj dalej »

Klastrujący i nieklastrujący indeks [clustered & non clustered]

Indeks klastrujący (clustered) Stworzenie takiego indeksu powoduje zmianę kolejności przechowywania elementów oryginalnej tabeli tak, żeby była posortowana po kluczu indeksu. Czyli powiedzmy mając tabelę „Pracownicy” i nakładając na nią indeks klastrujący oparty o kolumnę „zarobki” powodujemy przesortowanie wszystkich elementów tabeli według klucza „zarobki”: Id Name 1 John 2 Patrick 3 Anthony Dodając indeks klastrujący na …

Klastrujący i nieklastrujący indeks [clustered & non clustered] Czytaj dalej »

Jak fizycznie przechowywane są dane w bazach danych?

Patrząc z góry na to jak bazy danych przechowują dane możemy podzielić je na: dane (konkretne dane wprowadzane do tabel) oraz metadane (informacje o tabelach, więzach integralności… ). Bazy danych przetrzymują powyższe w oddzielnych od siebie miejscach. Miejsce składowania danych nazywane jest stronami (ang. pages), zaś metadanych nazywane jest katalogiem bazy danych (ang. database catalog): …

Jak fizycznie przechowywane są dane w bazach danych? Czytaj dalej »

Brudny zapis (Dirty write)

Jest to sytuacja, w której dwie transakcje operują na tych samych zasobach i nadpisują je sobie w trakcie ich wykonywania. Istotne jest tutaj to, że zapisu nie poprzedza odczyt (czyli jest to ślepy zapis). Przykład – uzupełnianie stanu magazynu 0. W magazynie jest 120 sztuk towaru1. Magazynier John otwiera aplikację i zdejmuje jedną sztukę towaru …

Brudny zapis (Dirty write) Czytaj dalej »