Strojenie bazy - liczba APW

Posted by marekk on 23-Dec-2014 13:48

Witam świątecznie,


Mam pytanie odnośnie wydajności baz danych, a dokładniej jaka jest optymalna liczba procesów APW. Czy to można jakoś określić?

All Replies

Posted by Piotr Tucholski on 24-Dec-2014 05:00

Witam. Kiedyś istniała reguła, że początkową ilość APW określało się jako: liczba dysków, na których znajduje się baza + 1. Należy jednak stosować się do innej reguły, mianowicie rozpocząć od 2 procesów APW i obserwować system, a w szczególności statystyki checkpointów. Napiszę o tym po Świętach, a teraz życzę Panu i wszystkim użytkownikom Progressa Wesołych i Spokojnych Świąt!

Posted by Piotr Tucholski on 29-Dec-2014 08:36

Witam poświątecznie. Wracając do strojenia, ważna jest statystyka checkpointów. Można to np. obserwować w narzędziu promon, opcja R&D, 3. Other Displays, 4. Checkpoints.

Ten ekran wyświetla informację o ostatnich checkpointach. Ważne jest tutaj aby odstępy między checkpointami nie były zbyt częste. Powinny być nie rzadziej niż 1-2 minuty. Jest to często wynikiem zbyt małego rozmiaru clustra pliku bi. Checkpoint ważny jest dla synchronizacji bazy - informacje z buforów zostają zapisane w plikach bazy, ale ponieważ operacje dyskowe są wąskim gardłem, lepiej żeby było ich jak najmniej. I tu przychodzą z pomocą procesy APW, które zapisują te bufory w tle. Kiedy przychodzi checkpoint, liczba buforów jest mała lub wynosi 0.

Zaczynamy więc od 2 APW i obserwujemy analizę Checkpoints. Jeśli w kolumnie Flushes liczba buforów  jest mała a odstęp między checkpointami wynosi 1-2 lub więcej minut to wszystko jest w porządku. Jeśli odstęp jest krótki, zwiększamy rozmiar clustra bi. Jeśli towarzyszy temu wzrost liczby buforów w kolumnie Flushes startujemy następny APW.

Tak to wygląda w skrócie. APW nie można dodawać bez końca, bo to nie miałoby sensu, ale w większości przypadków takie podejście jak opisałem powyżej powinno poprawić sytuację.

Posted by marekk on 29-Dec-2014 15:10

Bardzo dziękuję za obszerną odpowiedź. Chciałbym jeszcze zapytać czy promon to jedyne miejsce do zbierania takich informacji? Może jest jakiś skrypt?

Posted by Piotr Tucholski on 30-Dec-2014 10:09

Wiele statystyk można uzyskać w narzędziu OE Management lub OE Explorer. Poza tym można samemu napisać skrypt w języku ABL, w oparciu o tablice VST. W bazie wiedzy Progressa są też gotowe przykłady. Sam promon jest napisany właśnie przy użyciu tych tablic. Powodzenia.

This thread is closed