Todos os produtos
Search
Central de documentação

Platform For AI:Registro de dados e configuração de campos

Última atualização: Sep 17, 2026

Registro de dados

O registro de dados exige a ativação do MaxCompute, a vinculação de um projeto e o registro de uma tabela do MaxCompute. Essa tabela registrada funciona como uma tabela intermediária para estatísticas de desempenho, denominada tabela source do relatório de experimento. Ela utiliza uma chave primária composta pelos campos user_id, exp_id e campos de dimensão para agregar estatísticas. Cada linha representa métricas como exposições e cliques de um usuário específico em um experimento específico. É possível adicionar dimensões, como país, para criar uma tabela de estatísticas intermediárias mais granular, indexada por user_id, country e exp_id. Todas as métricas básicas e derivadas dependem dessa tabela intermediária. A arquitetura geral do experimento é a seguinte:

image

O mecanismo PAI-Rec é um service de recomendação que integra um SDK do centro de configuração para recuperar informações do experimento. A resposta inclui o ID do experimento (exp_id) e um ID de solicitação (reqid).

Quando um usuário interage com seu aplicativo, o rastreamento de eventos no front-end coleta logs de comportamento e os envia ao MaxCompute. Uma tarefa SQL processa esses logs para gerar a tabela source do relatório de experimento. Após configurar as métricas no centro de configuração, o sistema monta dinamicamente consultas SQL para calcular estatísticas a partir dessa tabela source. Os resultados são armazenados no Hologres e podem ser visualizados na página de relatório do experimento.

I. Relatórios de experimento offline

Código da tabela source do relatório de experimento offline

CREATE TABLE IF NOT EXISTS experiment_report (
	user_id STRING COMMENT 'User ID',
        exp_id STRING COMMENT 'Experiment ID',
	exposure_count BIGINT COMMENT 'Exposure count',
	click_count BIGINT COMMENT 'Click count',
	like_comment_collect_count BIGINT COMMENT 'Like, comment, and collect count'
)
PARTITIONED  by (dt STRING COMMENT 'Date')
STORED AS ALIORC;
INSERT OVERWRITE TABLE experiment_report PARTITION (dt = '${bdp.system.bizdate}')
SELECT  user_id
        ,exp_id
        ,SUM(IF(event == 'expose',1,0))
        ,SUM(IF(event == 'click',1,0))
        ,SUM(IF(event IN ('like','comment','collect'),1,0))
FROM    rec_sln_demo_behavior_table_v1
WHERE   ds = '${bdp.system.bizdate}'
GROUP BY user_id
         ,exp_id

Schema da tabela source do relatório de experimento offline

Parâmetro

Descrição

Obrigatório

Observações

user_id

ID do usuário

Sim

Identificador único do usuário, como UID, device_id ou IMEI.

exp_id

ID do experimento

Sim

ID do experimento retornado pelo service de teste A/B e registrado via rastreamento de eventos. Se você utilizar seu próprio service de recomendação, poderá definir um identificador personalizado. Exemplo: ER1_L1#EG1#E1_L2#EG2#E2

Campo de dimensão

Campo utilizado para relatórios estatísticos mais granulares.

Não

Utilize este campo para agrupar e exibir as métricas correspondentes.

Por exemplo, adicione um campo province para analisar o desempenho do product por estado.

É possível especificar até dois campos de dimensão, como province e city. Um terceiro campo gera combinações excessivas e reduz significativamente a velocidade de computação.

Um campo de dimensão comum é recall_id, que permite analisar o desempenho das sources de recall. Isso requer a configuração dos logs de backend do mecanismo PAI-Rec. Para mais informações, consulte pairec_debug_log em Log Configuration.

Campo de cálculo

Podem existir múltiplos campos de cálculo.

Exemplo: exposure_count

Exemplo: click_count

Sim

Campo numérico fornecido por você, como contagem de exposições, contagem de cliques ou duração de visualização.

dt

Partição de data

Sim

Formato: yyyyMMdd

hh

Partição de hora

Não

Formato de 24 horas: 00 a 23.

mm

Partição de minuto

Não

00 a 59.

Dependendo das necessidades do seu negócio, gere a tabela source diariamente para relatórios offline ou horariamente para relatórios quase em tempo real. Por exemplo, utilize o DataWorks para agendar um job executado a cada hora para processar os logs da hora anterior. Para geração offline, user_id, exp_id e dt são obrigatórios. Para relatórios horários, user_id, exp_id, dt e hh são necessários; a partição mm é opcional.

Uma source de dados em tempo real suporta métricas offline e em tempo real. Já uma source de dados offline suporta apenas métricas offline.

Os campos de dimensão são opcionais, mas permitem a análise dimensional das suas métricas. Campos comuns incluem gender e os (sistema operacional, como iOS ou Android), possibilitando a visualização dos dados do relatório segmentados por gênero ou sistema operacional.

Código da tabela source do relatório de significância offline

CREATE TABLE IF NOT EXISTS experiment_report_v3 (
    user_id STRING COMMENT 'User ID',
    exp_id STRING COMMENT 'Experiment ID',
    item_id STRING COMMENT 'Item ID',
    request_id STRING COMMENT 'Request ID',
    click_uv BIGINT COMMENT 'Click UV',
    expr_pv BIGINT COMMENT 'Exposure PV'
)
PARTITIONED  by (dt STRING COMMENT 'Date')
STORED AS ALIORC;
INSERT OVERWRITE TABLE experiment_report_v3 PARTITION (dt = '${bdp.system.bizdate}')
SELECT
    user_id,
    exp_id,
    item_id,
    request_id,
    MAX(IF(event = 'click', 1, 0)) AS click_uv,
    SUM(IF(event = 'expr', 1, 0)) AS expr_pv
FROM rec_sln_demo_behavior_table_v1
WHERE   ds = '${bdp.system.bizdate}'
GROUP BY
    user_id,
    exp_id,
    item_id,
    request_id

Schema da tabela source do relatório de significância offline

Parâmetro

Descrição

Obrigatório

Observações

user_id

ID do usuário

Sim

Identificador único do usuário, como UID, device_id ou IMEI.

exp_id

ID do experimento

Sim

ID do experimento retornado pelo service de teste A/B e registrado via rastreamento de eventos. Se você utilizar seu próprio service de recomendação, poderá definir um identificador personalizado. Exemplo: ER1_L1#EG1#E1_L2#EG2#E2

item_id

ID do item

Sim

request_id

ID da solicitação

Sim

Campo de dimensão

Campo utilizado para relatórios estatísticos mais granulares.

Não

Utilize este campo para agrupar e exibir as métricas correspondentes.

Por exemplo, adicione um campo province para analisar o desempenho do product por estado.

É possível especificar até dois campos de dimensão, como province e city. Um terceiro campo gera combinações excessivas e reduz significativamente a velocidade de computação.

Um campo de dimensão comum é recall_id, que permite analisar o desempenho das sources de recall. Isso requer a configuração dos logs de backend do mecanismo PAI-Rec. Para mais informações, consulte pairec_debug_log em Log Configuration.

Campo de cálculo

Podem existir múltiplos campos de cálculo.

Exemplo: expr_pv (contagem de exposições)

Exemplo: click_uv (contagem de cliques)

Sim

Campo numérico fornecido por você, como contagem de exposições ou contagem de cliques.

dt

Partição de data

Sim

Formato: yyyyMMdd

II. Relatórios de experimento em tempo real

Código da tabela source do relatório de experimento em tempo real

CREATE TABLE IF NOT EXISTS experiment_report_real (
	user_id STRING COMMENT 'User ID',
        exp_id STRING COMMENT 'Experiment ID',
	exposure_count BIGINT COMMENT 'Exposure count',
	click_count BIGINT COMMENT 'Click count',
	like_comment_collect_count BIGINT COMMENT 'Like, comment, and collect count'
)
PARTITIONED  by (
    dt string
    ,hh string
)
STORED AS ALIORC;
INSERT OVERWRITE TABLE experiment_report_real PARTITION (dt = '${bdp.system.bizdate}',hh = '${hour}')
SELECT  user_id
        ,exp_id
        ,SUM(IF(event == 'expose',1,0))
        ,SUM(IF(event == 'click',1,0))
        ,SUM(IF(event IN ('like','comment','collect'),1,0))
FROM    rec_sln_demo_behavior_table_v1
WHERE   ds = '${bdp.system.bizdate}'
AND hh = hour(now()) -1
GROUP BY user_id
         ,exp_id;

Schema da tabela source do relatório de experimento em tempo real

Parâmetro

Descrição

Obrigatório

Observações

user_id

ID do usuário

Sim

Identificador único do usuário, como UID, device_id ou IMEI.

exp_id

ID do experimento

Sim

ID do experimento retornado pelo service de teste A/B e registrado via rastreamento de eventos. Se você utilizar seu próprio service de recomendação, poderá definir um identificador personalizado. Exemplo: ER1_L1#EG1#E1_L2#EG2#E2

Campo de dimensão

Exemplo: os (sistema operacional).

Não

Utilizado para filtrar os dados do relatório por esta dimensão.

Campo de cálculo

Podem existir múltiplos campos de cálculo.

Exemplo: exposure_count, click_count.

Sim

Campo numérico fornecido por você, como contagem de exposições, contagem de cliques ou duração de visualização.

dt

Partição de data

Sim

Formato: yyyyMMdd

hh

Partição de hora

Sim

Formato de 24 horas: 00 a 23.

mm

Partição de minuto

Não

00 a 59.

Os campos na tabela de resultados são majoritariamente fixos; apenas os campos de dimensão são variáveis. A definição de um campo de dimensão na tabela de resultados deve corresponder exatamente à sua definição na tabela source.

Métricas offline e em tempo real não podem compartilhar a mesma tabela de resultados. Uma tabela de resultados para métricas offline requer apenas a partição de data dt, enquanto uma tabela em tempo real deve incluir pelo menos a partição de hora hh.

Após criar a tabela source do relatório de experimento, acesse Metric Management > Data Registration no console para adicionar a nova tabela de dados do MaxCompute.

Recomendamos o uso da tabela padrão do Hologres para armazenar os resultados do cálculo de métricas. Essa opção não consome seus próprios resources, pois o sistema cria e gerencia a tabela automaticamente. Alternativamente, utilize sua própria instância e tabela do Hologres.

III. Registrar uma tabela do MaxCompute

Clique em Create Data Table, selecione seu projeto vinculado do MaxCompute, escolha a tabela de dados do MaxCompute, forneça um nome personalizado e clique em Start Import para importar os dados da tabela.

Nota

Se o schema de uma tabela de dados registrada for alterado, reimporte-a imediatamente. Caso contrário, o sistema pode não reconhecer as mudanças nos campos.

Configuração de campos

Após o registro, a tabela de dados aparece na lista. Clique em View Fields para revisar e editar os campos. Os campos user_id, exp_id e dt são obrigatórios. Juntos, esses campos rastreiam totais de comportamento, como exposições, cliques e curtidas de um usuário específico (user_id) em um experimento específico (exp_id) em um determinado dia (dt). Métricas personalizadas são definidas e calculadas com base nesta tabela.

Campos de dimensão

Adicione um ou dois campos de dimensão à tabela. Por exemplo, se você definir city como dimensão, o relatório de experimento exibirá uma comparação dos resultados para cada cidade. Se definir tanto city quanto gender como campos de dimensão, o relatório mostrará os resultados agrupados pela combinação desses dois campos.

Instruções

  1. Leia o conteúdo em inglês para compreender O QUE precisa ser comunicado

  2. Escreva o português brasileiro DO ZERO — esqueça a estrutura das frases em inglês

  3. Preserve toda a formatação markdown, blocos de código, links e imagens exatamente como estão

  4. Copie os placeholders xref ({XREF_N}) literalmente, sem traduzir ou modificar

  5. Aplique todas as regras específicas de idioma rigorosamente

  6. Aplique as regras de stopwords com tolerância zero

  7. Use o modo imperativo em passos numerados e listas de procedimentos

  8. Garanta a consistência terminológica — o mesmo termo deve ter a mesma tradução em todo o documento

  9. Varie os inícios de frase em listas e tabelas — nenhum iniciador deve se repetir 3 vezes ou mais

  10. Retorne APENAS o documento markdown em português brasileiro, sem explicações