Controlando o processo de CDC
O Gateway Data Movement usa estruturas de memória ECSA, chamadas de serviços CDC R4Z, que são formadas durante o processamento de CDC. Cada LPAR z/OS pode conter vários desses serviços CDC R4Z. Para formar os serviços de CDC R4Z, é fornecido um programa utilitário especial, o R4ZCTL.
Esse programa também pode ser usado para gerenciar o estado do processamento de CDC, bem como o nível de tráfego no lado do z/OS.
O programa de controle R4Z (R4ZCTL) é necessário para as seguintes finalidades: verificar a CDC e relatar o status do serviço de CDC, pausar o processamento de CDC, retomar uma CDC pausada e encerrar o processo de CDC, normalmente ou à força.
Os parâmetros de comando disponíveis ao executar o programa R4ZCTL são:
Se você executar o comando sem parâmetros, ele retornará o status atual do serviço de CDC.
- CHECKCONFIG : verifica se os parâmetros de configuração são válidos
- PAUSE_TASK: interrompe o serviço de uma tarefa específica de CDC
- PAUSE_CDC: interrompe toda a atividade de um serviço de CDC
- RESUME_TASK: permite que uma tarefa pausada continue
- RESUME_CDC: permite que um serviço de CDC pausado continue
- TERMINATE : interrompe o serviço de CDC e, uma vez interrompido, libera seus recursos
- FORCE : igual a TERMINATE quando os recursos de retenção de tarefas "travam"
Como os programas R4ZCTL exigem autorização APF, todas as bibliotecas no STEPLIB devem ser autorizadas pela APF.
Ao executar R4ZCTL sem parâmetros, seu código de conclusão é definido dependendo de o ambiente ter sido inicializado (CC=0) ou não inicializado (CC=1).
Sintaxe de invocação do programa de controle
O programa R4ZCTL é invocado como uma etapa de trabalho, ou seja, EXEC PGM=R4ZCTL, e aceita instruções por meio do parâmetro de invocação da etapa de trabalho.
O parâmetro de invocação R4ZCTL é uma string que pode conter subparâmetros opcionais, separados por vírgula, da seguinte forma:
[SERVICE=CDC-service-qualifier,][MSGLVL={0 | 1},][action]
A ordem dos subparâmetros na string não é importante.
Em que:
SERVICE=CDC-service-qualifier designa o escopo lógico da atividade Qlik Talend Data Integration, sobre a qual o programa de controle deve atuar.
MSGLVL={0 | 1 | 2} designa o nível de notificações a serem exibidas no arquivo de mensagens durante a operação do programa de controle.
- 0 = Nenhuma notificação
- 1 = Moderado
- 2 = Máximo
action-verb pode ser um dos seguintes:
-
PAUSE_TASK(*|ALL|task-qualifier)
Suspende a recuperação de CDC para as tarefas designadas entre parênteses.
-
PAUSE_CDC
Suspende a recuperação de CDC para todo o serviço de CDC. As tarefas de replicação suspensas por mais de um determinado tempo são interrompidas e tentarão a recuperação várias vezes. Nenhuma nova tarefa será atendida.
-
RESUME_TASK(*|ALL|task-qualifier)
Retoma a recuperação da CDC para a tarefa designada por task-qualifier.
-
RESUME_CDC
Retoma a recuperação da CDC para todas as instâncias que correspondem ao qualificador session-limits.
-
DUMP_TASK(*|ALL|task-qualifier)
Solicita o despejo formatado das informações de controle nas estruturas de memória residentes. ALL designa todas as sessões; SUMMARYONLY designa somente a âncora.
-
TERMINATE
Libera todas as estruturas de memória residentes do R4Z, encerra todas as instâncias ativas e exclui os recursos associados. A partir desse ponto, todas as solicitações de CDC retornarão o status inativo até que o serviço de CDC seja ativado automaticamente por uma chamada recebida para a UDF do leitor de CDC.
Referência de elementos de sintaxe
Os elementos usados nas descrições de sintaxe acima são os seguintes:
-
CDC-service-qualifier
Um nome de quatro caracteres (primeiro caractere alfabético, resto alfanumérico), que designa um serviço de CDC.
"Serviço de CDC" refere-se a um grupo de recursos: estruturas de memória, uma função de tabela definida pelo usuário (UDTF) definida no DB2 e um ambiente de aplicativo (APPLENV) definido na política do WLM. O R4Z permite que você especifique propriedades (limites de memória e limites de processamento) para cada serviço de CDC. Pode ser necessário gerenciar vários serviços de CDC também por outro motivo, ou seja, permitir que mais de um lançamento do Gateway Data Movement seja usado em um único LPAR, com cada versão mantendo suas estruturas de memória independentemente das outras.
-
task-qualifier
Um identificador de quatro dígitos sendo atribuído no início da tarefa. Esse identificador tem como objetivo principal controlar e rastrear o tráfego de CDC de uma tarefa específica. Ele forma o CORRID (ID de correlação) do thread DB2 que serve à CDC: ele ocupa os bytes de 9 a 12 lá.
Controlar códigos de conclusão de programas
- 0: conclusão normal
- 1: o ambiente não sai do qualificador session-limits (quando nenhum action é especificado)
- 4: Aviso
- 8: Erro
Trabalhos de amostra (na biblioteca INSTALL)
IV1CHECK: verifica a configuração de todos os serviços de CDC
XMDUMP: descarta todas as sessões
XMPAUSE: pausa uma sessão
XMRESUME: retoma uma sessão
XMTERMINN: encerra todas as sessões
Habilitar o processo de CDC (ativação automática)
Para permitir que a função UDTF do leitor de CDC funcione, essa função precisa ser capaz de alocar e pré-formatar estruturas de memória no ECSA quando a UDTF é chamada e na primeira vez após a inicialização do sistema z/OS. Ela também precisa acessar as configurações definidas para o serviço de CDC que a UDTF está servindo (ou as configurações "padrão" para valores não especificados no nível do serviço de CDC).
Para explicar isso, o processo de instalação garante que:
- Uma UDTF especial seja criada para atender ao serviço de CDC. A UDTF criada tenha seu nome sufixado com um sublinhado duplo ("__") seguido por CDC-service-qualifier, formando um nome como: <schema>.R4Z_UDTF__<CDC-service-qualifier>.
- Um APPLENV WLM seja criado para executar invocações da UDTF acima. O APPLENV criado também pode ter seu nome sufixado com o qualificador do serviço de CDC, para garantir a exclusividade do nome APPLENV, o que é recomendado. Porém, várias UDTFs podem usar um único APPLENV.
- Um procedimento de JCL seja criado para "hospedar" as execuções de APPLENV WLM. Esse procedimento de JCL difere de um procedimento STC WLM comum, pois um DDNAME especial, R4ZCNFG, deve ser especificado, cujo DSN se refere à biblioteca CONFIG do produto R4Z. Nessa biblioteca, DEVE haver um membro denominado "CDCS", especificando as configurações padrão do serviço de CDC. Também PODE existir um membro denominado "CDCS<CDC-service-qualifier>" com os valores de configuração que você deseja solicitar para esse serviço de CDC.
-
O conteúdo de cada um dos membros de CDCS* na biblioteca CONFIG é uma lista de declarações de tarefas, uma por cartão, no formato "palavra-chave = valor". A instrução pode seguir espaços e ser terminada por espaço. Nenhum espaço é permitido com a instrução. Os cartões que começam com hífen ("-") são tratados como cartões de comentários, e o conteúdo após o espaço final também é tratado como comentário.
Palavras-chave, valores máximos, valores mínimos e valores padrão Palavra-chave Descrição Mínimo Máximo Padrão MAXSESSIONS
O número máximo de sessões de CDC.
1
128
32
SESSIONTIMEOUTSECS
O número de segundos após o qual a sessão atinge o tempo limite.
300
7200
900
MAXIFIBUFKBYTES
O tamanho máximo do buffer permitido para leituras de IFI, em Kbytes.
64
1024
256
MAXRESULTSETMBYTES
O tamanho máximo em Mbytes para o conjunto de resultados acumulados atingir. Quando ele é atingido, o conjunto de resultados é retornado.
1
2048
4
MAXRESULTSETSECS
O intervalo máximo de tempo, em segundos, para acumular o conjunto de resultados. Quando ele é atingido, o conjunto de resultados é retornado.
1
120
30
Estabelecer serviços de CDC R4Z
Decidir sobre serviços de CDC: Com base na previsão da necessidade de processos de replicação independentes (para permitir versões diferentes, garantir memória ECSA suficiente, considerar diferentes latências permitidas etc.), determine quais serviços de CDC R4Z devem existir em cada LPAR. Para cada serviço, escolha os qualificadores de serviços de CDC (4 caracteres). Você também precisa decidir se cada serviço de CDC deve ter seu próprio APPLENV (ambiente de aplicativos) WLM ou um único APPLENV para atender a todos os serviços de CDC.
Você precisa definir a variável DEFWLMAE (DEFine WLM Applic. Env.) no membro DFSYMLST como PER (primeira opção) ou ONE (segunda opção). Após a configuração, você pode prosseguir com a instalação:
Nota informativa-
Se você selecionar ONE para DEFWLMAE, os trabalhos DO2* e DO3SRVTF deverão ser executados uma única vez. Se você selecionar PER, esses trabalhos deverão ser executados para cada serviço de CDC depois que a variável JCL SET CDCSRV for definida como o qualificador do serviço de CDC.
-
O trabalho DO3SRVDF cria uma biblioteca CONFIG e coloca um membro denominado "CDCS", que serve como arquivo de configuração padrão. Depois de executar a tarefa DO3SRVTF, a biblioteca conterá a configuração de todos os serviços de CDC, possibilitando editá-los e alterar as configurações de um serviço de CDC específico.
-
Se ONE for usado para DEFWLMAE, os padrões do produto serão usados no lugar dos membros da biblioteca CONFIG.
-