Exportar seus dados para o BigQuery

Nesta página, descrevemos como fazer o upload de dados de eventos de usuários e produtos de varejo para o BigQuery. Depois que os dados estiverem no BigQuery, será possível usá-los para realizar previsões de vendas com a Vertex AI e visualizar os dados em painéis pré-criados do Looker.

Se os dados de varejo já estiverem nas tabelas de eventos de produtos e usuários no BigQuery, no formato Vertex AI para Pesquisa para varejo, será possível pular esta página e acessar diretamente Ver painéis que mostram os principais indicadores de desempenho e Gerar previsões de vendas com dados de varejo. Para mais informações sobre o formato, consulte Esquema do produto e Sobre os eventos de usuário.

Antes de começar

Antes de exportar seus dados de varejo para o BigQuery, é necessário concluir os procedimentos em Antes de começar. Isso inclui a importação das informações de catálogo e dos eventos do usuário.

Para mais informações sobre importação, consulte:

Criar um conjunto de dados no BigQuery

Você precisa criar um ou dois conjuntos de dados no BigQuery para armazenar os dados de produtos e eventos do usuário. É possível usar um conjunto de dados para conter os dois tipos de dados ou criar dois conjuntos, um para cada tipo.

É necessário criar os conjuntos de dados no mesmo projeto em que você implementou a Vertex AI para Pesquisa para o varejo.

  1. Se você ainda não usou o BigQuery no seu projeto, ative a API BigQuery e verifique se você tem o papel do IAM que permite criar conjuntos de dados e tabelas.

    Consulte Antes de começar e Controle de acesso com o IAM na documentação do BigQuery.

  2. Crie um conjunto de dados no BigQuery na multirregião US (multiple regions in the United States). Por exemplo, dê o nome retail_data. Se você criar o conjunto de dados em uma região diferente, a exportação dos dados para o BigQuery falhará.

    Para informações sobre como criar um conjunto de dados, consulte Como criar conjuntos de dados na documentação do BigQuery.

    Esse conjunto será usado para armazenar as tabelas de dados que você exportar. Os procedimentos a seguir descrevem como exportar.

  3. Opcional: para colocar os dados de eventos do usuário em um conjunto de dados separado dos dados do produto, crie um segundo conjunto de dados. Por exemplo, dê o nome retail_user_event_data.

Exportar o catálogo da Vertex AI para Pesquisa para varejo para uma tabela do BigQuery

Use o método products.export para exportar seu catálogo de varejo para uma tabela do BigQuery.

Antes de usar os dados da solicitação, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto da API Vertex AI para Pesquisa para varejo em que você criou o conjunto de dados do BigQuery.
  • BRANCH_ID: o ID da ramificação de catálogo. Use default_branch para receber dados da ramificação padrão. Para mais informações, consulte Ramificações do catálogo.
  • DATASET_ID: o nome do conjunto de dados que você criou em Criar um conjunto de dados no BigQuery. Por exemplo, use retail_data ou retail_product_data. O conjunto de dados precisa estar no mesmo projeto. Não adicione o ID do projeto ao campo datasetId aqui.
  • TABLE_ID_PREFIX: um prefixo para o ID da tabela. Esse prefixo não pode ser uma string vazia. Um sufixo de retail_products é adicionado para completar o nome da tabela. Por exemplo, se o prefixo for test, a tabela será chamada de test_retail_products.

Solicitar corpo JSON:

{
  "outputConfig":
  {
    "bigqueryDestination":
    {
      "datasetId": "DATASET_ID",
        "tableIdPrefix": "TABLE_ID_PREFIX",
        "tableType": "view"
    }
  }
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/branches/0/operations/17986570020347019923",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.retail.v2alpha.ExportProductsResponse",
    "outputResult": {
      "bigqueryResult": [
        {
          "datasetId": "DATASET_ID",
          "tableId": "TABLE_ID_PREFIX_retail_products"
        }
      ]
    }
  }
}

Exportar os eventos do usuário para uma tabela do BigQuery

Use o método userEvents.export para exportar seus eventos de usuário de varejo para uma tabela do BigQuery:

Antes de usar os dados da solicitação, faça as substituições a seguir:

  • PROJECT_ID: o ID do projeto da API Vertex AI para Pesquisa para varejo em que você criou o conjunto de dados do BigQuery.
  • DATASET_ID: o nome do conjunto de dados que você criou em Criar um conjunto de dados no BigQuery. Por exemplo, use retail_data ou retail_product_data.
  • TABLE_ID_PREFIX: um prefixo para o ID da tabela. Esse prefixo não pode ser uma string vazia. Um sufixo de retail_products é adicionado para completar o nome da tabela. Por exemplo, se o prefixo for test, a tabela será chamada de test_retail_products.

Solicitar corpo JSON:

{
  "outputConfig":
  {
    "bigqueryDestination":
    {
      "datasetId": "DATASET_ID",
        "tableIdPrefix": "TABLE_ID_PREFIX",
        "tableType": "view"
    }
  }
}

Para enviar a solicitação, expanda uma destas opções:

Você receberá uma resposta JSON semelhante a esta:

{
  "name": "projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/operations/17203443067109586170",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.retail.v2alpha.ExportUserEventsResponse",
    "outputResult": {
      "bigqueryResult": [
        {
          "datasetId": "DATASET_ID",
          "tableId": "TABLE_ID_PREFIX_retail_user_events"
        }
      ]
    }
  }
}

Sobre os dados exportados

Estas são informações importantes sobre os dados de varejo que você exporta para as tabelas do BigQuery:

  • Os dados exportados para as tabelas do BigQuery no projeto são visualizações autorizadas, não visualizações materializadas.

  • Não é possível alterar nem atualizar os dados nessas tabelas.

  • Os produtos são atualizados a cada hora.

  • Os eventos do usuário são atualizados quase em tempo real.

Sobre os dados de eventos do usuário exportados

Confira algumas informações importantes sobre as informações do produto incluídas nos dados de eventos do usuário exportados.

Informações sobre o preço do produto

A maneira como as informações de preço do produto são retornadas pelo método userEvents.export depende do seguinte:

  • Você incluiu informações de preço nos dados de eventos do usuário no momento da ingestão. Quando você chama o método userEvents.export, o preço retornado com um evento de usuário é o preço do produto no momento do evento.

  • Você não incluiu informações de preço nos dados de eventos do usuário, mas incluiu informações de preço nos dados do produto no momento da ingestão. Quando você chama o método userEvents.export, o preço retornado com um evento de usuário não é necessariamente o preço do produto no momento do evento. É o preço encontrado nos dados do produto no momento da ingestão.

  • Você não incluiu informações de preço nos dados de eventos do usuário, e não há informações de preço disponíveis nos dados do produto. Quando você chama o método userEvents.export, nenhum preço é retornado com os eventos de usuário.

Outras informações do produto

Todas as informações do produto (exceto preço) são agrupadas às informações de evento do usuário no momento em que você chama o método userEvents.export. Os valores do produto podem mudar do momento do evento do usuário até o momento em que você chama userEvents.export. Por isso, os valores dos produtos sem preço retornados na tabela de eventos do usuário podem ser diferentes dos valores no momento do evento.

Opcional: confirme se as novas tabelas estão no BigQuery

Depois de exportar os dados de produtos e de eventos do usuário para o BigQuery, verifique se as novas tabelas estão presentes.

  1. No BigQuery, navegue até os conjuntos de dados que você criou em Criar conjunto de dados no BigQuery.

  2. Abra os conjuntos de dados e verifique se as duas tabelas que você exportou foram exibidas. Por exemplo, procure tabelas com nomes que terminam em retail_products e retail_user_events.