Importar metadados do PostgreSQL

Este documento descreve como importar metadados do PostgreSQL para o Knowledge Catalog (antigo Dataplex Universal Catalog) usando um conector do Knowledge Catalog.

Esse conector oferece suporte a instâncias do PostgreSQL hospedadas no local, no Cloud SQL ou em outros ambientes de nuvem.

Antes de começar

Antes de importar metadados do PostgreSQL, conclua as seguintes tarefas:

  1. Conceda os papéis e as permissões necessários.
  2. Ative as APIs Knowledge Catalog e serviço de transferência de dados do BigQuery.
  3. Atenda aos pré-requisitos do PostgreSQL.
  4. Atenda aos pré-requisitos de rede.

Permissões e papéis do IAM

Para criar e gerenciar um job de conector do Knowledge Catalog, você precisa de papéis do Identity and Access Management (IAM) que concedam permissões para o Knowledge Catalog e o serviço de transferência de dados do BigQuery.

Para receber as permissões necessárias para configurar um conector do PostgreSQL, peça ao administrador para conceder a você os seguintes papéis do IAM:

Além disso, é necessário conceder ao agente de serviço do serviço de transferência de dados do BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) a dataplex.entryGroups.import permissão ou o papel importador de grupos de entradas do Dataplex (roles/dataplex.entryGroupImporter). É possível conceder esse papel no nível do projeto ou do grupo de entradas.

Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

Ativar APIs

Ative as APIs Knowledge Catalog e serviço de transferência de dados do BigQuery.

Ativar as APIs

Pré-requisitos do PostgreSQL

Verifique se você atende aos pré-requisitos para transferências do PostgreSQL. Para mais detalhes, consulte Pré-requisitos do PostgreSQL na documentação do serviço de transferência de dados do BigQuery.

Além dos pré-requisitos do serviço de transferência de dados do BigQuery, o banco de dados PostgreSQL precisa atender aos seguintes requisitos para extração de metadados:

  • Versão mínima:PostgreSQL versão 15 ou mais recente.
  • Permissões mínimas necessárias:a ferramenta de extração exige permissões específicas para coletar metadados.

Para conceder essas permissões, execute as seguintes instruções SQL:

  1. Conceda a conexão ao banco de dados:

    GRANT CONNECT ON DATABASE DATABASE_NAME TO USERNAME;
    
  2. Conceda o uso no esquema:

    GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;
    
  3. Conceda os papéis de leitura necessários ao usuário:

    GRANT pg_read_all_data TO USERNAME;
    GRANT pg_read_all_settings TO USERNAME;
    GRANT pg_read_all_stats TO USERNAME;
    

Substitua:

  • DATABASE_NAME: o nome do banco de dados PostgreSQL que você quer acessar.
  • USERNAME: o usuário do banco de dados que você quer configurar.
  • SCHEMA_NAME: o nome do esquema que você quer acessar.

Pré-requisitos de rede

Um anexo de rede para conexão pelo Private Service Connect é necessário ao se conectar com segurança a bancos de dados externos ou fontes de dados de nuvem de terceiros com um endereço IP particular em uma rede privada, para permitir que o serviço de transferência de dados do BigQuery acesse seu banco de dados.

Se você se conectar a um ambiente local ou a uma instância hospedada na nuvem usando um endereço IP público, um anexo de rede não será necessário.

Configurar um conector do PostgreSQL

Configure um conector do PostgreSQL usando o Google Cloud console ou a API.

Console

  1. No Google Cloud console, acesse a página Knowledge Catalog.

    Acessar o Knowledge Catalog

  1. No menu de navegação, na seção Gerenciar, clique em Conectores.
  2. Clique em Adicionar conexão.
  3. Na lista Conectores, selecione o card PostgreSQL.
  4. Na seção Detalhes da fonte de dados, forneça os detalhes da conexão para sua instância do PostgreSQL:
    • Em Anexo de rede, selecione um anexo de rede existente, se necessário, ou crie um.
    • Insira o host, a porta, o nome do banco de dados, o nome de usuário e a senha.
    • Se você estiver usando o TLS, selecione um modo TLS e forneça um certificado PEM confiável.
    • Em Objetos de metadados do PostgreSQL a serem importados, clique em Navegar para selecionar objetos.
  5. Na seção Configurações de destino :
    • Clique em Navegar e selecione um grupo de entradas do Knowledge Catalog para armazenar os metadados importados ou clique em Criar novo grupo de entradas.
    • Escolha se quer definir permissões no grupo de entradas agora ou mais tarde. Recomendamos definir permissões para que os usuários possam visualizar os metadados importados. Se você não concedeu o papel importador de grupos de entradas do Dataplex (roles/dataplex.entryGroupImporter) ou a permissão dataplex.entryGroups.import ao agente de serviço do serviço de transferência de dados do BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.iam.gserviceaccount.com) no nível do projeto, conceda-o no nível do grupo de entradas.
  6. No campo Nome de exibição da seção Nome de configuração do conector, insira um nome para o job de importação de metadados.
  7. Na seção Opções de programação, configure a frequência do job de importação de metadados. Se você selecionar Sob demanda, o job será executado apenas quando você o acionar manualmente.
  8. Opcional: na seção Opções de notificação, configure notificações por e-mail ou Pub/Sub para falhas de job.
  9. Opcional: na seção Opções avançadas, configure as configurações de criptografia. Se você selecionar uma chave de criptografia gerenciada pelo cliente (CMEK), observe que a chave será usada para criptografar todos os dados temporários preparados antes de iniciar os jobs de importação de metadados do Knowledge Catalog. Ela não é usada para criptografar os metadados no grupo de entradas de destino do Knowledge Catalog.
  10. Clique em Salvar.

REST

Use o projects.locations.transferConfigs.create método. No TransferConfig recurso, configure os seguintes campos:

  • Defina o campo dataSourceId como "postgresql".
  • No campo metadataDestination, preencha o objeto dataplexConfiguration com o caminho do recurso do grupo de entradas de destino do Knowledge Catalog: projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>

Depois de criar o job, o Knowledge Catalog programa a primeira execução de acordo com sua configuração ou você pode iniciá-la manualmente.

A seguir