Acompanhe uma análise de perfil de usuário de site para aprender as principais tarefas do DataWorks: sincronização, processamento, gerenciamento e consumo de dados.
Objetivos
Resultado esperado
Conclua tarefas comuns do DataWorks de forma independente, incluindo sincronização de dados, desenvolvimento de dados e O&M de tarefas.
Público-alvo
Desenvolvedores, analistas de dados e profissionais de operações de product que precisam extrair e analisar dados de data warehouse.
Visão geral do design
Extraia perfis básicos de usuários a partir de dados comportamentais do site — atributos geográficos, sociais, entre outros — para impulsionar o agendamento periódico de tarefas e operações de tráfego granulares no DataWorks.
Serviços envolvidos
Este tutorial utiliza os seguintes services.
|
Categoria do service |
Nome do service |
Descrição |
|
Banco de dados |
Armazena informações básicas do usuário. |
|
|
Armazena informações de log. |
||
|
Motor de computação |
Processa dados brutos e armazena resultados. Escolha uma das opções: MaxCompute, EMR, EMR Serverless StarRocks ou EMR Serverless Spark. |
|
|
Data mid-end |
Atua como data mid-end para sincronização, processamento, monitoramento de qualidade, consumo e agendamento. |
Os bancos de dados e o DataWorks são compartilhados em todos os caminhos de motor de computação. Basta associar o motor de computação desejado ao seu workspace do DataWorks.
Caso utilize EMR ou EMR Serverless Spark, prepare uma source de dados OSS para receber as informações básicas do usuário e as informações de log. Se optar pelo EMR Serverless StarRocks, prepare uma source de dados OSS para armazenar o pacote
.jarnecessário para registrar uma função do StarRocks. Verifique se as sources de dados OSS possuem espaço de armazenamento suficiente e se você tem as permissões necessárias.
Arquitetura
Adicione bancos de dados como sources de dados e associe motores de computação ao seu workspace do DataWorks. Em seguida, processe e consuma os dados para obter atributos geográficos e sociais dos usuários.
Fluxo de trabalho
Selecione um caminho de análise de perfil de usuário com base no seu motor de computação. Quatro opções estão disponíveis: Análise de perfil de usuário (MaxCompute), Análise de perfil de usuário (StarRocks), Análise de perfil de usuário (EMR) e Análise de perfil de usuário (Spark). Cada caminho inclui as etapas a seguir:
Use o Data Integration para sincronizar informações de usuários e logs de acesso das sources de dados para um motor de computação.
Divida os logs de acesso em campos analisáveis no motor de computação.
Agrupe as informações de usuário com os logs de acesso processados.
Processe os dados agregados para gerar os perfis de usuário.
Operações
A tabela a seguir descreve as operações abordadas neste tutorial.
|
Etapa |
Operação |
Objetivo da fase |
|
Sincronizar dados |
Sincronize informações de usuários do MySQL e logs de acesso do OSS para os recursos de computação.
|
Você aprenderá a:
|
|
Processar dados |
Use o Data Studio para dividir os dados de log em campos analisáveis com funções e expressões regulares. Em seguida, agrupe esses campos com as informações de usuário para gerar dados de perfil. |
Você aprenderá a:
|
|
Gerenciar dados |
Use o Data Map para visualizar e gerenciar metadados das tabelas de origem. Monitore dados incorretos decorrentes de alterações na source e interrompa tarefas relacionadas em caso de erros, evitando impactos downstream. |
|
|
Consumir dados |
|
Apresentar dados visualmente e criar APIs no DataWorks. |
Dados do caso
As estruturas de dados a seguir são utilizadas nas etapas de sincronização, processamento e gerenciamento.
Estrutura de dados de log
Revise os dados de negócio, o formato dos dados e a estrutura alvo do perfil de usuário antes de começar.
Formato dos dados de log brutos no arquivo OSS user_log.txt:
$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent"$http_referer" "$http_user_agent" [unknown_content];
Os dados de log contêm os seguintes campos.
|
Nome do campo |
Descrição do campo |
|
$remote_addr |
O endereço IP do cliente. |
|
$remote_user |
O nome de usuário de login do cliente. |
|
$time_local |
A hora local do servidor. |
|
$request |
A solicitação HTTP, composta pelo método de solicitação, URL e versão HTTP. |
|
$status |
O código de status de resposta do servidor. |
|
$body_bytes_sent |
O número de bytes retornados ao cliente, excluindo o cabeçalho de resposta. |
|
$http_referer |
A URL de origem da solicitação. |
|
$http_user_agent |
Informações do cliente, como o navegador utilizado. |
Estrutura de dados de informações do usuário
Estrutura da tabela de dados MySQL ods_user_info_d:
|
Nome do campo |
Descrição do campo |
|
uid |
O nome de usuário. |
|
gender |
O gênero. |
|
age_range |
A faixa etária. |
|
zodiac |
O signo do zodíaco. |
Estrutura de dados de saída
Estrutura final da tabela após a análise dos dados brutos. Ajuste os campos conforme as necessidades do seu negócio.
|
Nome do campo |
Descrição do campo |
|
uid |
O nome de usuário. |
|
region |
A região. |
|
device |
O tipo de terminal. |
|
pv |
O número de visualizações de página. |
|
gender |
O gênero. |
|
age_range |
A faixa etária. |
|
Zodiac |
O signo do zodíaco. |