Origem de lote do banco de dados

Esta página oferece orientações sobre como configurar o plug-in de origem em lote do banco de dados no Cloud Data Fusion.

Você pode usar essa fonte genérica sempre que precisar ler de um banco de dados. Por exemplo, é possível usá-lo para criar snapshots diários de uma tabela de banco de dados genérica e gravar a saída no BigQuery.

Configurar o plug-in

  1. Acesse a interface da Web do Cloud Data Fusion e clique em Studio.
  2. Verifique se a opção Pipeline de dados – lote está selecionada (não Tempo real).
  3. No menu Origem, clique em Banco de dados.
  4. Para configurar o plug-in, mantenha o ponteiro sobre o nó do plug-in e clique em Propriedades.
  5. Insira as seguintes propriedades. Para mais informações sobre cada propriedade, consulte Propriedades.

    1. Insira um Rótulo para o nó do banco de dados, por exemplo, database tables.
    2. Insira os detalhes da conexão. É possível configurar uma nova conexão única ou uma conexão existente e reutilizável.

      Nova conexão

      Para adicionar uma conexão única ao banco de dados, siga estas etapas:

      1. Mantenha a opção Usar conexão desativada.
      2. Insira as seguintes propriedades de conexão:
        1. No campo "Nome do driver JDBC", insira o nome do driver, se houver um. Caso contrário, mantenha a opção Nenhum plug-in JDBC selecionada.
        2. No campo String de conexão, insira a string de conexão JDBC, incluindo o nome do banco de dados.
        3. Opcional: se o banco de dados exigir autenticação, insira as credenciais de nome de usuário e senha do banco de dados.
        4. Opcional: se o driver JDBC precisar de configurações adicionais, no campo Argumentos de conexão, insira argumentos de chave-valor para a conexão.

      Conexão reutilizável

      Para reutilizar uma conexão existente, siga estas etapas:

      1. Ative a opção Usar conexão.
      2. Clique em Procurar conexões.
      3. Selecione a conexão.

      4. Opcional: se uma conexão não existir e você quiser criar uma nova conexão reutilizável, clique em Adicionar conexão e consulte as etapas na guia Nova conexão desta página.

    3. Opcional: para testar a conectividade, clique em Gerar esquema. Esse esquema é usado no lugar do esquema retornado pela consulta. Ele precisa corresponder ao esquema retornado pela consulta, exceto que você pode marcar campos como anuláveis e ele pode conter um subconjunto dos campos.

    4. No campo Importar consulta, insira uma consulta SELECT para importar dados da tabela especificada, por exemplo, select id, name, email, phone from users;.

    5. Opcional: no campo Consulta de limite, insira os valores mínimo e máximo a serem lidos. Por exemplo, SELECT * FROM table WHERE $CONDITIONS.

    6. Opcional: no campo Nome do campo de divisão, insira o nome do campo que gera as divisões.

    7. Opcional: no campo Número de divisões a gerar, digite um número, por exemplo, 2.

    8. Opcional: no campo Tamanho da busca, insira um número, por exemplo, 1000.

    9. Opcional: insira Propriedades avançadas, como alterar a maiúscula e minúscula dos nomes das colunas.

  6. Opcional: clique em Validar e corrija os erros encontrados.

  7. Clique em Fechar. As propriedades são salvas, e você pode continuar criando seu pipeline de dados no Cloud Data Fusion Studio.

Propriedades

Propriedade Macro ativada Obrigatório Descrição
Rótulo Não Sim O nome do nó no pipeline de dados.
Usar conexão Não Não Procure uma conexão com a fonte. Se a opção Usar conexão estiver selecionada, não será necessário fornecer credenciais.
Conexão Sim Sim Nome da conexão a ser usada. Se a opção Usar conexão estiver selecionada, esse campo vai aparecer. As informações do banco de dados e da tabela são fornecidas pela conexão.
Nome do driver JDBC Sim Sim O driver JDBC a ser usado.
O padrão é Nenhum plug-in JDBC.
String de conexão Sim Sim String de conexão JDBC, incluindo o nome do banco de dados.
Nome de usuário Sim Não Identidade do usuário para se conectar ao banco de dados. Obrigatório para bancos de dados que precisam de autenticação. Opcional para bancos de dados que não exigem autenticação.
Senha Sim Não Senha a ser usada para se conectar ao banco de dados especificado. Obrigatório para bancos de dados que precisam de autenticação. Opcional para bancos de dados que não exigem autenticação.
Argumentos de conexão Sim Não Uma lista de pares de tag/valor de string arbitrários como argumentos de conexão. Para drivers JDBC que precisam de configuração adicional, esses argumentos são transmitidos como argumentos de conexão no formato key1=value1;key2=value.
Nome de referência Não Sim Um nome que identifica exclusivamente essa origem para definir linhagem e anotar metadados. Geralmente é o nome da tabela ou da visualização.
Receber esquema Não Não O esquema de registros gerado pela origem. Ele é usado no lugar do esquema retornado pela consulta. Ele precisa corresponder ao esquema retornado pela consulta, exceto que permite marcar campos como anuláveis e pode conter um subconjunto deles.
Importar consulta Sim Sim A consulta SELECT para importar dados da tabela especificada. É possível especificar um número arbitrário de colunas para importar ou importar todas as colunas usando *. A consulta precisa conter a string $CONDITIONS. Por exemplo, SELECT * FROM table WHERE $CONDITIONS. A string $CONDITIONS é substituída pelo limite do campo splitBy especificado no campo Consulta de limite. A string $CONDITIONS não é necessária se o campo Número de divisões estiver definido como 1.
Consulta delimitadora Sim Não A consulta de limite que retorna o mínimo e o máximo dos valores da coluna dividida. Por exemplo: SELECT MIN(id),MAX(id) FROM table Não é necessário se o número de divisões for definido como 1.
Dividir por nome do campo Sim Não O nome do campo usado para gerar divisões. Não é necessário se o número de divisões a serem geradas for definido como 1.
Número de divisões a serem geradas Sim Não Número de divisões a serem geradas.
O padrão é 1.
Tamanho da busca Sim Não O número de linhas a serem extraídas por divisão. Um tamanho de busca maior pode causar uma importação mais rápida, com a compensação de maior uso de memória.
O padrão é 1000.
Ativar a confirmação automática Não Não Define se a confirmação automática deve ser ativada para consultas executadas por essa origem. Mantenha essa configuração como False, a menos que você use um driver JDBC que cause um erro quando a operação de confirmação for executada.
O padrão é Falso.
Nome da coluna em maiúsculas Sim Não Define a caixa alta e baixa dos nomes das colunas retornados pela consulta. Você pode escolher maiúsculas ou minúsculas. Por padrão, ou para qualquer outra entrada, os nomes das colunas não são modificados, e a maiúscula retornada do banco de dados é usada. A configuração dessa propriedade oferece previsibilidade da capitalização do nome da coluna em diferentes bancos de dados, mas pode causar conflitos de nome de coluna se vários nomes de coluna forem iguais quando a caixa for ignorada.
O padrão é Sem alteração.
Nível de isolamento de transação Sim Não O nível de isolamento de transação para consultas executadas por esse sink. Para mais informações, consulte o setTransactionIsolation(). O driver JDBC do Phoenix gera uma exceção se o banco de dados do Phoenix não tiver transações ativadas e esse campo estiver definido como true. Para drivers assim, defina esse campo como TRANSACTION_NONE.
O padrão é TRANSACTION_SERIALIZABLE.
Padrão a ser substituído Não Não O padrão a ser substituído no nome do campo na tabela (geralmente usado com a propriedade Replace with). Se a propriedade Replace with não estiver definida, o padrão será removido do nome do campo.
Substituir por Não Não A string que é substituída no nome do campo na tabela. Também é necessário configurar o campo Padrão a ser substituído.
Esquema de saída Não Não Especifica o esquema de saída. Somente as colunas definidas no esquema são incluídas no registro de saída.

Práticas recomendadas

Verifique se há um plug-in mais específico disponível para seu banco de dados. Por exemplo, se você tiver uma origem de banco de dados Oracle, use o plug-in de origem de lote do banco de dados Oracle, porque ele foi projetado para funcionar com o esquema do Oracle.

A seguir