Importar do Spanner

Para ingerir dados do Spanner, siga estas etapas para criar um repositório de dados e ingerir dados usando o console Google Cloud ou a API.

Configurar o acesso ao Spanner de um projeto diferente

Se os dados do Spanner estiverem no mesmo projeto do Gemini Enterprise, pule para Importar dados do Spanner.

Para dar ao Gemini Enterprise acesso a dados do Spanner que estão em um projeto diferente, siga estas etapas:

  1. Substitua a variável PROJECT_NUMBER pelo número do projeto do Gemini Enterprise e copie o conteúdo do bloco de código. Este é o identificador da sua conta de serviço do Gemini Enterprise:

    service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
    
  2. Acesse a página IAM e administrador.

    IAM e administrador

  3. Mude para seu projeto do Spanner na página IAM e administrador e clique em Conceder acesso.

  4. Em Novos principais, insira o identificador da conta de serviço e selecione uma das seguintes opções:

    • Se você não usar o Data Boost durante a importação, selecione a função Leitor do banco de dados do Cloud Spanner > Cloud Spanner.
    • Se você planeja usar o Data Boost durante a importação, selecione o papel Cloud Spanner > Administrador do banco de dados do Cloud Spanner ou um papel personalizado com as permissões de Leitor de banco de dados do Cloud Spanner e spanner.databases.useDataBoost. Para informações sobre o Data Boost, consulte Visão geral do Data Boost na documentação do Spanner.
  5. Clique em Salvar.

Em seguida, acesse Importar dados do Spanner.

Importar dados do Spanner

Console

Para usar o console e ingerir dados do Spanner, siga estas etapas:

  1. No console Google Cloud , acesse a página Gemini Enterprise.

    Gemini Enterprise

  2. Acesse a página Repositório de dados.

  3. Clique em Criar armazenamento de dados.

  4. Na página Selecionar uma fonte de dados, escolha Cloud Spanner.

  5. Especifique o ID do projeto, da instância, do banco de dados e da tabela dos dados que você planeja importar.

  6. Selecione se quer ativar o Data Boost. Para informações sobre o Data Boost, consulte Visão geral do Data Boost na documentação do Spanner.

  7. Clique em Continuar.

  8. Escolha uma região para o repositório de dados.

  9. Insira um nome para o repositório de dados.

  10. Clique em Criar.

  11. Para verificar o status da ingestão, acesse a página Repositórios de dados e clique no nome do repositório de dados para conferir os detalhes na página Dados. Quando a coluna de status na guia Atividade mudar de Em andamento para Importação concluída, a ingestão será concluída.

    Dependendo do tamanho dos dados, a ingestão pode levar de vários minutos a várias horas.

REST

Para usar a linha de comando e criar um repositório de dados e ingerir dados do Spanner, siga estas etapas:

  1. Crie um repositório de dados.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \
    -d '{
      "displayName": "DISPLAY_NAME",
      "industryVertical": "GENERIC",
      "solutionTypes": ["SOLUTION_TYPE_SEARCH"],
      "contentConfig": "CONTENT_REQUIRED",
    }'
    

    Substitua:

    • PROJECT_ID: o ID do seu projeto do Gemini Enterprise.
    • DATA_STORE_ID: o ID do repositório de dados. O ID pode conter apenas letras minúsculas, dígitos, sublinhados e hífens.
    • DISPLAY_NAME: o nome de exibição do repositório de dados. Isso pode ser exibido no console do Google Cloud .
  2. Importe dados do Spanner.

      curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \
      -d '{
        "cloudSpannerSource": {
          "projectId": "SPANNER_PROJECT_ID",
          "instanceId": "INSTANCE_ID",
          "databaseId": "DATABASE_ID",
          "tableId": "TABLE_ID",
          "enableDataBoost": "DATA_BOOST_BOOLEAN"
        },
        "reconciliationMode": "RECONCILIATION_MODE",
        "autoGenerateIds": "AUTO_GENERATE_IDS",
        "idField": "ID_FIELD",
      }'
    

    Substitua:

    • PROJECT_ID: o ID do seu projeto do Gemini Enterprise.
    • DATA_STORE_ID: o ID do repositório de dados.
    • SPANNER_PROJECT_ID: o ID do seu projeto do Spanner.
    • INSTANCE_ID: o ID da sua instância do Spanner.
    • DATABASE_ID: o ID do banco de dados do Spanner.
    • TABLE_ID: o ID da sua tabela do Spanner.
    • DATA_BOOST_BOOLEAN: opcional. Se o Data Boost será ativado. Para informações sobre o Data Boost, consulte a visão geral do Data Boost na documentação do Spanner.
    • RECONCILIATION_MODE: opcional. Os valores são FULL e INCREMENTAL. O padrão é INCREMENTAL. Especificar INCREMENTAL causa uma atualização incremental de dados do Spanner para o repositório de dados. Isso faz uma operação de upsert, que adiciona novos documentos e substitui os existentes por documentos atualizados com o mesmo ID. Especificar FULL causa uma rebase completa dos documentos no repositório de dados. Em outras palavras, documentos novos e atualizados são adicionados ao repositório de dados, e os que não estão no Spanner são removidos. O modo FULL é útil se você quiser excluir automaticamente documentos que não precisa mais.
    • AUTO_GENERATE_IDS: opcional. Especifica se os IDs de documento serão gerados automaticamente. Se definido como true, os IDs de documento serão gerados com base em um hash do payload. Os IDs de documentos gerados podem não permanecer consistentes em várias importações. Se você gerar IDs automaticamente em várias importações, o Google recomenda definir reconciliationMode como FULL para manter IDs de documento consistentes.

    • ID_FIELD: opcional. Especifica quais campos são os IDs de documento.

Próximas etapas

  • Para anexar seu repositório de dados a um app, crie um app e selecione o repositório seguindo as etapas em Criar um app de pesquisa.

  • Para ver como os resultados da pesquisa aparecem depois que o app e o repositório de dados são configurados, consulte Visualizar resultados da pesquisa.