A edição de campos e atribuição de valores é um componente de processamento de dados para tarefas de sincronização em tempo real de tabela única no DataWorks Data Integration. Adicione esse componente a uma tarefa para incluir campos durante a sincronização, atribuir valores a eles e gravá-los no destino.
Pré-requisitos
Crie uma fonte de dados. Para mais informações, consulte Data source management.
-
Crie uma tarefa do Data Integration. Para mais informações, consulte Configure a single-table real-time synchronization task.
NotaEm tarefas de sincronização em tempo real de tabela única do Data Integration, você pode adicionar um componente de processamento de dados entre os componentes de origem e destino. Para mais informações, consulte Supported data sources and synchronization solutions.
Adicionar um campo durante a sincronização
Em uma tarefa de sincronização em tempo real de tabela única, ative a chave Data Processing.
Clique em +Add Node e adicione o componente Edit Field and Assign Value.
Configure o componente de edição de campos e atribuição de valores. Selecione os campos ancestrais para enviar ao componente downstream, adicione os campos necessários e atribua um valor a cada novo campo. Para obter uma descrição de cada coluna e método de atribuição de valor, consulte Field settings.
Após configurar Source e Field editing and value assignment, clique em Output Preview para visualizar os dados de saída do nó atual e verificar se atendem aos seus requisitos.
-
No mapeamento de campos, configure o mapeamento entre cada novo campo e um campo na tabela de destino.
ImportanteUm campo recém-adicionado só será gravado na tabela de destino após a configuração de seu mapeamento com um campo da tabela de destino no mapeamento de campos.
Configurações de campo
O componente de edição de campos e atribuição de valores opera em dois grupos de campos: os campos gerados pelo componente ancestral e os campos adicionados manualmente.
-
Campos ancestrais: campos que o componente ancestral envia para o componente de edição de campos e atribuição de valores. As colunas a seguir descrevem esses campos:
Field Name: nome do campo gerado pelo componente ancestral.
Type: tipo de dados gerado pelo componente ancestral.
Value: para um campo já existente no componente ancestral, o valor corresponde à saída do ancestral. Para um novo campo, três métodos de atribuição de valor estão disponíveis: constante, variável e função.
Actions: para um campo de saída do ancestral, especifique se o campo deve ser enviado ao componente downstream.
-
Custom Field: clique em Add Field no canto inferior esquerdo da página de edição de campos e atribuição de valores para adicionar um novo campo. Atribua um valor ao novo campo usando um dos seguintes métodos:
Constant: converte o texto constante inserido manualmente para o tipo de dados especificado e o atribui ao novo campo.
Variable: atribui o valor de uma variável integrada ao novo campo durante a execução da sincronização. Para ver as variáveis disponíveis, consulte Supported variables.
Function: executa um cálculo de função durante a sincronização e atribui o resultado ao novo campo. Se ocorrer uma exceção durante o processamento da função, o registro será tratado como dados incorretos e contabilizado nas estatísticas de dados incorretos da tarefa de sincronização. A configuração de tolerância a dados incorretos determina então se a tarefa é encerrada de forma anormal. Para ver as funções disponíveis, consulte Supported functions.
Exemplo
Neste exemplo, o componente Kafka ancestral gera os campos
_key_(STRING),_value_(STRING),_partition_(LONG),_offset_(LONG),_timestamp_(LONG) e_headers_(STRING). Todos esses campos são selecionados para saída no componente downstream. Nos campos personalizados, um campoadd_colé adicionado, com o tipo de dados definido como STRING, o método de atribuição de valor definido como constante e o valor definido como1.Variáveis compatíveis
Selecione o método de atribuição de valor por variável para preencher um novo campo com um valor resolvido pela tarefa de sincronização em tempo de execução. A tabela a seguir lista as variáveis integradas compatíveis.
NotaDevido a diferenças nas características do sistema, algumas origens e destinos podem não ser compatíveis com todas as variáveis listadas na tabela abaixo.
Categoria
Variável
Descrição
Origem
PROCESS_TIME
Momento em que a tarefa de sincronização processa o registro. O valor é um timestamp de 13 dígitos em milissegundos.
Origem
DATASOURCE_NAME_SRC
Nome da fonte de dados de origem.
Origem
DB_NAME_SRC
Nome do banco de dados de origem.
Origem
SCHEMA_NAME_SRC
Nome do schema de origem.
Origem
TABLE_NAME_SRC
Nome da tabela de origem.
Origem
TOPIC_NAME_SRC
Nome do tópico de origem.
Destino
TABLE_NAME_DEST
Nome da tabela de destino.
Destino
TOPIC_NAME_DEST
Nome do tópico de destino.
Destino
SCHEMA_NAME_DEST
Nome do schema de destino.
Destino
DB_NAME_DEST
Nome do banco de dados de destino.
Destino
DATASOURCE_NAME_DEST
Nome da fonte de dados de destino.
Funções compatíveis
Escolha o método de atribuição de valor por função para calcular o valor de um novo campo durante a execução da sincronização. As seguintes funções são compatíveis.
Nos formatos de hora utilizados por essas funções, como
yyyy-MM-dd HH:mm:ss:SSS ZZ,yyyyindica o ano,MMo mês,ddo dia,HHa hora no formato de 24 horas,mmo minuto,sso segundo,SSSo milissegundo eZZo fuso horário.DATE_FORMAT
Converte um timestamp em uma string de tempo com um formato específico.
Parâmetro
Descrição
Parameter 1
Um campo ancestral de tipo numérico, sendo um timestamp UNIX de 10 dígitos ou um timestamp de milissegundos de 13 dígitos.
Parameter 2
O tipo de timestamp.
unixindica um timestamp UNIX de 10 dígitos, emillisindica um timestamp de milissegundos de 13 dígitos.Parameter 3
O fuso horário usado para a conversão.
Parameter 4
O formato da string de data para conversão, por exemplo
yyyy-MM-dd HH:mm:ss:SSS ZZ.TO_TIMESTAMP
Converte uma string de tempo em um timestamp de 10 ou 13 dígitos.
Parâmetro
Descrição
Parameter 1
Um campo ancestral do tipo texto contendo uma string de tempo em um formato específico.
Parameter 2
O tipo de timestamp para conversão.
unixindica um timestamp UNIX de 10 dígitos, emillisindica um timestamp de milissegundos de 13 dígitos.Parameter 3
O fuso horário usado para a conversão.
Parameter 4
O formato da string de tempo, por exemplo
yyyy-MM-dd HH:mm:ss:SSS ZZ.SUBSTRING
Extrai uma substring de uma string.
Parâmetro
Descrição
Parameter 1
Um campo ancestral do tipo texto.
Parameter 2
A posição inicial da substring. A substring inclui o caractere na posição inicial. A posição inicial mínima é 0.
Parameter 3
O comprimento da substring. Se o comprimento for menor ou igual a 0, a função retorna a substring da posição inicial até o final da string.