Usar insights de dados para dados não estruturados

Os insights de dados para dados não estruturados usam a Vertex AI para transformar arquivos brutos e não estruturados no Cloud Storage em recursos estruturados e consultáveis no BigQuery. Os insights de dados para dados não estruturados são otimizados para arquivos PDF.

Neste documento, descrevemos como configurar as permissões necessárias, descobrir dados não estruturados, conferir os insights gerados e extrair os dados para o BigQuery.

Antes de começar

Antes de usar os insights de dados para dados não estruturados, verifique se você tem as permissões e APIs necessárias ativadas.

Ativar APIs

Ativar as APIs a seguir no projeto:

  • dataplex.googleapis.com
  • bigquery.googleapis.com
  • aiplatform.googleapis.com (Vertex AI)

Funções necessárias para ativar APIs

Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin), que contém a permissão serviceusage.services.enable. Saiba como conceder papéis.

Ativar as APIs

Papéis e permissões necessárias

A inferência semântica de dados não estruturados é um recurso avançado que se baseia na verificação de descoberta padrão do BigQuery. Para configurar e executar insights de dados não estruturados, você precisa atender às permissões básicas de uma verificação de descoberta e conceder papéis adicionais para inferência semântica.

Etapa 1: papéis de verificação de descoberta de linha de base

Verifique se você e as contas de serviço usadas pelo Knowledge Catalog têm as permissões básicas necessárias para uma verificação de descoberta padrão. Para uma lista completa, consulte Descobrir e catalogar dados do Cloud Storage.

Etapa 2: outras funções para inferência semântica

Além dos papéis básicos, verifique se você e as contas de serviço têm os seguintes papéis adicionais do IAM.

Resumo de outras identidades e papéis

Tipo de identidade Formato principal típico Papéis necessários do IAM Propósito principal
Usuário final Sua conta de usuário do Google Cloud
  • Leitor de dados do DataScan Dataplex
  • Editor de dados do BigQuery
  • Usuário de jobs do BigQuery
Você usa esses papéis adicionais para ver os resultados gerados com IA e acionar a extração de dados final.
Agente de descoberta do Universal Catalog do Knowledge Catalog service-<var>PROJECT_NUMBER</var>@gcp-sa-dataplex.iam.gserviceaccount.com
  • Usuário da Vertex AI
Esse agente de serviço gerenciado pelo Google usa essa função extra para chamar a Vertex AI e gerar esquemas e metadados inferidos.
Conta de serviço de conexão do BigQuery service-<var>PROJECT_NUMBER</var>@gcp-sa-bigqueryconnection.iam.gserviceaccount.com
  • Leitor de objetos do Storage (no bucket de origem)
  • Usuário da Vertex AI (no projeto)
Ele conecta o BigQuery ao armazenamento externo, permitindo que o BigQuery leia os arquivos brutos, crie tabelas de objetos e execute inferências de IA sem expor suas credenciais de usuário pessoais.
Conta de serviço de execução de pipeline (opcional) Uma conta serviço gerenciado pelo usuário
  • Editor de dados do BigQuery
  • Usuário de jobs do BigQuery
  • Usuário do BigQuery
  • Usuário da Vertex AI
Se você optar por extrair dados usando um pipeline automatizado, essa identidade vai executar os jobs em segundo plano para materializar as entidades geradas por IA em tabelas do BigQuery.
Conta de serviço padrão do Dataform (opcional) service-<var>PROJECT_NUMBER</var>@gcp-sa-dataform.iam.gserviceaccount.com
  • Criador de token da conta de serviço (concedido na conta de serviço de execução do pipeline)
Ao usar o método de extração de pipeline, o Dataform exige permissão para personificar sua conta de serviço de execução de pipeline e orquestrar o fluxo de trabalho.

Funções e permissões do usuário final

Para garantir que sua conta de usuário tenha as permissões necessárias para ver insights e extrair dados, peça ao administrador para conceder os seguintes papéis do IAM à sua conta de usuário no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para ver insights e extrair dados. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para ver insights e extrair dados:

  • Verificações de descoberta:
    • dataplex.datascans.create
    • dataplex.datascans.get
    • dataplex.datascans.getData
    • dataplex.datascans.list
  • Extração de dados:
    • bigquery.tables.create
    • bigquery.tables.update
    • bigquery.tables.getData
    • bigquery.jobs.create

O administrador também pode conceder à conta de serviço essas permissões com papéis personalizados ou outros papéis predefinidos.

Papéis e permissões do agente de serviço de descoberta do Knowledge Catalog

O agente de serviço de descoberta do Knowledge Catalog é um agente de serviço que precisa de acesso para executar verificações de descoberta e fazer inferências usando a Vertex AI.

Para garantir que o agente de serviço de descoberta do Knowledge Catalog (geralmente service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com) tenha as permissões necessárias para executar verificações de descoberta e fazer inferências usando a Vertex AI, peça ao administrador para conceder os seguintes papéis do IAM ao agente de serviço de descoberta do Knowledge Catalog (geralmente service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com) no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para executar verificações de descoberta e fazer inferências usando a Vertex AI. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As permissões a seguir são necessárias para executar verificações de descoberta e fazer inferências usando a Vertex AI:

  • aiplatform.endpoints.predict
  • bigquery.datasets.create
  • bigquery.datasets.get
  • storage.buckets.get
  • storage.objects.get
  • storage.objects.list

O administrador também pode conceder essas permissões ao agente de serviço de descoberta do Knowledge Catalog (geralmente service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com) com papéis personalizados ou outros papéis predefinidos.

Permissões e papéis da conta de serviço de conexão do BigQuery

Uma conexão a recursos do Cloud do BigQuery permite que o Knowledge Catalog acesse e descubra dados não estruturados armazenados fora do BigQuery, como no Cloud Storage, de forma segura. Quando você cria uma conexão, o BigQuery cria automaticamente uma conta de serviço dedicada em seu nome. Essa conta de serviço funciona como a identidade usada para se conectar à sua fonte de dados externa.

Por padrão, essa conta de serviço não tem permissões. Você precisa conceder explicitamente a essa conta de serviço os papéis do IAM necessários nos buckets do Cloud Storage que contêm seus dados. É possível usar uma conexão do BigQuery ou criar uma no mesmo local do bucket do Cloud Storage de origem.

Para garantir que a conta de serviço de conexão do BigQuery (geralmente service-PROJECT_NUMBER@gcp-sa-bigqueryconnection.iam.gserviceaccount.com) tenha as permissões necessárias para criar tabelas de objetos e executar inferências, peça ao administrador para conceder os seguintes papéis do IAM à conta de serviço de conexão do BigQuery (geralmente service-PROJECT_NUMBER@gcp-sa-bigqueryconnection.iam.gserviceaccount.com):

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para criar tabelas de objetos e executar inferências. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para criar tabelas de objetos e executar inferências:

  • storage.buckets.get no bucket que contém dados não estruturados
  • storage.objects.get no bucket que contém dados não estruturados
  • aiplatform.endpoints.predict no projeto

O administrador também pode conceder à conta de serviço de conexão do BigQuery (geralmente service-PROJECT_NUMBER@gcp-sa-bigqueryconnection.iam.gserviceaccount.com) essas permissões com papéis personalizados ou outros papéis predefinidos.

Papéis e permissões da conta de serviço de execução do pipeline (opcional)

Se você optar por extrair os dados inferidos usando um pipeline automatizado, crie ou forneça uma conta de serviço dedicada para executar o pipeline. Essa conta de serviço de execução atua como a identidade que autentica e executa com segurança as tarefas de extração de dados e análise em segundo plano no BigQuery. Além disso, é necessário conceder à conta de serviço padrão do Dataform permissão para representar essa conta de serviço de execução.

Para garantir que a conta de serviço de execução do pipeline tenha as permissões necessárias para extrair as entidades e relações inferidas usando um pipeline, peça ao administrador para conceder os seguintes papéis do IAM à conta de serviço de execução do pipeline no projeto:

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esses papéis predefinidos contêm as permissões necessárias para extrair as entidades e relações inferidas usando um pipeline. Para acessar as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para extrair as entidades e relações inferidas usando um pipeline:

  • bigquery.tables.create
  • bigquery.tables.update
  • bigquery.tables.get
  • bigquery.tables.getData
  • bigquery.jobs.create
  • aiplatform.endpoints.predict

O administrador também pode conceder essas permissões à conta de serviço de execução de pipeline com papéis personalizados ou outros papéis predefinidos.

Para garantir que a conta de serviço padrão do Dataform (service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com) tenha a permissão necessária para representar a conta de serviço de execução do pipeline, peça ao administrador para conceder o papel do IAM de Criador de token da conta de serviço (roles/iam.serviceAccountTokenCreator) à conta de serviço padrão do Dataform (service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com) na conta de serviço de execução do pipeline.

Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.

Esse papel predefinido contém a permissão iam.serviceAccounts.getAccessToken que é necessária para representar a conta de serviço de execução do pipeline.

O administrador também pode conceder essa permissão à conta de serviço padrão do Dataform (service-PROJECT_NUMBER@gcp-sa-dataform.iam.gserviceaccount.com) com papéis personalizados ou outros papéis predefinidos.


Preparar dados não estruturados

Antes de executar uma verificação de descoberta, faça upload dos dados não estruturados para um bucket do Cloud Storage. Os insights de dados para dados não estruturados são otimizados para analisar documentos PDF.

Para mais informações sobre como armazenar e gerenciar arquivos no Cloud Storage, consulte Fazer upload de objetos.

Criar uma verificação de descoberta para dados não estruturados

Para extrair insights semânticos dos seus dados não estruturados, primeiro crie uma verificação de descoberta. Essa verificação localiza automaticamente seus arquivos não estruturados no Cloud Storage e os cataloga em uma tabela de objetos. Ao ativar a opção de insights de dados durante esse processo, o Knowledge Catalog usa a Vertex AI para analisar os arquivos e gerar metadados, esquemas e relações inferidos.

  1. No Google Cloud console, acesse a página Criação de metadados.

    Acessar "Curadoria de metadados"

  2. Na guia Descoberta do Cloud Storage, clique em Criar.

  3. Digite um nome para a verificação.

  4. Para selecionar o bucket do Cloud Storage que contém seus dados não estruturados, clique em Procurar.

  5. Em Opções de dados não estruturados, marque a caixa de seleção Ativar inferência semântica.

  6. No campo ID da conexão, especifique a conexão do BigQuery usada para acessar os arquivos.

    A verificação de descoberta cataloga automaticamente dados não estruturados no BigQuery criando tabelas de objetos. Como as tabelas de objetos desacoplam com segurança as credenciais de acesso aos dados do usuário que executa consultas, é necessária uma conexão para autenticar com o Cloud Storage e ler os arquivos.

  7. Clique em Executar agora (para uma verificação sob demanda) ou Criar (para uma verificação programada).

    Para mais detalhes sobre todas as configurações disponíveis, consulte Descobrir e catalogar dados do Cloud Storage.

O Knowledge Catalog cria uma tabela de objetos e enriquece a entrada do catálogo com metadados gerados por IA. Esse processo geralmente leva alguns minutos para conjuntos de dados padrão.

Localizar a tabela de objetos

Depois que a verificação de descoberta é concluída, o Knowledge Catalog cria uma ou várias tabelas de objetos e preenche o Knowledge Catalog com uma entrada correspondente enriquecida com metadados gerados por IA. Quando várias entradas são criadas devido a uma verificação de descoberta, cada uma delas tem uma guia "Insights" própria. É possível conferir a descrição automática da tabela, os esquemas inferidos e os gráficos de relacionamento.

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

    Acessar o BigQuery

  2. No menu de navegação, clique em Governança > Curadoria de metadados.

  3. No painel Descoberta do Cloud Storage, clique na verificação de descoberta que você executou para dados não estruturados.

    • A seção Detalhes da verificação mostra detalhes sobre a verificação de descoberta.
    • A seção Status da verificação mostra os resultados da descoberta do job de verificação mais recente.
  4. Clique no link Conjunto de dados publicado.

  5. Na lista de tabelas exibidas para o conjunto de dados do BigQuery, selecione a tabela de objetos gerada para a verificação de dados de descoberta.

  6. Copie o ID da tabela. Você vai precisar dele na próxima seção.

Ver gráficos de entidades inferidas

É possível conferir a tabela de objetos da verificação de descoberta no Knowledge Catalog.

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

    Acesse Pesquisar

  2. Cole e pesquise a tabela de objetos cujo ID você selecionou na seção anterior.

  3. Nos resultados da pesquisa, clique na tabela para abrir a página de entrada dela.

  4. Na guia Detalhes, em Aspectos, verifique a presença do aspecto Perfil do gráfico. Esse aspecto contém os esquemas inferidos para entidades e relacionamentos.

  5. Clique na guia Insights. Na guia Insights, você pode conferir as seguintes informações:

    • Extração semântica. Um banner indica que entidades e relações extraíveis foram detectadas. Ele inclui um botão Extrair para materializar os dados usando SQL ou implantação de pipeline.

    • Descrição: Um resumo legível gerado por IA explica o conteúdo dos dados não estruturados. Ele descreve os nós principais (entidades) descobertos e como eles se mapeiam uns aos outros por arestas (relacionamentos).

    • Pipelines. Uma lista de pipelines de extração de dados implantados anteriormente associados a esse recurso. É possível conferir o nome de exibição, a região, a hora de criação e o usuário que criou o pipeline.

    • Entidades e relações inferidas. Um gráfico visual e interativo mostra a estrutura semântica descoberta dos seus dados não estruturados. O gráfico contém nós que representam entidades distintas, por exemplo, "Receita" e "Ingrediente", e arestas que representam as conexões entre elas, por exemplo, "TemStatusDeAlérgeno". Use a legenda para filtrar e analisar nós e arestas específicos.

    • Entidades. Uma lista detalhada das entidades principais descobertas. É possível abrir cada entidade para conferir a descrição gerada por IA e o esquema inferido, que inclui nomes de campos, tipos de dados e descrições de campos.

    • Relacionamentos. Uma lista detalhada das conexões descobertas entre entidades. É possível expandir cada relacionamento para ver a descrição e o esquema que define como as entidades se mapeiam umas às outras.

Atualizar insights inferidos

Os insights inferidos são armazenados no catálogo do Knowledge Catalog como um aspecto anexado à tabela de objetos. É possível atualizar esses insights manualmente usando o console Google Cloud ou a APIentry.patch.

Console

Para atualizar insights inferidos no console Google Cloud , siga estas etapas:

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

    Acesse Pesquisar

  2. Cole e pesquise o ID da tabela de objetos.

  3. Nos resultados da pesquisa, clique na tabela para abrir a página de entrada dela.

  4. Clique na guia Insights.

  5. Ao lado de Entidades e relacionamentos inferidos, clique em Editar.

  6. No editor JSON, modifique o aspecto graph-profile.

  7. Clique em Salvar.

REST

Para atualizar os insights inferidos usando a API REST, siga estas etapas:

  1. Crie um arquivo chamado payload.json e adicione o conteúdo JSON do aspecto que você quer atualizar. Exemplo:

    {
      "aspects": {
        "dataplex-types.global.graph-profile": {
          "data": {
            // Your updated inferred insights data
          }
        }
      }
    }
    
  2. Execute o comando a seguir no terminal.

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d @payload.json \
    "https://dataplex.googleapis.com/v1/projects/<var>PROJECT_ID</var>/locations/<var>LOCATION</var>/entryGroups/<var>ENTRY_GROUP_ID</var>/entries/<var>ENTRY_ID</var>?updateMask=aspects"
    

    Substitua:

    • PROJECT_ID: o ID do projeto. Por exemplo, example-project.
    • LOCATION: o local da entrada, por exemplo, us-central1
    • ENTRY_GROUP_ID: o ID do grupo de entradas. Por exemplo, example-entry-group.
    • ENTRY_ID: o ID da entrada. Por exemplo, example-entry

Para mais informações e exemplos de código em outras linguagens, consulte Atualizar um aspecto de entrada.

Extrair dados para o BigQuery

É possível materializar as entidades e relações inferidas em tabelas ou visualizações estruturadas no BigQuery usando SQL ou um pipeline automatizado.

  1. Na guia Insights, clique em Extração.

  2. Escolha um dos seguintes métodos com base nas suas necessidades analíticas e na escala dos dados não estruturados:

    • Extração por SQL:escolha essa opção para análises rápidas e ad hoc, conjuntos de dados pequenos a médios ou quando quiser uma abordagem sem infraestrutura usando modelos remotos do BigQuery.

      Para extrair usando SQL, siga estas etapas:

      1. Selecione Extrair por SQL.
      2. No painel Extrair com SQL, selecione um conjunto de dados de destino. O conjunto de dados precisa estar no mesmo local que a origem.
      3. Clique em Extrair.
      4. No editor do BigQuery, uma consulta pré-preenchida é aberta. Execute a consulta para criar tabelas e visualizações padrão.

      Para mais informações sobre como usar o SQL para extrair insights de documentos, consulte Processar documentos com a função ML.PROCESS_DOCUMENT.

    • Extração por pipeline:escolha essa opção para processamento de dados em grande escala ou quando precisar de uma lógica de nova tentativa, tratamento de erros e orquestração automatizada robustos para lidar com grandes volumes de documentos.

      Para extrair usando um pipeline, siga estas etapas:

      1. Selecione Extrair por pipeline.
      2. No painel Extrair com pipeline, insira um nome de exibição para o pipeline.
      3. Selecione uma região.
      4. Selecione um conjunto de dados de destino. O conjunto de dados precisa estar no mesmo local que a origem.
      5. Clique em Extrair. Isso cria um pipeline do BigQuery que orquestra a materialização dos dados.
      6. Execute todas as tarefas no pipeline para gerar visualizações estruturadas de nós e arestas.

      Para mais informações sobre a execução de fluxos de trabalho de dados, consulte Introdução ao Dataform.

Depois de extrair e materializar os insights semânticos no BigQuery, você pode realizar as seguintes tarefas:

  • Consultar os dados estruturados. Execute consultas SQL padrão nas tabelas recém-criadas para analisar as entidades e relações extraídas.

  • Fazer junção com dados atuais. Combine os insights qualitativos extraídos dos seus arquivos não estruturados com os conjuntos de dados estruturados do BigQuery (como a junção de dados de faturas analisados com suas tabelas de contabilidade).

  • Analise insights de dados. Use o recurso Insights de dados no BigQuery Studio para gerar automaticamente perguntas em linguagem natural e consultas SQL para seus novos recursos estruturados.

  • Analisar com o Gemini. Use o Gemini no BigQuery para fazer análises conversacionais, resumir tendências ou criar painéis no Data Studio com base nos dados extraídos.