Aktualności i artykuły

Opublikowano: 17 czerwca 2014
Kategoria wpisu: administracjaporadniki

Bomba z opóźnionym zapłonem 2

W pierwszej część historii (zamieszczonej tutaj) opisywałem problem, który może pojawić się z parametrem opisującym wielkość ścieżki dostępu pliku bazy danych i jakie mogą być konsekwencje gdy pozostawimy go bez zmiany. Przyszedł czas na opis jak wykonać audyt naszych plików, określić które z nich są zagrożone przekroczeniem pojemności ścieżki dostępu i wykonać ewentualną zmianę.

Kroki, które musimy przedsięwziąć można sprowadzić do czterech czynności.

  1. Uruchomienie komendy Display File Description (DSPFD) by zebrać informacje na temat plików bazy danych i ich parametrów.
  2. Użycie SQL-a dla określenia które pliki mają 4GB ścieżki dostępu.
  3. Określenie, które z wybranych plików wymagają zmiany parametru (zwiększenia pojemności ścieżki dostępu).
  4. Zmiana parametru na 1TB.DB2 MAX4GB

Szczegółowa realizacja wymienionych kroków mogła by wyglądać następująco.

1. Zebranie informacji.

Do zebrania informacji na temat atrybutów wszystkich plików fizycznych i logicznych w systemie możemy posłużyć się komendą DSPFD. Składnia komendy odpowiednio dla typu pliku przedstawia się następująco:

DSPFD FILE(*ALL/*ALL) TYPE(*ATR) OUTPUT(*OUTFILE) FILEATR(*PF)
OUTFILE(nazwa_biblioteki/nazwa_pliku)
DSPFD FILE(*ALL/*ALL) TYPE(*ATR) OUTPUT(*OUTFILE) FILEATR(*LF)
OUTFILE(nazwa_biblioteki/nazwa_pliku)

2. Wybranie plików.

Kiedy posiadamy już pliki z atrybutami zbiorów bazodanowych wystarczy napisać proste zapytanie by wykryć te, które posiadajÄ… Å›cieżkÄ™ dostÄ™pu wielkoÅ›ci do 4GB. Możemy w tym celu skorzystać z Query lub SQL’a. Zapytanie bÄ™dzie wyglÄ…dać nastÄ™pujÄ…co

SELECT * FROM nazwa_pliku WHERE PHAPSZ = '0'

lub w przypadku plików logicznych

SELECT * FROM nazwa_pliku WHERE LGAPSZ = '0'

gdzie pole PHAPSZ i LGAPSZ reprezentuje wielkość Å›cieżki dostÄ™pu, a wartość '0′ w tym polu oznacza pojemność 4GB

3. Określenie plików do zmiany.

Zmiana parametru wielkości ścieżki może zająć sporo czasu w zależności od wielkości samego pliku (czasami godzinę i więcej). Oznacza również konieczność zablokowania pliku bazy danych przed dostępem z innych zadań i programów na czas zmiany. Może mieć również wpływ na wydajność systemu (większa pojemność ścieżki dostępu to przy wielu kluczach słabsza wydajność).

Warto więc dobrze określić dla wybranych w poprzednim kroku plików czy zmiana parametru powinna mieć miejsce. Jeśli wybrany plik, posiada ścieżkę dostępu której aktualna pojemność daleka jest od osiągnięcia bariery 4GB to może warto go pozostawić do zmiany w późniejszym czasie.

Wykonując komendę DSPFD na pliku wybranym do ewentualnej zmiany możemy podejrzeć aktualną wielkość ścieżki.

DSPFD FILE(nazwa_biblioteki/nazwa_pliku) TYPE(*MBR)

W sekcji „Access Path Activity Statistics”, w linii „Access path size” zobaczymy ile „waży” Å›cieżka dostÄ™pu.

Komenda DSPFD, linia AccessPathSize

Komenda DSPFD, linia AccessPathSize

Zasada, którą można się posłużyć w momencie podejmowania decyzji o zmianie parametru mówi że jeśli wielkość ścieżki dostępu nie przekracza 75% dopuszczalnej pojemności możemy pozostawić ją bez zmian. Innymi słowy wielkość do 3 GB jest OK. Natomiast przekroczenie pojemności ponad 75% (czyli 3 GB), a z całą pewnością ponad 85% oznacza konieczność zmiany parametru na *MAX1TB.

Ponieważ wielkość podawana jest w bajtach, dla ułatwienia obliczeń można posłużyć się poniższym wzorem:

(aktualna wielkość ścieżki dostępu/4000000000) > .75

4. Zmiana parametru.

JeÅ›li podjeliÅ›my decyzje o zmianie wielkoÅ›ci Å›cieżki do 1 terabajta dla wybranego pliku, pozostaje znaleźć odpowiednie „okno czasowe” w pracy systemu, zapewnić wyÅ‚Ä…czność w dostÄ™pie do pliku i wykonać poniższÄ… komendÄ™.

dla plików fizycznych

CHGPF FILE(nazwa_biblioteki/nazwa_pliku) ACCPTHSIZ(*MAX1TB)

i logicznych

CHGLF FILE(nazwa_biblioteki/nazwa_pliku) ACCPTHSIZ(*MAX1TB)

Po zmianie parametru system automatycznie odbuduje wszystkie indeksy dla pliku, dlatego należy zapewnić odpowiednią ilość czasu na tę operację.

WiedzÄ…c już jak rozbroić naszÄ… bombÄ™, a wiÄ™c znajÄ…c sposób postÄ™powania z plikami bazy danych zagrożonymi osiÄ…gniÄ™ciem dopuszczalnej pojemnoÅ›ci Å›cieżki dostÄ™pu (przy starym ustawieniu wynoszÄ…cym 4GB) możemy pokusić siÄ™ o zautomatyzowanie caÅ‚ego procesu, np. tworzÄ…c program CL-wy który wykona za nas caÅ‚Ä… pracÄ™. Ale to już temat na kolejny raz…

^