Kontrolowanie procesu CDC
Data Movement gateway używa struktur pamięci ECSA – zwanych usługami R4Z CDC – które są tworzenie podczas przetwarzania CDC. Każda partycja logiczna systemu z/OS może zawierać kilka takich usług R4Z CDC. Do tworzenia usług R4Z CDC dostarczany jest specjalny program narzędziowy R4ZCTL.
Programu tego można także używać do zarządzania stanem przetwarzania CDC, jak również poziomem ruchu po stronie systemu z/OS.
Program R4Z Control (R4ZCTL) jest wymagany do następujących celów: sprawdzanie CDC i raportowanie stanu usług CDC, wstrzymywanie przetwarzania CDC, wznawianie wstrzymanego przetwarzania CDC oraz zamykanie procesu CDC normalnie lub przymusowo.
Podczas wykonywania programu R4ZCTL są dostępne następujące parametry polecenia:
Jeśli polecenie zostanie wykonane bez żadnych parametrów, to zwróci obecny stan usługi CDC.
- CHECKCONFIG – weryfikuje poprawność parametrów konfiguracji
- PAUSE_TASK – zatrzymuje usługę określonego zadania CDC
- PAUSE_CDC – zatrzymuje całą aktywność usługi CDC
- RESUME_TASK – wznawia wykonywanie wstrzymanego zadania
- RESUME_CDC – wznawia wstrzymaną usługę CDC
- TERMINATE – zatrzymuje usługę CDC, a następnie zwalnia jej zasoby
- FORCE – to samo, co TERMINATE, kiedy zadanie zajmujące zasoby ulegnie „zawieszeniu”
Ponieważ programy R4ZCTL wymagają autoryzacji APF, wszystkie biblioteki w STEPLIB muszą być autoryzowane przez APF.
Kiedy program R4ZCTL zostanie uruchomiony bez parametrów, jego kod ukończenia jest ustawiany na podstawie tego, czy środowisko zostało zainicjalizowane (CC=0) czy nie (CC=1).
Składnia wywoływania programu sterującego
Program R4ZCTL jest wywoływany jako krok zadania, tj. EXEC PGM=R4ZCTL, i przyjmuje instrukcje przez parametr wywołania tego kroku zadania.
Parametr wywołania R4ZCTL jest łańcuchem zawierającym opcjonalne podparametry rozdzielone przecinkami:
[SERVICE=CDC-service-qualifier,][MSGLVL={0 | 1},][action]
Kolejność podparametrów w łańcuch jest nieistotna.
Gdzie:
SERVICE=CDC-service-qualifier określa logiczny zakres aktywności Qlik Talend Data Integration, na którą program sterujący ma reagować.
MSGLVL={0 | 1 | 2} określa poziom powiadomień, jakie mają być pokazywane w pliku komunikatów podczas działania programu sterującego.
- 0 = brak powiadomień
- 1 = umiarkowany
- 2 = maksymalny
action-verb może mieć jedno z następujących ustawień:
-
PAUSE_TASK(*|ALL|task-qualifier)
Zawiesza pobieranie CDC dla zadań wskazanych w nawiasie.
-
PAUSE_CDC
Zawiesza pobieranie CDC dla całej usługi CDC. Zadania Replication zawieszone na dłużej niż określony czas są zatrzymywane i podejmują kilka prób przywrócenia. Nowe zadania nie są serwowane.
-
RESUME_TASK(*|ALL|task-qualifier)
Wznawia pobieranie CDC dla zadania określonego przez task-qualifier.
-
RESUME_CDC
Wznawia pobieranie CDC dla wszystkich instancji pasujących do kwalifikatora session-limits.
-
DUMP_TASK(*|ALL|task-qualifier)
Wymaga sformatowanego zrzucania informacji sterujących w rezydentnych strukturach pamięci. ALL wyznacza wszystkie sesje; SUMMARYONLY wyznacza tylko kotwicę.
-
TERMINATE
Zwalnia wszystkie rezydentne struktury pamięci R4Z, zamyka wszystkie aktywne instancje i usuwa powiązane zasoby. Od tego momentu wszystkie żądania CDC będą zwracać stan nieaktywny, aż usługa CDC zostanie automatycznie aktywowana przez przychodzące wywołanie czytnika UDF CDC.
Opis elementów składni
W powyższych opisach składni użyto następujących elementów:
-
CDC-service-qualifier
Czteroznakowa nazwa (pierwszy znak musi być literą, pozostałe mogą być literami i cyframi) określająca usługę CDC.
„Usługa CDC” oznacza grupę zasobów – struktury pamięci, zdefiniowana przez użytkownika funkcja tabeli (user-defined table function – UDTF) zdefiniowana w DB2 i środowisko aplikacji (APPLENV) zdefiniowane w zasadach WLM. R4Z umożliwia określenie właściwości – limity pamięci i progi przetwarzania – dla każdej usługi CDC. Zarządzanie kilkoma usługami CDC może być konieczne z innego powodu: w celu uwzględnienia więcej niż jednego wydania Data Movement gateway używanego na jednej partycji logicznej, z których każde zarządza swoimi strukturami pamięci niezależnie od pozostałych.
-
task-qualifier
Czterocyfrowy identyfikator przypisywany podczas inicjalizacji zadania. Identyfikator ten służy głównie do kontrolowania i śledzenia ruchu CDC określonego zadania. Tworzy on CORRID (identyfikator korelacji) wątku DB2 serwującego CDC — zajmuje tam 9-12 bajtów.
Kody ukończenia programu sterującego
- 0 – normalne zakończenie
- 1 – środowisko nie powoduje wyjścia kwalifikatora session-limits (jeśli nie określono action)
- 4 – ostrzeżenie
- 8 – błąd
Przykładowe zadania (w bibliotece INSTALL)
IV1CHECK – sprawdza konfigurację wszystkich usług CDC
XMDUMP – zrzuca wszystkie sesje
XMPAUSE – wstrzymuje sesję
XMRESUME – wznawia sesję
XMTERMIN – zamyka wszystkie sesje
Włączanie procesu CDC (automatyczna aktywacja)
Aby funkcja UDTF czytnika CDC mogła działać, musi ona mieć możliwość alokacji i wstępnego formatowania struktur pamięci w ECSA w czasie wywoływania UDTF oraz za pierwszym razem po uruchomieniu systemu z/OS. Ponadto musi mieć dostęp do zestawu konfiguracji dla usługi CDC serwowanej przez UDTF (lub „domyślnych” konfiguracji w przypadku wartości nieokreślonych na poziomie usługi CDC).
W związku z tym proces instalacji powinien:
- Tworzyć specjalną funkcję UDTF serwującą usługę CDC. Nazwa utworzonej funkcji UDTF ma na końcu dwa znaki podkreślenia („__”) i człon CDC-service-qualifier, na przykład: <schema>.R4Z_UDTF__<CDC-service-qualifier>.
- Tworzyć środowisko aplikacji APPLENV WLM do wykonywania wywołań powyższej funkcji UDTF. Utworzone środowisko aplikacji APPLENV także może mieć nazwę z przyrostkiem w postaci kwalifikatora usługi CDC, aby zapewnić jej niepowtarzalność – co jest zalecane. Jednego środowiska APPLENV może używać kilka funkcji UDTF.
- Tworzyć procedurę JCL, aby „hostować” wykonania APPLENV WLM. Ta procedura JCL różni się od zwykłych procedur STC WLM tym, że musi zostać określona specjalna nazwa DDNAME, R4ZCNFG, której DSN odnosi się do biblioteki CONFIG produktu R4Z. W bibliotece tej MUSI znajdować się istniejący członek o nazwie „CDCS”, określający domyślne konfiguracje usługi CDC. Ponadto MOŻE istnieć członek o nazwie „CDCS<CDC-service-qualifier>” z wartościami konfiguracji, które chcesz zastosować do tej usługi CDC.
-
Zawartość każdego z członków CDCS* w bibliotece CONFIG jest listą instrukcji przypisania, po jednej na kartę, w formacie „klucz=wartość”. Instrukcje może być poprzedzone spacjami i są rozdzielane spacjami, natomiast nie mogą ich zawierać. Karty, których nazwy zaczynają się od łącznika (-), są traktowane jako karty komentarzy. Także treść następująca po spacji końcowej jest traktowana jako komentarz.
Słowa kluczowe, wartości maksymalne, wartości minimalne i wartości domyślne Słowo kluczowe Opis Minimum Maksimum Domyślne MAXSESSIONS
Maksymalna liczba sesji CDC.
1
128
32
SESSIONTIMEOUTSECS
Liczba sekund limitu czasu sesji.
300
7200
900
MAXIFIBUFKBYTES
Maksymalny rozmiar bufora dozwolony dla odczytów IFI w kilobajtach.
64
1024
256
MAXRESULTSETMBYTES
Maksymalny rozmiar w megabajtach łącznego wyniku do osiągnięcia. Kiedy wynik zostaje osiągnięty, następuje jego zwrócenie.
1
2048
4
MAXRESULTSETSECS
Maksymalny interwał czasu w sekundach akumulacji zestawu wynikowego. Kiedy wynik zostaje osiągnięty, następuje jego zwrócenie.
1
120
30
Ustanawianie usług CDC R4Z
Wybór usług CDC: Na podstawie przewidywanego zapotrzebowania na niezależne procesy replikacji (aby umożliwić używanie różnych wersji, zapewnić wystarczającą ilość pamięci ECSA, uwzględnić różne dozwolone opóźnienia itd.), określ, które usługi CDC R4Z mają istnieć na każdej partycji logicznej. Dla każdej usługi wybierz kwalifikatory usługi CDC (4 znaki). Ponadto musisz zdecydować, czy każda usługa CDC ma mieć własne środowisko aplikacji (APPLENV) WLM, czy jedno środowisko aplikacji będzie obsługiwało wszystkie usługi CDC.
Musisz ustawić zmienną DEFWLMAE (definicja środowiska aplikacji WLM) w członku DFSYMLST na PER (pierwsza opcja) lub ONE (druga opcja). Po zdefiniowaniu tego ustawienia możesz przejść do instalacji:
Informacja-
Jeśli wybierzesz wartość ONE dla zmiennej DEFWLMAE, zadania DO2* i DO3SRVTF powinny być wykonywane na czas. Jeśli wybierzesz ustawienie PER, to te zadania powinny być wykonywane dla każdej usługi CDC, po ustawieniu zmiennej CDCSRV JCL SET na kwalifikator usługi CDC.
-
Zadanie DO3SRVDF tworzy bibliotekę CONFIG i umieszcza członka o nazwie „CDCS”, który służy jako domyślny plik konfiguracji. Po uruchomieniu zadania DO3SRVTF biblioteka będzie zawierała konfigurację wszystkich usług CDC, co umożliwi ich edycję i zmianę konfiguracji wybranych usług CDC.
-
Jeśli zmiennej DEFWLMAE zostanie nadana wartość ONE, używane są wartości domyślne produktu zamiast członków biblioteki CONFIG.
-