Baza a dyski fizyczne

Dane, jak i dziennik transakcji można dodatkowo zabezpieczyć przed ewentualnymi awariami dysków fizycznych. Do tego celu należy użyć macierzy dyskowych z zaimplementowanymi konfiguracjami RAID (ang. Redundant Array of Independent Disks).

Istnieje wiele konfiguracji RAID, ale do najbardziej znanych i zarazem najczęściej stosowanych należą: RAID-0, RAID-1, RAID-5 oraz RAID-10. Implementacja RAID może być rozwiązana drogą
sprzętową lub programową w systemie Operacyjnym.


Bezpieczeństwo fizyczne danych

program WMS” href=”http://wms.net.pl/”>
Program WMS

W plikach danych przechowywane są obiekty baz danych, takie jak tabele (wraz z danymi), indeksy czy procedury składowane. W plikach dziennika transakcji system zapisuje strony (w przypadku systemów SQL Server strona to blok 8 KB, ale można go zwiększyć) zawierające modyfikacje danych. Rozmieszczenie plików odgrywa znaczącą rolę w procesie tworzenia i optymalizacji bazy danych. Istnieje szereg zasad przydatnych w planowaniu fizycznej implementacji bazy danych.

Zasady te to m.in.:

  • Pliki dziennika transakcji należy umieszczać na innym dysku fizycznym niż pliki danych. W przypadku awarii jednego z dysków tracimy tylko część bazy.
  • Tabele często występujące razem w złączeniach (ang. joins) należy umieszczać w osobnych plikach (grupach plików) na osobnych dyskach fizycznych. Dzięki temu możliwe jest równoległe pobieranie danych z tych tabel.
  • Indeksy nieklastrowane należy umieszczać na innych dyskach fizycznych niż ich bazowe tabele. Zyskiwana jest większa wydajność zapisu danych.
  • Tabele często modyfikowane należy oddzielić fizycznie (umieścić na innym dysku) od tabel rzadko modyfikowanych. W przypadku większych baz danych upraszcza to proces wykonywania kopii zapasowych.
  • Gdy mowa jest o naprawdę dużych instancjach stosowane bazy są dedykowane. Rozwiązania programowo-sprzętowe typu klastry z wydajnymi macierzami dyskowymi.

Jednoczesne spełnienie wszystkich wymienionych punktów jest raczej niemożliwe. W idealnym przypadku oddzielenie dziennika transakcji od danych i maksymalne rozczłonkowanie danych pomiędzy tak wiele dysków, jeśli się da, byłoby rozwiązaniem dającym maksymalne bezpieczeństwo i wydajność bazy.