| Termin | Definicja |
|---|---|
| Harmonogram (Schedule) | Harmonogram (Schedule) to ogólne określenie zaplanowanego cyklu wykonywania zadania w systemie bazodanowym. Harmonogram jako reguła uruchamiania zadaniaHarmonogram w systemie bazodanowym określa, kiedy oraz jak często ma zostać wykonane wcześniej zdefiniowane zadanie. Sam harmonogram nie musi zawierać operacji zmieniającej dane. Jest regułą czasową powiązaną z zadaniem, procedurą, raportem, kopią zapasową, usuwaniem danych tymczasowych albo inną czynnością wykonywaną przez oprogramowanie bazodanowe. W zależności od używanego silnika harmonogram może być obsługiwany przez wbudowany moduł zadań, osobny proces systemowy lub zewnętrzny mechanizm planowania. Typowy harmonogram składa się z kilku elementów: daty rozpoczęcia, godziny uruchomienia, częstotliwości, ewentualnej daty zakończenia oraz informacji o strefie czasowej. Częstotliwość może oznaczać wykonanie jednorazowe, cykl godzinowy, dzienny, tygodniowy lub miesięczny. W praktyce warto rozróżniać moment zaplanowanego startu od rzeczywistego rozpoczęcia pracy. Opóźnienie może wynikać z obciążenia procesora, oczekiwania na blokady, niedostępności połączenia z bazą albo trwania poprzedniego uruchomienia tego samego zadania. Jak przebiega wykonanie zadania według planuPo nadejściu terminu mechanizm harmonogramu sprawdza, czy zadanie może zostać uruchomione. Następnie przekazuje je do wykonania i zapisuje podstawowe informacje o przebiegu, takie jak czas rozpoczęcia, czas zakończenia, status oraz komunikat błędu. Zadanie może zakończyć się powodzeniem, błędem technicznym, anulowaniem albo przekroczeniem ustalonego limitu czasu. Jeżeli mechanizm nie zapisuje historii wykonań, późniejsza ocena poprawności działania jest znacznie trudniejsza. Istotną właściwością harmonogramu jest sposób postępowania w przypadku nieudanego uruchomienia. Niektóre konfiguracje przewidują ponowienie po określonym czasie, inne kończą zadanie po pierwszym błędzie. Ponowienia powinny być stosowane ostrożnie, ponieważ nie każda operacja jest bezpieczna do wykonania drugi raz. Jeżeli zadanie dodaje rekordy, wysyła komunikaty lub modyfikuje pliki, wielokrotne uruchomienie może spowodować duplikaty albo niespójność danych. Bezpieczne zadanie powinno mieć jasno określone warunki wejściowe i przewidywalny skutek ponownego wykonania. Kolizje czasowe, blokady i niespójne wynikiDwa zadania uruchomione w tym samym czasie mogą korzystać z tych samych tabel, indeksów lub zasobów systemowych. Wtedy silnik bazy danych może zastosować blokady, przez co jedno zadanie będzie czekało na zakończenie drugiego. Przy długotrwałych operacjach występuje również ryzyko przekroczenia limitu czasu, wzrostu zużycia pamięci lub spowolnienia aplikacji korzystających z tej samej bazy. Z tego powodu harmonogram powinien uwzględniać rzeczywisty czas trwania zadań, a nie tylko nominalną godzinę rozpoczęcia. Problemem może być także niejednoznaczność strefy czasowej oraz zmiana czasu urzędowego. Zadanie zaplanowane na konkretną godzinę może zostać wykonane inaczej po zmianie konfiguracji systemu, serwera lub biblioteki obsługującej datę i czas. Przy analizie należy porównać czas zapisany w historii zadania z czasem systemowym i czasem używanym przez bazę. Trzeba również sprawdzić, czy harmonogram jest aktywny, czy wskazuje właściwe zadanie, czy konto wykonujące operację ma wymagane uprawnienia oraz czy poprzednie uruchomienie nie pozostaje w stanie trwającym. Sprawdzanie harmonogramu podczas pracy komputeraNa laptopie lub komputerze PC warto rozpocząć sprawdzanie od ustalenia, który program korzysta z bazy danych i gdzie zapisuje historię zadań. Należy zweryfikować, czy aplikacja działa w czasie zaplanowanego uruchomienia, czy komputer nie przechodzi w uśpienie oraz czy połączenie z bazą jest dostępne. Jeżeli zadanie ma wykonywać operację na plikach, trzeba sprawdzić także dostępność dysku, wolne miejsce i uprawnienia konta uruchamiającego proces. Sam fakt istnienia wpisu harmonogramu nie potwierdza, że powiązane zadanie faktycznie się wykonuje. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC oraz podzespołów, dlatego podczas diagnostyki może sprawdzić również problemy lokalne wpływające na działanie aplikacji bazodanowej, takie jak błędy dysku, niestabilność systemu, nieprawidłową konfigurację usług lub brak zasobów. Przydatne są dokładne informacje o nazwie programu, oczekiwanej godzinie wykonania, ostatnim poprawnym uruchomieniu oraz treści komunikatu błędu. Pozwala to odróżnić błąd samego harmonogramu od problemu z zadaniem, połączeniem z bazą albo środowiskiem komputera. |