Este tópico descreve como usar nós do MaxCompute no DataWorks para processar a tabela de informações de usuário ods_user_info_d e os dados de log de acesso ods_raw_log_d sincronizados com o MaxCompute, gerando os dados finais de perfil de usuário. Após a leitura, você aprenderá a utilizar o DataWorks e o MaxCompute para calcular e analisar dados sincronizados, concluindo um cenário simples de processamento em um data warehouse.
Pré-requisitos
Antes de começar, conclua as etapas em Sincronizar dados.
Etapa 1: Criar um fluxo de trabalho de processamento de dados
Após sincronizar seus dados com o MaxCompute na etapa de Sincronizar dados, processe-os para gerar um perfil básico de usuário.
-
No painel de navegação à esquerda do DataStudio, clique no ícone
para abrir a página de desenvolvimento de dados. Na seção Project Directory, localize o fluxo de trabalho criado e clique em seu nome para abrir a tela do fluxo.A tabela a seguir descreve os nós de exemplo e suas funções neste tutorial.
Tipo
Nome
Descrição
MaxCompute SQLdwd_log_info_diUtiliza funções integradas e UDFs, como
getregion, para dividir dados brutos de log da tabela ods_raw_log_d e gravá-los em múltiplos campos na tabela dwd_log_info_di.
MaxCompute SQLdws_user_info_all_diConsolida a tabela de informações básicas do usuário (
ods_user_info_d) e a tabela de dados de log processados inicialmente (dwd_log_info_di), gravando os resultados na tabeladws_user_info_all_di.
MaxCompute SQLads_user_info_1dProcessa adicionalmente os dados da tabela
dws_user_info_all_die grava os resultados na tabelaads_user_info_1dpara gerar perfis básicos de usuário. -
Nota
Em um fluxo de trabalho, é possível desenhar linhas manualmente para definir a dependência de agendamento entre nós. Alternativamente, o sistema identifica dependências automaticamente ao analisar o código nos nós filhos. Este tutorial utiliza o método de conexão manual. Para mais informações sobre análise de código, consulte Análise automática de dependências.
Etapa 2: Registrar uma UDF
Para garantir a execução adequada das tarefas subsequentes de processamento de dados, registre a UDF do MaxCompute (getregion). Essa função analisa a estrutura de dados de log sincronizada com o MaxCompute durante a fase de Sincronização de Dados e a converte em uma tabela.
Este tutorial fornece o resource necessário para a função que mapeia endereços IP para regiões. Baixe o resource fornecido para sua máquina local e faça upload dele para seu workspace do DataWorks antes de registrar a função.
A função e os resources de IP de exemplo destinam-se apenas a fins de tutorial. Para casos de uso em produção que exigem mapeamento de endereços IP para localizações geográficas, obtenha services de conversão de IP de um provedor profissional.
**Fazer upload de um resource (ip2region.jar)**
-
Baixe o pacote ip2region.jar.
NotaO resource de exemplo
ip2region.jardestina-se apenas ao uso neste tutorial. -
No painel de navegação à esquerda da página do DataStudio, clique no ícone
para abrir a página RESOURCE MANAGEMENT. Clique em . Após definir um nome para o resource, a página de upload será exibida.NotaO nome do resource não precisa corresponder ao nome do arquivo carregado.
Em Document Source, selecione Local, clique em Click Upload e escolha o arquivo
ip2region.jarbaixado localmente.Em Data Source, selecione o recurso de computação MaxCompute vinculado na etapa de Preparar ambiente.
Na barra de ferramentas do nó, clique em Save e, em seguida, clique em Publish. Siga as instruções no painel de publicação para publicar o resource nos projetos MaxCompute dos ambientes de desenvolvimento e produção.
**Registrar a UDF (getregion)**
Na página Resource Management, clique em , defina um nome para o resource e você será direcionado à página Register Function (neste tutorial, a função recebe o nome de
getregion).-
Na página Create Function, configure os parâmetros descritos na tabela a seguir. Mantenha os valores padrão para todos os outros parâmetros.
Parâmetro
Descrição
Function type
Selecione
OTHER.Data Source
Selecione o recurso de computação MaxCompute associado na etapa de Preparar o ambiente.
Class Name
Insira
org.alidata.odps.udf.Ip2Region.Resource List
Selecione
ip2region.jar.Description
Converte um endereço IP em uma região.
Command Format
Insira
getregion('ip').Parameter Description
Endereço IP.
Clique em Save na barra de ferramentas do nó e, em seguida, clique em Publish. No painel de publicação, siga as instruções para publicar a função nos projetos MaxCompute dos ambientes de desenvolvimento e produção.
Etapa 3: Configurar os nós de processamento de dados
O processamento de dados exige a implementação da lógica de cada camada por meio do agendamento de jobs SQL do MaxCompute. Este tutorial fornece o código SQL de exemplo completo para que você configure sequencialmente os nós dwd_log_info_di, dws_user_info_all_di e ads_user_info_1d.
**Configurar o nó dwd_log_info_di**
No código de exemplo deste nó, o SQL utiliza a função criada para processar campos da tabela upstream ods_raw_log_d e grava os resultados na tabela dwd_log_info_di.
No painel de navegação à esquerda do DataStudio, clique no ícone
para abrir a página de desenvolvimento de dados. Na seção Project Directory, localize o fluxo de trabalho criado e clique em seu nome para abrir a tela do fluxo.Na página de orquestração do fluxo de trabalho, passe o mouse sobre o nó
dwd_log_info_die clique em Open Node.-
Cole o código a seguir no editor de código do nó.
-
Configure os parâmetros de depuração.
No lado direito do editor de nós MaxCompute SQL, clique em Run Configuration e defina os parâmetros abaixo para executar um teste com os parâmetros relevantes de Run Configuration durante a depuração na Etapa 4.
Parâmetro
Descrição
Computing Resources
Selecione o recurso de computação MaxCompute e sua cota correspondente associados na etapa de Preparar o ambiente.
Resource Group
Selecione o grupo de recursos serverless adquirido na etapa de Preparar o ambiente.
Script Parameters
Nenhuma configuração é necessária. O código de exemplo fornecido neste tutorial usa
${bizdate}para representar o timestamp dos dados. Na Etapa 4, ao depurar e executar o fluxo de trabalho, defina This operation value como uma constante específica, como20250223. A tarefa substituirá a variável por essa constante durante a execução. -
(Opcional) Configure as propriedades de agendamento.
Para este tutorial, mantenha os valores padrão dos parâmetros de configuração de agendamento. No lado direito da página MaxCompute SQL, clique em Scheduling Configuration. Para obter mais informações sobre os parâmetros de configuração de agendamento, consulte Configuração de agendamento de nó.
Scheduling Parameters: Estes parâmetros são configurados no nível do fluxo de trabalho neste tutorial. Não é necessário configurá-los para cada nó individualmente; utilize-os diretamente em suas tarefas ou código.
Scheduling Policy: No parâmetro Delayed execution time, especifique o tempo de atraso para a execução de um nó filho após a execução do fluxo de trabalho. Esta configuração não é definida neste tutorial.
Na barra de ferramentas do nó, clique em Save.
**Configurar o nó dws_user_info_all_di**
Este nó consolida a tabela de informações básicas do usuário (ods_user_info_d) e a tabela de dados de log processados inicialmente (dwd_log_info_di), gravando os dados na tabela dws_user_info_all_di.
Na página de orquestração do fluxo de trabalho, passe o mouse sobre o nó
dws_user_info_all_die clique em Open Node.-
Cole o código a seguir no editor de código do nó.
-
Configure os parâmetros de depuração.
No lado direito do editor de nós MaxCompute SQL, clique em Run Configuration e defina os parâmetros abaixo para executar um teste com os parâmetros relevantes de Run Configuration durante a depuração na Etapa 4.
Parâmetro
Descrição
Computing Resources
Selecione o recurso de computação MaxCompute e sua cota correspondente associados na etapa de Preparar o ambiente.
Resource Group
Selecione o grupo de recursos serverless adquirido na etapa de Preparar o ambiente.
Script Parameters
Nenhuma configuração é necessária. O código de exemplo fornecido neste tutorial usa
${bizdate}para representar o timestamp dos dados. Na Etapa 4, ao depurar e executar o fluxo de trabalho, defina This operation value como uma constante específica, como20250223. A tarefa substituirá a variável por essa constante durante a execução. -
(Opcional) Configure as propriedades de agendamento.
Para este tutorial, mantenha os valores padrão dos parâmetros de configuração de agendamento. No lado direito da página MaxCompute SQL, clique em Scheduling Configuration. Para obter mais informações sobre os parâmetros de configuração de agendamento, consulte Configuração de agendamento de nó.
Scheduling Parameters: Estes parâmetros são configurados no nível do fluxo de trabalho neste tutorial. Não é necessário configurá-los para cada nó individualmente; utilize-os diretamente em suas tarefas ou código.
Scheduling Policy: No parâmetro Delayed execution time, especifique o tempo de atraso para a execução de um nó filho após a execução do fluxo de trabalho. Esta configuração não é definida neste tutorial.
Na barra de ferramentas do nó, clique em Save.
**Configurar o nó ads_user_info_1d**
Este nó processa adicionalmente os dados da tabela dws_user_info_all_di, grava os dados na tabela ads_user_info_1d e gera um perfil básico de usuário.
Na página de orquestração do fluxo de trabalho, passe o mouse sobre o nó
ads_user_info_1de clique em Open Node.-
Cole o código a seguir no editor de código do nó.
-
Configure os parâmetros de depuração.
No lado direito do editor de nós MaxCompute SQL, clique em Run Configuration e defina os parâmetros abaixo para executar um teste com os parâmetros relevantes de Run Configuration durante a depuração na Etapa 4.
Parâmetro
Descrição
Computing Resources
Selecione o recurso de computação MaxCompute e sua cota correspondente associados na etapa de Preparar o ambiente.
Resource Group
Selecione o grupo de recursos serverless adquirido na etapa de Preparar o ambiente.
Script Parameters
Nenhuma configuração é necessária. O código de exemplo fornecido neste tutorial usa
${bizdate}para representar o timestamp dos dados. Na Etapa 4, ao depurar e executar o fluxo de trabalho, defina This operation value como uma constante específica, como20250223. A tarefa substituirá a variável por essa constante durante a execução. -
(Opcional) Configure as propriedades de agendamento.
Para este tutorial, mantenha os valores padrão dos parâmetros de configuração de agendamento. No lado direito da página MaxCompute SQL, clique em Scheduling Configuration. Para obter mais informações sobre os parâmetros de configuração de agendamento, consulte Configuração de agendamento de nó.
Scheduling Parameters: Estes parâmetros são configurados no nível do fluxo de trabalho neste tutorial. Não é necessário configurá-los para cada nó individualmente; utilize-os diretamente em suas tarefas ou código.
Scheduling Policy: No parâmetro Delayed execution time, especifique o tempo de atraso para a execução de um nó filho após a execução do fluxo de trabalho. Esta configuração não é definida neste tutorial.
Na barra de ferramentas do nó, clique em Save.
Etapa 4: Processar dados
-
Processe os dados.
Na barra de ferramentas do fluxo de trabalho, clique em Run. Defina os valores para as variáveis de parâmetro definidas em cada nó para esta execução (este tutorial usa
20250223; modifique conforme necessário). Clique em OK e aguarde a conclusão da execução. -
Consulte o resultado do processamento de dados.
No painel de navegação à esquerda do Data Studio, clique em
para acessar a página de desenvolvimento de dados. Na seção de diretório pessoal, clique em
para criar um arquivo com o sufixo .sql(você pode personalizar o nome do arquivo).Na parte inferior da página, verifique se o modo de linguagem está definido como
MaxCompute SQL, conforme mostrado abaixo.
-
No editor SQL, insira a seguinte instrução SQL para verificar o número de registros na tabela de resultados finais
ads_user_info_1de confirmar se os dados foram processados.-- You need to change the partition filter condition to the actual data timestamp for your run. -- In this tutorial, the bizdate (data timestamp) debugging parameter was set to 20250223. SELECT count(*) FROM ads_user_info_1d WHERE dt='<your_data_timestamp>';Se a consulta retornar dados, o processamento foi concluído com êxito.
Caso nenhum dado seja retornado, certifique-se de que o valor de This operation value configurado durante a execução do fluxo de trabalho corresponde à data de negócios especificada em
dtna consulta. Clique no fluxo de trabalho, clique em Runtime Logs no lado direito, clique em View na coluna Operation do histórico de execuções e verifique o valor da data de negócios (partition=[pt=xxx]) no log de execução do fluxo de trabalho.
Etapa 5: Implantar o fluxo de trabalho
Uma tarefa só pode ser agendada automaticamente após ser implantada no ambiente de produção. Siga estas etapas para implantar o fluxo de trabalho.
Neste tutorial, os parâmetros de agendamento são configurados nas propriedades de agendamento do fluxo de trabalho. Não é necessário configurá-los para cada nó antes da implantação.
Na barra de navegação à esquerda do Data Studio, clique em
para acessar a página do DataStudio. Em seguida, na área Project Directory, localize o fluxo de trabalho criado e clique nele para abrir a página de orquestração.Clique em Publish na barra de ferramentas do nó para abrir o painel Publish.
-
Clique em Start Release Production. Na caixa de diálogo de confirmação exibida, escolha um método de implantação conforme suas necessidades:
Full deployment: Implanta o fluxo de trabalho atual e todos os seus nós de tarefa internos.
Incremental deployment: Implanta apenas o fluxo de trabalho atual e os nós de tarefa internos modificados desde a última implantação. Ideal para otimizações iterativas e pequenas atualizações.
Após confirmar o método de implantação, o sistema executa automaticamente o processo, implantando o fluxo de trabalho e os nós de tarefa selecionados nos ambientes de desenvolvimento e produção sequencialmente. Para concluir a implantação no ambiente de produção, clique em Confirm Release.
Etapa 6: Executar tarefas em produção
Após a implantação de uma tarefa, uma instância é gerada para execução no dia seguinte. Utilize Supplementary data para retrocarregar dados do fluxo de trabalho implantado e verificar se a tarefa executa corretamente no ambiente de produção. Para mais informações, consulte O&M de instância de retrocarga de dados.
-
Após a implantação bem-sucedida da tarefa, clique em Operation and Maintenance Center no canto superior direito.
Alternativamente, clique no ícone
no canto superior esquerdo e escolha . Na barra de navegação à esquerda, clique em . Na página Auto Triggered Node, clique no nó virtual
workshop_start.No DAG à direita, clique com o botão direito no nó
workshop_starte selecione .Selecione as tarefas que requerem retrocarga de dados, defina o timestamp dos dados e clique em Submit and Redirect.
Na página de retrocarga de dados, clique em Refresh até que todas as tarefas SQL sejam executadas com êxito.
Ao concluir o tutorial, para evitar custos adicionais, defina o período de validade do agendamento do nó ou freeze o nó raiz do processo de negócios (o nó virtual workshop_start).
Próximas etapas
Visualizar dados: Após concluir a análise de perfil de usuário, utilize o módulo de análise de dados para exibir os dados processados em gráficos. Isso facilita a extração rápida de informações essenciais e a obtenção de insights sobre tendências de negócios.
Monitorar qualidade de dados: Configure regras de monitoramento de qualidade de dados para as tabelas geradas durante o processamento. Assim, é possível identificar e bloquear dados incorretos antecipadamente, evitando a propagação de seus impactos.
Gerenciar dados: Após a conclusão do fluxo de trabalho de análise de perfil de usuário, as tabelas de dados correspondentes são criadas no MaxCompute. Visualize essas tabelas no Data Map e verifique a linhagem para compreender as relações entre elas.
Service de dados API: Após obter os dados finais processados, utilize o módulo de service de dados para compartilhá-los por meio de APIs padronizadas. Dessa forma, você fornece dados para outros módulos de negócios que consomem informações via API.
> New Resource > MaxCompute Jar