CaptureChangeMySQL 2025.5.31.15¶
Pacote¶
com.snowflake.openflow.runtime | runtime-database-cdc-processors-nar
Descrição¶
Lê eventos CDC de um banco de dados MySQL. O processador lê continuamente eventos de arquivos de log binários, filtrando aqueles relacionados às tabelas fornecidas por TableStateService e descartando o restante. O processador gera dois tipos de FlowFiles: DDLs contendo o esquema de uma tabela (o esquema inicial e um novo esquema em cada alteração de esquema); e DMLs contendo registros que representam alterações de dados na tabela. Um FlowFile sempre representa os dados relacionados a uma única tabela. O DDL com o esquema é gravado no conteúdo do FlowFile como um objeto JSON:{ «columns»: [ { «name»: «<columnName>», «type»: «<snowflakeType>», «nullable»: <true|false>, «scale»: <scale>, «precision»: <precision> }, …], «primaryKeys»: [«<primaryKey1>», «<primaryKey2>», …]}Estrutura do FlowFiles que contém os registros DML:{ «primaryKeys»: { «<column>»: <value>, … }, «payload»: { «<column>»: <value>, … }, «metadata»: { «<column>»: <value>, … }}
Requisito de entrada¶
FORBIDDEN
Oferece suporte a propriedades dinâmicas confidenciais¶
falso
Propriedades¶
Propriedade |
Descrição |
---|---|
Armazenamento de filtro de colunas |
Serviço que armazena configurações de filtragem de colunas por tabela. |
Tempo limite de conexão |
Tempo limite de conexão com o banco de dados de origem |
Local do driver JDBC |
Lista separada por vírgulas de arquivos/pastas e/ou URLs contendo o driver JAR e suas dependências (se houver). Por exemplo, “/var/tmp/mariadb-java-client-3.4.1.jar” |
JDBC URL |
URL do JDBC da conexão com o banco de dados, ou seja, jdbc:mariadb://localhost:3306/mysql |
Tamanho máximo do lote |
O número máximo de registros a serem processados em uma única iteração. O número de registros pode exceder o tamanho máximo do lote quando o último evento do log binário contém mais de uma linha. |
Tempo máximo de espera do lote |
O tempo máximo de espera para que os dados apareçam no log binário. |
Tamanho máximo da fila |
O número máximo de elementos lidos do log binário até que o thread do leitor aguarde pelo onTrigger |
Senha |
Senha para acessar o banco de dados MySQL |
Record Writer |
O Record Writer é usado para serializar eventos DML |
Serviço de contexto SSL |
O serviço de contexto SSL que oferece suporte à comunicação por soquete criptografado |
Modo SSL |
Modo SSL usado quando o serviço de contexto SSL está configurado para oferecer suporte a opções de verificação de certificado |
ID do servidor |
ID do servidor (no intervalo de 1 a 2^32 - 1). Esse valor deve ser exclusivo em todo o grupo de replicação (ou seja, diferente de qualquer outro ID de servidor que esteja sendo usado por qualquer mestre ou servo). Lembre-se de que cada cliente de log binário deve ser tratado como um servo simplificado e, portanto, deve também usa um ID de servidor diferente. |
Estratégia de ID de servidor |
Determina como o ID de servidor é selecionado |
Armazenamento de estado de tabela |
O armazenamento compartilhado que mantém o estado das tabelas replicadas. |
Nome de usuário |
Nome de usuário para acessar o banco de dados MySQL |
Gerenciamento do estado¶
Escopos |
Descrição |
---|---|
CLUSTER |
Informações como um “ponteiro” para o evento CDC atual no banco de dados são armazenadas por esse processador, de modo que ele possa continuar do mesmo local se for reiniciado. |
Relações¶
Nome |
Descrição |
---|---|
success |
FlowFile criado com sucesso a partir de eventos de fluxo da CDC |
Grava atributos¶
Nome |
Descrição |
---|---|
source.schema.name |
Nome do esquema de tabela da qual um evento se originou |
source.table.name |
Nome da tabela da qual um evento se originou |
cdc.event.type |
Tipo de evento realizado pelo FlowFile: ddl ou dml |
cdc.most.significant.position |
A posição mais significativa do ddl no fluxo da CDC |
cdc.least.significant.position |
A posição menos significativa do ddl no fluxo da CDC |
cdc.event.seen.at |
Carimbo de data/hora do momento em que o evento ddl foi lido pelo processador |