Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Esta página contém a documentação de referência para conectores baseados em consulta no Lakeflow Connect, incluindo parâmetros de configuração, requisitos de coluna de cursor, sintaxe de controle de exclusão e condições de erro.
Configuração do pipeline
Os parâmetros a seguir têm suporte para conectores baseados em consulta. Defina esses valores no ingestion_definition bloco da configuração do pipeline.
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
connection_name |
cadeia | Necessário para ingestão de conexão estrangeira | O nome da conexão que armazena credenciais de autenticação para o banco de dados de origem. Se ingest_from_uc_foreign_catalog for true, não especifique connection_name. |
ingest_from_uc_foreign_catalog |
boolean | Necessário para ingestão de catálogos estrangeiros | Definido para true ingerir de um catálogo estrangeiro apoiado pela Federação Lakehouse. Se true, não especifique connection_name. |
source_catalog |
cadeia | Sim | O catálogo no sistema de origem (ou o nome do catálogo estrangeiro, se ingest_from_uc_foreign_catalog for true). |
source_schema |
cadeia | Sim | O esquema no sistema de origem do qual ingerir. |
source_table |
cadeia | Necessário para objetos de nível de tabela | A tabela no esquema de origem a ser ingerida. |
cursor_column |
cadeia | Necessário para ingestão de conexão estrangeira | O nome da coluna do cursor a ser usada para acompanhamento incremental. Deve ser uma única coluna de aumento monotonicamente. Consulte os requisitos de coluna do Cursor. |
cursor_columns |
lista de cadeias de caracteres | Necessário para ingestão de catálogos estrangeiros | Uma lista que contém o nome da coluna do cursor. Há suporte apenas para uma coluna. |
primary_keys |
lista de cadeias de caracteres | Obrigatório, a menos que o modo SCD (controle de histórico) seja APPEND_ONLY (ingestão de catálogo estrangeiro) |
As colunas de chave primária usadas para identificar linhas para operações de mesclagem. Necessário para e SCD_TYPE_1 modosSCD_TYPE_2. |
deletion_condition |
cadeia | No | Uma expressão SQL que é true avaliada para linhas que representam exclusões suaves. Configurável apenas usando a API. Consulte a condição de exclusão. |
hard_deletion_sync_min_interval_in_seconds |
inteiro | No | O intervalo mínimo em segundos entre as verificações de instantâneo de chave primária para detectar exclusões rígidas. Se não estiver definido, o controle de exclusão é desabilitado. Esse parâmetro não tem suporte quando scd_type é SCD_TYPE_2. Ele só é configurável usando a API (Beta). Consulte o acompanhamento de exclusão de disco rígido. |
scd_type |
cadeia | No | O modo SCD (controle de histórico) da tabela de destino. Valores com suporte: SCD_TYPE_1 (padrão), SCD_TYPE_2, APPEND_ONLY. |
destination_catalog |
cadeia | Sim | O catálogo para o qual gravar a tabela de destino. |
destination_schema |
cadeia | Sim | O esquema para o qual gravar a tabela de destino. |
destination_table |
cadeia | No | O nome da tabela de destino. O padrão será o nome da tabela de origem, se não for especificado. Consulte Nome de uma tabela de destino. |
Requisitos de coluna do cursor
A coluna do cursor acompanha o progresso incremental entre execuções de pipeline. O conector armazena o valor máximo do cursor após cada execução bem-sucedida e o usa como o filtro de limite inferior na próxima execução.
Requisitos:
- Você deve especificar uma única coluna de cursor. Você não pode especificar várias colunas como um cursor composto. Se você especificar mais de um, o pipeline falhará com
INVALID_CURSOR_COLUMNS. - A coluna do cursor deve aumentar monotonicamente. Os valores nunca devem diminuir. Linhas com valores de cursor em ou abaixo da marca de água alta armazenada não são redimensionadas em execuções subsequentes.
- Linhas com uma coluna de cursor NULL não são ingeridas.
Tipos de coluna com suporte:
- Tipos de data/hora ou carimbo de data (recomendado)
- Tipos numéricos (inteiro, inteiro longo, decimal e duplo)
- Tipos binários (codificados como números binários)
- Tipos de cadeia de caracteres
Condição de exclusão
O deletion_condition parâmetro permite que conectores baseados em consulta detectem exclusões temporárias. Esse recurso só é configurável usando a API.
O valor é uma expressão SQL que é avaliada true para linhas que devem ser tratadas como excluídas na tabela de destino. O conector avalia essa expressão durante cada execução de pipeline.
Sintaxe:
"deletion_condition": "<sql-expression>"
Exemplos:
"deletion_condition": "deleted_at IS NOT NULL"
"deletion_condition": "is_deleted = 1"
"deletion_condition": "status = 'DELETED'"
Quando uma linha corresponde à deletion_condition, o conector remove a linha correspondente da tabela de destino (para SCD_TYPE_1) ou marca-a como excluída (para SCD_TYPE_2).
Acompanhamento de exclusão dura
O hard_deletion_sync_min_interval_in_seconds parâmetro permite que conectores baseados em consulta detectem exclusões difíceis — linhas que foram removidas fisicamente da tabela de origem. Esse recurso está em Beta e só é configurável usando a API.
O acompanhamento de exclusão temporária funciona tirando periodicamente um instantâneo das chaves primárias presentes na tabela de origem e comparando-as com a tabela de destino. As linhas presentes no destino, mas ausentes do instantâneo de origem, são tratadas como excluídas.
O valor define o intervalo mínimo em segundos entre verificações de instantâneo. Esse valor atua como um limite inferior: se o pipeline for executado com menos frequência do que esse intervalo, a sincronização de exclusão rígida se alinhará à frequência real de ingestão em vez de executar com mais frequência. Atualizar esse parâmetro não dispara um instantâneo completo.
Observação
O acompanhamento de exclusão difícil requer primary_keys ser configurado na tabela. Não há suporte quando scd_type é SCD_TYPE_2.
Sintaxe:
"hard_deletion_sync_min_interval_in_seconds": <integer>
Exemplo:
"hard_deletion_sync_min_interval_in_seconds": 86400
Este exemplo dispara uma verificação de exclusão forçada não mais do que uma vez a cada 24 horas (86400 segundos).
Condições de erro
O erro mais comum é INVALID_CURSOR_COLUMNS. Isso ocorre quando a coluna do cursor não está configurada corretamente. Consulte colunas de cursor inválidas para obter etapas de solução de problemas.