Componentes de sub-eventos em feeds de dados

AVAILABILITY
A funcionalidade descrita neste artigo está na fase de teste limitado da versão e pode não estar disponível ainda em seu ambiente. Essa observação será removida quando a funcionalidade estiver em disponibilidade geral. Para obter informações sobre o processo de lançamento do Customer Journey Analytics, consulte Lançamentos de recursos do Customer Journey Analytics.

Os componentes do sub-evento são dimensões e métricas baseadas em campos dentro de uma matriz ou mapa no esquema XDM. Eles permitem analisar dados em um nível mais granular do que o nível do evento, como os produtos individuais em uma compra. Para obter informações sobre como usar esses dados em segmentos, consulte Subeventos.

Use as informações a seguir para entender como os componentes de subeventos de campos de matriz e mapa aparecem nos feeds de dados do Customer Journey Analytics.

Entender os componentes do subevento

Componentes de sub-evento no esquema XDM

No esquema XDM, cada elemento de uma matriz (uma matriz de cadeia de caracteres ou uma matriz de objetos) é um sub-evento. Cada entrada em um campo de mapa também é um subevento, conforme descrito em Mapear campos em feeds de dados. Dimensões e métricas baseadas nos campos em um subevento são componentes do subevento.

Para exibir sub-eventos no esquema XDM na Adobe Experience Platform, selecione Esquemas e expanda um evento que contenha sub-eventos.

No exemplo a seguir, Product list items é uma matriz de objetos contendo vários componentes de subeventos.

Esquema XDM contendo uma matriz de objetos e componentes de subevento

Diferenças de sub-eventos entre o Analysis Workspace e os feeds de dados

Os componentes de sub-evento são representados de forma diferente entre o Analysis Workspace e os feeds de dados no Customer Journey Analytics.

Localização
Como os componentes do subevento são representados
Analysis Workspace (no Customer Journey Analytics)
Selecionáveis como componentes individuais, separados de qualquer hierarquia visível.
Feeds de dados (no Customer Journey Analytics)
Representado como um grupo, com a hierarquia intacta.

Diferenças de sub-eventos entre o Adobe Analytics e o Customer Journey Analytics

Os dados de subeventos (como vários detalhes do produto em um único evento de compra) são exibidos de forma diferente nos feeds de dados do Customer Journey Analytics e nos feeds de dados do Adobe Analytics. A tabela a seguir compara como cada produto representa dados de subeventos.

Produto
Como os dados de subeventos aparecem nos feeds de dados
Exemplo: lista de produtos
Adobe Analytics
Nivelado em uma string delimitada em uma única coluna.

Uma lista de produtos contém vários produtos agrupados em uma única sequência:

Power Tools;Cordless Drill;1;129.99,Power Tools;Drill Battery Pack;2;39.98

Customer Journey Analytics
Os componentes de sub-evento retêm a hierarquia definida no esquema XDM. Embora agrupados na mesma coluna, eles mostram sua hierarquia relacional para o evento principal e os sub-eventos irmãos.

Uma lista de produtos mantém sua hierarquia que é definida no esquema XDM como uma matriz:

[{"category":"Power Tools","product":"Cordless Drill","quantity":1,"revenue":129.99},{"category":"Power Tools","product":"Drill Battery Pack","quantity":2,"revenue":39.98}]

Exemplo de sub-evento: Produtos em um evento de compra

Um cliente adquire dois produtos em um único pedido: uma furadeira sem fio e duas baterias de furadeira. Sua implementação envia um único evento de compra que inclui ambos os produtos na matriz de objetos productListItems:

{
  "eventType": "commerce.purchases",
  "timestamp": "2026-09-16T14:32:07.512Z",
  "commerce": {
    "purchases": { "value": 1 }
  },
  "productListItems": [
    { "SKU": "CD-2000", "name": "Cordless Drill", "quantity": 1, "priceTotal": 129.99 },
    { "SKU": "BP-2000", "name": "Drill Battery Pack", "quantity": 2, "priceTotal": 39.98 }
  ]
}

Este evento contém dois sub-eventos, um para cada objeto na matriz productListItems. A tabela a seguir mostra quais campos pertencem ao evento e quais pertencem a seus sub-eventos.

Nível
Campos
O que os campos descrevem
Evento
eventType, timestamp, commerce.purchases.value
A compra como um todo. Cada campo tem um valor para o evento. A métrica Pedidos conta 1 para este evento, independentemente de quantos produtos ela contém.
Subevento
SKU, name, quantity, priceTotal em cada objeto productListItems
Um produto individual na compra. Cada campo tem um valor por produto. Por exemplo, quantity é 1 para a análise sem fio e 2 para a análise de bateria.
NOTE
Os sub-eventos incluem apenas os dados enviados com o evento. A Customer Journey Analytics não reconstrói o conteúdo do carrinho de eventos anteriores, como inclusões ou check-outs do carrinho. Para que os produtos apareçam como subeventos de um evento de compra, sua implementação deve incluí-los em productListItems nesse evento de compra.

Adicionar componentes de subeventos a um feed de dados

Ao adicionar um componente de subevento a um feed de dados, uma caixa de diálogo solicita que você adicione os outros componentes do mesmo subevento.

Caixa de diálogo solicitando que você adicione componentes de subeventos relacionados

Campos do mesmo subevento aparecem na tela de desenho como um grupo aninhado recolhível em vez de um item plano.

Subgrupo de eventos

Esse grupo reflete a estrutura de dados subjacente.

Na saída do feed de dados, todos esses componentes aparecem como uma matriz aninhada em uma única coluna. Os arquivos Parquet suportam matrizes aninhadas nativamente. Para obter mais informações, consulte Trabalhar com arquivos Parquet em feeds de dados.

Para obter informações sobre como adicionar componentes, incluindo componentes de subeventos, a um feed de dados, consulte Criar um feed de dados.

Consultar dados de subeventos na saída do feed de dados

Como os dados de subeventos aparecem de forma diferente nos feeds de dados do Customer Journey Analytics, as consultas usadas para eles são diferentes daquelas usadas para os feeds de dados do Adobe Analytics.

Os exemplos a seguir mostram como localizar eventos que incluem um produto específico. Os exemplos usam a sintaxe do Google BigQuery, onde UNNEST expande uma matriz em linhas. Outros data warehouses oferecem suporte à mesma abordagem com suas próprias funções de matriz, como FLATTEN no Snowflake ou explode no Databricks.

Consultar dados do produto nos feeds de dados do Customer Journey Analytics

Nos feeds de dados do Customer Journey Analytics, os mesmos dois produtos aparecem como uma matriz de objetos na coluna product_list_items. Nenhuma análise de delimitador é necessária:

code language-json
{
  "row_id": "01K3F2M9-...-4821",
  "timestamp_utc": "2026-09-16T14:32:07.512000Z",
  "product_list_items": [
    { "category": "Power Tools", "product": "Cordless Drill", "quantity": 1, "revenue": 129.99,
      "events": {"event1": 1}, "merchandising": {"eVar10": "DrillBundle"} },
    { "category": "Power Tools", "product": "Drill Battery Pack", "quantity": 2, "revenue": 39.98,
      "events": {"event1": 1}, "merchandising": {"eVar10": "DrillBundle"} }
  ]
}

A forma como você grava a consulta depende de se você deseja uma linha por evento ou uma linha por produto correspondente.

Retornar uma linha por evento

Para filtrar eventos sem alterar o número de linhas, use uma função de matriz, como UNNEST dentro de uma subconsulta EXISTS:

code language-sql
SELECT row_id, timestamp_utc, product_list_items
FROM `project.dataset.cja_data_feed` AS f
WHERE EXISTS (
  SELECT 1
  FROM UNNEST(f.product_list_items) AS item
  WHERE item.product = 'Cordless Drill'
);

Esta consulta retorna uma linha para cada evento correspondente, com a matriz product_list_items completa intacta, independentemente de quantos produtos na matriz sejam correspondentes.

Retornar uma linha por produto correspondente

Para retornar uma linha para cada produto correspondente, mova a função de matriz para a cláusula externa FROM:

code language-sql
SELECT f.row_id, f.timestamp_utc, item.product, item.quantity, item.revenue
FROM `project.dataset.cja_data_feed` AS f,
     UNNEST(f.product_list_items) AS item
WHERE item.product = 'Cordless Drill';

Um evento com mais de um produto correspondente aparece como várias linhas, e as colunas do evento, como row_id, se repetem em cada linha. Use essa abordagem somente quando precisar de detalhes no nível do produto. Para contar eventos nos resultados, use COUNT(DISTINCT row_id) em vez de contar linhas.

Essa abordagem se aplica a qualquer campo de matriz no esquema XDM, não apenas aos produtos.

Consultar dados do produto nos feeds de dados do Adobe Analytics

Nos feeds de dados do Adobe Analytics, um evento com dois produtos comprados juntos aparece como uma única cadeia de caracteres delimitada na coluna product_list:

code language-text
Power Tools;Cordless Drill;1;129.99;event1=1;eVar10=DrillBundle,Power Tools;Drill Battery Pack;2;39.98;event1=1;eVar10=DrillBundle

Para localizar eventos que incluem uma Análise sem Fio, analise essa string com uma expressão regular:

code language-sql
SELECT hitid_high, hitid_low, post_evar10
FROM aa_hit_data
WHERE REGEXP_CONTAINS(product_list, r'(^|,)[^;]*;Cordless Drill;')

Usar campos de mapa em feeds de dados

Os campos de mapa no esquema XDM armazenam pares de valores-chave. Os feeds de dados exportam cada mapa como uma matriz de objetos, da mesma forma que outros dados de subeventos. Cada objeto contém a chave do mapa e seu valor como campos separados.

Os nomes de campos na saída vêm das IDs de componente configuradas para o feed de dados, não de nomes fixos como key ou value. Os exemplos nesta seção usam IDs de componente de exemplo.

Mapas simples

Mapas simples são o tipo de mapa que você pode criar em seu próprio esquema. Cada chave é uma string e cada valor é uma string ou um número inteiro.

Por exemplo, um mapa de pesquisa armazena cada pergunta como uma chave e a resposta como um valor:

{
  "_yourtenant": {
    "surveyResponses": {
      "How did you hear about us?": "Search engine",
      "How likely are you to recommend us?": 9
    }
  }
}

Na saída do feed de dados, survey_question e survey_answer são as IDs de componente para a chave e o valor:

{
  "survey_responses": [
    { "survey_question": "How did you hear about us?", "survey_answer": "Search engine" },
    { "survey_question": "How likely are you to recommend us?", "survey_answer": 9 }
  ]
}

Mapa de identidade

Cada identidade no campo identityMap é exportada como um objeto. O objeto contém o namespace de identidade (a chave), juntamente com o identificador, o estado autenticado e o sinalizador principal. O namespace se repete para cada identidade nesse namespace.

Somente os atributos do mapa de identidade que existem como dimensões em sua visualização de dados e que você adiciona ao feed de dados são exportados.

{
  "identity_map": [
    { "identity_namespace": "ECID", "identity_id": "83290187457380573620940587193016478103", "authenticated_state": "ambiguous", "is_primary": true },
    { "identity_namespace": "CRMID", "identity_id": "C-1048576", "authenticated_state": "authenticated", "is_primary": false }
  ]
}

Mapas aninhados

Alguns campos definidos pela Adobe, como segmentMembership, são mapas de mapas. Os feeds de dados os nivelam em uma única matriz, com a chave de primeiro nível e a chave de segundo nível como campos separados em cada objeto. A chave de primeiro nível se repete em cada objeto ao qual se aplica, de modo que nenhum dado ou relacionamento é perdido.

Por exemplo, segment_namespace e segment_id são as IDs de componente para a chave de primeiro nível e a chave de segundo nível:

{
  "segment_membership": [
    { "segment_namespace": "ups", "segment_id": "04a81716-43d6-4e7a-a49c-f1d8b3129ba9", "status": "realized" },
    { "segment_namespace": "ups", "segment_id": "53cba6b2-a23b-454a-8069-fc41308f1c0f", "status": "exited" }
  ]
}
recommendation-more-help
analytics-platform-help-main