Importar metadados do MySQL

O Knowledge Catalog (antigo Dataplex Universal Catalog) permite extrair e importar metadados de bancos de dados MySQL para um grupo de entrada usando um conector gerenciado. Em seguida, é possível pesquisar, visualizar e controlar seus recursos do MySQL junto com outros dados catalogados ou recuperar o contexto de modelos de linguagem grandes (LLMs). Esse conector é compatível com instâncias do MySQL hospedadas no local, no Cloud SQL ou em outros ambientes de nuvem. Para mais informações sobre como os conectores funcionam, consulte Sobre os conectores de metadados.

Antes de começar

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

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

Permissões e papéis do IAM

Para criar e gerenciar um job do 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 MySQL, peça ao administrador para conceder a você os seguintes papéis do IAM:

Além disso, é preciso 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 permissão dataplex.entryGroups.import ou o papel de Importador de grupo de entrada do Dataplex (roles/dataplex.entryGroupImporter). É possível conceder esse papel no nível do projeto ou do grupo de entrada.

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

Ativar APIs

Ative a API Dataplex e a API serviço de transferência de dados do BigQuery.

Ativar as APIs

Pré-requisitos do MySQL

Verifique se você atende aos pré-requisitos para transferências do MySQL. Para mais detalhes, consulte Pré-requisitos do MySQL 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, seu banco de dados MySQL precisa atender aos seguintes requisitos para extração de metadados:

  • Versão mínima:MySQL versão 8.0 ou mais recente.
  • Permissões mínimas necessárias:a ferramenta de extração requer permissões específicas para consultar o INFORMATION_SCHEMA e coletar metadados.

Essas permissões garantem a seguinte cobertura de metadados:

  • Informações da instância e do banco de dados:nome do host, porta, versão e configurações de esquema.
  • Tabelas e colunas:estrutura principal, tipos de dados e metadados operacionais, como tamanhos e contagens de linhas.
  • Índices e partições:índices secundários, métodos de partição e expressões.
  • Visualizações:estruturas e definições de tabelas virtuais.
  • Rotinas:procedimentos armazenados, funções e os parâmetros deles.
  • Restrições:restrições detalhadas de chave primária, chave externa, exclusivas e de verificação.
  • Acionadores:definições de acionadores e tempo do evento.

Para conceder essas permissões, execute os seguintes scripts SQL.

  1. Crie o usuário:

    CREATE USER 'USERNAME'@'%'
    IDENTIFIED BY 'PASSWORD';
    
  2. Conceder acesso aos metadados. É possível conceder acesso a um único banco de dados de destino ou a todos os bancos de dados na instância.

    Para conceder acesso a um único banco de dados ou esquema de destino:

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON DATABASE_NAME.*
    TO 'USERNAME'@'%';
    

    Como alternativa, para conceder acesso a todos os bancos de dados na instância:

    GRANT SELECT, SHOW VIEW, REFERENCES, EXECUTE, TRIGGER
    ON *.*
    TO 'USERNAME'@'%';
    
  3. Permita que a ferramenta de extração liste todos os bancos de dados disponíveis na instância:

    GRANT SHOW DATABASES ON *.* TO 'USERNAME'@'%';
    
  4. Aplique as alterações:

    FLUSH PRIVILEGES;
    

Substitua:

  • USERNAME: o usuário do banco de dados que você quer configurar.
  • PASSWORD: a senha do usuário do banco de dados.
  • DATABASE_NAME: o nome do banco de dados do MySQL que você quer acessar.

Pré-requisitos de rede

É necessário um anexo de rede para conexão pelo Private Service Connect ao se conectar com segurança a bancos de dados externos ou fontes de dados em nuvem de terceiros com um endereço IP privado dentro de 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, não será necessário um anexo de rede.

Configurar um conector do MySQL

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

Console

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

    Acessar o Knowledge Catalog

  2. No menu de navegação, na seção Gerenciar, clique em Conectores.

  3. Clique em Adicionar conexão.

  4. Na lista Conectores, selecione o card MySQL.

  5. Na seção Detalhes da fonte de dados, forneça os detalhes de conexão da instância do MySQL:

    • 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 estiver usando TLS, selecione um Modo TLS e forneça um Certificado PEM confiável.
    • Em Objetos de metadados do MySQL para importar, clique em Procurar para selecionar objetos.
  6. Na seção Configurações de destino:

    • Clique em Procurar e selecione um grupo de entradas do Knowledge Catalog para armazenar os metadados importados ou clique em Criar novo grupo de entradas.
    • Escolha se você quer definir as permissões no grupo de entrada agora ou mais tarde. Defina permissões para que os usuários possam ver os metadados importados. Se você não concedeu o papel de Importador de grupo de entrada 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 entrada.
  7. Na seção Nome da configuração do conector, em Nome de exibição, insira um nome para o job de importação de metadados.

  8. 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.

  9. Opcional: na seção Opções de notificação, configure notificações por e-mail ou do Pub/Sub para falhas de jobs.

  10. Opcional: na seção Opções avançadas, defina as configurações de criptografia. Se você selecionar uma chave de criptografia gerenciada pelo cliente (CMEK), ela 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 entrada de destino do Knowledge Catalog.

  11. Clique em Salvar.

REST

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

  • Defina o campo dataSourceId como "mysql"
  • No campo metadataDestination, preencha o objeto dataplexConfiguration com o caminho do recurso do grupo de entrada 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á-lo manualmente.

Pesquisar e visualizar metadados do MySQL

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

    Acesse Pesquisar

  2. No painel Filtros, é possível filtrar os recursos do MySQL usando as seções Projeto, Sistema e Aliases de tipo. Na seção Sistema, selecione Contexto importado. Ao selecionar esse filtro, uma subseção Conectores gerenciados é aberta. Selecione MySQL para filtrar todos os metadados do MySQL.

  3. Use o campo de pesquisa para realizar consultas de pesquisa. É possível fazer uma pesquisa por palavra-chave ou pesquisa com linguagem natural. Por exemplo, para visualizar todas as tabelas do MySQL por pesquisa de palavras-chave, insira system=MYSQL AND type=TABLE.

    Para saber mais sobre como pesquisar recursos, consulte Pesquisar recursos no Knowledge Catalog. Para saber mais sobre as expressões que podem ser usadas no campo de pesquisa, consulte Sintaxe de pesquisa do Knowledge Catalog.

  4. Também é possível usar a API LookupContext para recuperar o contexto do LLM para recursos específicos do MySQL.

A seguir