Todos os produtos
Search
Central de documentação

DataWorks:Data Studio: Para desenvolvedores

Última atualização: Jul 07, 2026

Este tópico demonstra como criar uma tarefa agendada no Data Studio usando um job do MaxCompute como exemplo. Este guia ajuda você a começar rapidamente a usar os recursos básicos do Data Studio.

Pré-requisitos

Nota

Este tópico usa um nó ODPS SQL como exemplo. Portanto, o workspace deve estar vinculado a uma fonte de dados do MaxCompute.

Contexto

O DataWorks Data Studio oferece uma interface visual de desenvolvimento para diversos mecanismos de computação, como MaxCompute, Hologres, EMR e CDH. Ele suporta desenvolvimento inteligente de código, limpeza e processamento de dados, além de implantação padronizada de tarefas, garantindo um desenvolvimento de dados eficiente e estável. Para mais informações, consulte Data Studio (legacy).

Normalmente, o processo de gravar dados brutos de negócios no DataWorks e processá-los em uma tabela de resultados final inclui as seguintes etapas:

  1. Crie várias tabelas de dados no DataWorks. Por exemplo:

    • Uma tabela de origem para armazenar dados sincronizados de outras fontes de dados.

    • Uma tabela de resultados para armazenar dados limpos e processados pelo DataWorks.

  2. Crie uma tarefa de sincronização para sincronizar dados de negócios com a tabela de origem.

  3. Crie um nó de computação para limpar e processar os dados da tabela de origem em camadas e gravar o resultado de cada camada na tabela de resultados correspondente.

Alternativamente, após criar uma tabela, carregue dados locais diretamente na tabela de origem no DataWorks. Em seguida, use um nó de computação para limpar e processar os dados e armazenar os resultados na tabela de resultados. O exemplo deste tópico envolve o carregamento de dados locais e sua limpeza com um nó de computação.

Acessar o Data Studio

Faça login no console do DataWorks. Na região de destino, clique em Data Development and O&M > Data Development no painel de navegação à esquerda. Selecione um workspace na lista suspensa e clique em Go to Data Development.

Procedimento

  1. Etapa 1: Criar um workflow.

    O desenvolvimento de dados é organizado em torno de workflows. Crie um workflow antes de começar a desenvolver código.

  2. Etapa 2: Criar tabelas.

    O DataWorks permite criar tabelas visualmente, exibidas em uma estrutura de diretórios. Antes de iniciar o desenvolvimento de dados, crie uma tabela no mecanismo de computação para armazenar os resultados da limpeza de dados.

  3. Etapa 3: Criar um nó.

    O DataWorks encapsula tarefas de diferentes mecanismos de computação em tipos distintos de nós. Selecione o tipo de nó apropriado conforme as necessidades do seu negócio.

  4. Etapa 4: Editar o nó.

    Na página de edição do nó, escreva sua lógica de negócios usando a sintaxe do mecanismo de banco de dados do nó.

  5. Etapa 5: Definir configurações de agendamento para o nó.

    Defina as propriedades de agendamento do nó para executá-lo periodicamente.

  6. Etapa 6: Depurar o código.

    O DataWorks oferece três métodos para depurar seu código e verificar sua lógica: Execução rápida para trechos de código, Executar e Execução avançada.

  7. Etapa 7: Salvar e enviar o nó.

    Após depurar o nó, salve-o e envie-o.

  8. Etapa 8: Executar teste de fumaça.

    Para garantir que as tarefas de produção sejam executadas com eficiência e evitar desperdício de recursos de computação, execute um teste de fumaça na sua tarefa no ambiente de desenvolvimento para verificar sua correção antes da implantação.

  9. Etapa 9: Implantar a tarefa.

    O DataWorks executa apenas tarefas agendadas implantadas no ambiente de produção. Após o sucesso do teste de fumaça, implante a tarefa no sistema de agendamento de produção.

Etapa 1: Criar um workflow

O DataWorks organiza o desenvolvimento de dados em torno de workflows. Os workflows utilizam painéis semelhantes a contêineres para nós de desenvolvimento, agrupando ferramentas relacionadas, otimizações e ações de gerenciamento em torno de um objeto central. Essa abordagem simplifica o desenvolvimento e o gerenciamento. Agrupe tarefas de negócios relacionadas em um único workflow para atender aos seus requisitos.

  1. Faça login no console do DataWorks. Na região de destino, clique em Data Development and O&M > Data Development no painel de navegação à esquerda. Selecione um workspace na lista suspensa e clique em Go to Data Development.

  2. Crie um workflow.

    Crie um workflow de duas maneiras:

    • Método 1: Passe o mouse sobre o ícone 新建 e clique em Create Workflow.

    • Método 2: Na árvore de navegação à esquerda do Data Studio, clique com o botão direito em Workflow e selecione Create Workflow.

  3. Insira um nome e uma descrição para o workflow e clique em Create.

    Este tutorial cria um workflow chamado Create your first scheduled task. Em um cenário real, planeje seus workflows com base nos requisitos do seu negócio.

    Nota

    Para mais informações sobre workflows, consulte Criar e gerenciar workflows.

Etapa 2: Criar tabelas

Os nós do Data Studio limpam e processam seus dados de origem. Portanto, crie primeiro tabelas no mecanismo de computação para armazenar os resultados da limpeza de dados e definir a estrutura da tabela.

  1. Crie as tabelas.

    1. No workflow criado na Etapa 1, expanda o subdiretório, clique com o botão direito em MaxCompute > Table e selecione Create Table.

    2. Configure o nome da tabela, a instância do mecanismo e outras informações.

    Neste tutorial, as duas tabelas a seguir são criadas.

    Nome da tabela

    Descrição

    bank_data

    Armazena dados brutos de negócios.

    result_table

    Armazena os resultados dos dados limpos.

    Nota
  2. Configure a estrutura da tabela.

    Acesse a página de edição da tabela, alterne para o modo DDL e use instruções DDL para configurar a estrutura da tabela. Após gerar a estrutura da tabela, insira um Display Name para a tabela na seção General. Em seguida, envie-a tanto para o ambiente de desenvolvimento quanto para o ambiente de produção. Após enviar a tabela, visualize-a no projeto da fonte de dados do ambiente correspondente. Para visualizar as informações da fonte de dados vinculada para cada ambiente, consulte Vincular recursos de computação do MaxCompute.

    Nota
    • Operações de tabela, como criação e atualizações, só entram em vigor no mecanismo de computação após o envio para o ambiente correspondente.

    • Também é possível configurar a estrutura da tabela visualmente com base nas necessidades do seu negócio e nas instruções na tela. Para mais informações sobre como criar tabelas visualmente, consulte Criar e usar tabelas do MaxCompute.

    A instrução a seguir serve como referência para gerar a estrutura da tabela bank_data.

    CREATE TABLE IF NOT EXISTS bank_data
    (
     age             BIGINT COMMENT 'Age',
     job             STRING COMMENT 'Job type',
     marital         STRING COMMENT 'Marital status',
     education       STRING COMMENT 'Education level',
     default         STRING COMMENT 'Whether the user has a credit card',
     housing         STRING COMMENT 'Housing loan',
     loan            STRING COMMENT 'Personal loan',
     contact         STRING COMMENT 'Contact method',
     month           STRING COMMENT 'Month of the year',
     day_of_week     STRING COMMENT 'Day of the week',
     duration        STRING COMMENT 'Last contact duration, in seconds',
     campaign        BIGINT COMMENT 'Number of contacts performed during this campaign',
     pdays           DOUBLE COMMENT 'Days since the last contact from a previous campaign',
     previous        DOUBLE COMMENT 'Number of contacts performed before this campaign',
     poutcome        STRING COMMENT 'Outcome of the previous marketing campaign',
     emp_var_rate    DOUBLE COMMENT 'Employment variation rate',
     cons_price_idx  DOUBLE COMMENT 'Consumer price index',
     cons_conf_idx   DOUBLE COMMENT 'Consumer confidence index',
     euribor3m       DOUBLE COMMENT 'Euribor 3-month rate',
     nr_employed     DOUBLE COMMENT 'Number of employees',
     y               BIGINT COMMENT 'Whether the client has subscribed to a term deposit'
    );

    A instrução a seguir serve como referência para gerar a estrutura da tabela result_table.

    CREATE TABLE IF NOT EXISTS result_table
    (
    education STRING COMMENT 'Education level',
    num BIGINT COMMENT 'Number of people'
    )
    PARTITIONED BY
    (
    day STRING,
    hour STRING
    );
  3. Carregue os dados.

    Armazene seus dados brutos de negócios em uma tabela do DataWorks. Neste exemplo, o arquivo local banking.txt é carregado na tabela bank_data no DataWorks para simular um cenário real de gravação de dados. No assistente de importação de dados, selecione primeiro a tabela de destino bank_data, confirme se o esquema da tabela inclui campos como age, job, marital, education, default e housing, e defina os parâmetros de partição. Em seguida, carregue o arquivo local banking.txt, defina o formato do arquivo como CSV, o delimitador como vírgula, o conjunto de caracteres como GBK e a linha inicial de importação como 1, e marque a caixa de seleção 'First row is header'. Por fim, selecione Match by Name como método de mapeamento de campos, confirme se o mapeamento entre os campos de origem e destino está correto e clique em Import Data para concluir a operação. Para mais informações sobre como carregar dados, consulte Carregar dados locais na tabela bank_data.

Etapa 3: Criar um nó

Selecione um tipo de nó apropriado para desenvolvimento com base nos requisitos do seu negócio.

Nota

Os nós do DataWorks são categorizados como nós de sincronização de dados e nós de computação. Em um processo típico de desenvolvimento, use primeiro uma tarefa de sincronização em lote para sincronizar dados de bancos de dados de negócios com um data warehouse. Depois, utilize nós de computação do DataWorks para limpar e processar os dados das tabelas no warehouse.

  1. Crie um nó.

    Crie um nó de duas maneiras:

    • Método 1: Criar a partir da árvore de navegação.

      1. Na árvore de navegação, localize o workflow criado na Etapa 1 em Workflow.

      2. Clique com o botão direito no mecanismo desejado e selecione um nó apropriado em Create Node.

    • Método 2: Criar a partir do painel do workflow.

      1. Na árvore de navegação, localize o workflow criado na Etapa 1 em Workflow.

      2. Clique duas vezes no workflow para abrir seu painel.

      3. No painel de navegação à esquerda do painel, clique no nó desejado ou arraste-o para a tela.

  2. Configure a instância do mecanismo do nó, o nome e outras definições.

    Este tutorial cria um nó ODPS SQL chamado result_table, que tem o mesmo nome da tabela de resultados criada na Etapa 2.

    Nota

    Ao usar nós do DataWorks para desenvolvimento de dados, você limpa dados com um nó de desenvolvimento e armazena os resultados em uma tabela de resultados. Nomeie o nó com o mesmo nome da tabela de resultados que ele preenche para facilitar a localização dos dados da tabela produzidos pelo nó.

    Na seção Common Nodes do painel do Data Studio, arraste o nó ODPS SQL para a tela à direita para criá-lo.

Etapa 4: Editar o nó

Localize o nó criado na Etapa 3 na árvore de navegação do workflow ou no painel do workflow. Clique duas vezes no nó para abrir o editor. Com base no tipo de nó, escreva sua lógica de negócios usando a sintaxe do banco de dados correspondente.

Neste tutorial, o nó result_table grava dados de uma partição específica da tabela bank_data na partição correspondente da tabela result_table. A partição de destino é definida usando as variáveis day e hour.

Nota
  • Durante o desenvolvimento de código, se precisar substituir parâmetros dinamicamente em um contexto de agendamento, defina variáveis no seu código usando o formato ${your_variable_name}. Em seguida, atribua um valor a essa variável ao definir as configurações de agendamento na Etapa 5.

  • Para mais informações sobre parâmetros de agendamento, consulte Formatos suportados para parâmetros de agendamento.

  • Para mais informações sobre a sintaxe de desenvolvimento para diferentes tipos de nós, consulte Criar e usar nós.

--@exclude_output=xc_DPE_E2.result_table
--@exclude_input=bank_data
--odps sql
--***********************************************************--
--author:xxx
--create time:2022-08-11 14:33:23
--***********************************************************--
INSERT OVERWRITE TABLE result_table partition (day='${day}', hour='${hour}')
SELECT education
    , COUNT(marital) AS num
FROM bank_data
WHERE  day='${day}' and hour='${hour}'
GROUP BY education;

O código a seguir é fornecido para sua referência.

INSERT OVERWRITE TABLE result_table partition (day='${day}', hour='${hour}')
SELECT education
, COUNT(marital) AS num
FROM bank_data
GROUP BY education;

Etapa 5: Definir configurações de agendamento

Configure as propriedades de agendamento para executar o nó periodicamente. Na página do editor de nós, clique em Scheduling no painel de navegação à direita e configure as propriedades com base nos requisitos do seu negócio.

Parâmetro

Descrição

Propriedades básicas

O DataWorks exibe automaticamente o nome, ID, tipo e proprietário do nó. Essas propriedades não exigem configuração separada.

Nota
  • O proprietário padrão é o usuário atual. Altere-o conforme necessário. Apenas membros do workspace atual podem ser selecionados como proprietário.

  • O DataWorks gera automaticamente um ID após o envio do nó.

Parâmetros

Defina os parâmetros usados para o agendamento do nó.

O DataWorks fornece parâmetros integrados e personalizados para atribuição dinâmica de parâmetros durante o agendamento de tarefas. Se você definiu variáveis no código na Etapa 4, atribua valores a elas aqui.

Este tutorial atribui valores às variáveis da Etapa 4 para gravar dados horários da tabela bank_data do dia anterior (data de negócios) na partição horária correspondente da tabela result_table.

  • Atribua ${yyyymmdd} à variável day.

  • Atribua $[hh24] à variável hour.

Após configurar essas definições na seção Parameters do painel Scheduling, os valores atribuídos a day e hour substituirão automaticamente as variáveis ${day} e ${hour} no código SQL durante uma execução agendada.

Propriedades de tempo

As propriedades de tempo definem como e quando o nó é executado. Use essas configurações para definir a geração periódica de instâncias, ciclo de agendamento, horário de execução, suporte a reexecução e o período de tempo limite para término automático da tarefa.

Nota
  • Configure o Rerun attribute do nó antes de enviá-lo.

  • Mesmo que um nó esteja agendado para executar antes do seu nó upstream, ele não iniciará até que o nó upstream tenha sido executado com sucesso.

Neste tutorial, o nó result_table está definido para iniciar a execução às 00:00 e é agendado por hora. Isso significa que, a cada hora, ele grava dados da tabela bank_data do dia anterior (data de negócios) na partição horária correspondente da tabela result_table. Na seção Time Properties do painel Scheduling, defina Instance Generation como Immediately After Deployment, Schedule Type como Normal Scheduling e Recurrence como Hour. Nas configurações detalhadas de recorrência, defina o Start Time como 00:00, o Time Interval como 1 hora e o End Time como 23:59. A expressão cron correspondente é 00 00 00-23/1 ?.

Propriedades de recursos

Configure o grupo de recursos de agendamento a ser usado quando a tarefa for implantada no ambiente de produção para agendamento. Este tutorial usa o grupo de recursos serverless padrão fornecido quando o DataWorks foi ativado. Para mais informações, consulte Usar um grupo de recursos serverless.

Dependências

Defina as dependências upstream e downstream para o agendamento do nó. Configure as dependências com base na linhagem de dados. Isso garante que o nó atual seja executado apenas após a conclusão bem-sucedida das tarefas upstream que produzem os dados necessários, permitindo que ele consulte corretamente os dados da tabela upstream.

Nota
  • Se um nó usar uma instrução select para consultar dados de tabela que não são produzidos por um nó agendado do DataWorks, defina Auto Parse como Não e use o nó raiz do workspace para agendar a execução do nó atual.

  • Se o nó atual usar uma instrução select para consultar dados de tabela produzidos por outra tarefa, configure a dependência no nó upstream (que produz os dados) de uma das seguintes maneiras, para que o nó upstream acione a execução do nó atual:

    • Se o nó upstream não estiver no workflow ou workspace atual: Na seção Parent Nodes do nó atual, insira o Output Name do nó upstream.

    • Se o nó upstream estiver no workflow atual: Configure a dependência arrastando uma linha de conexão entre os nós no painel do workflow.

Neste tutorial, suponha que uma tarefa fora do workflow atual produza a tabela bank_data que o nó result_table consulta. Nesse caso, configure o nó raiz do workspace como uma dependência upstream para o nó result_table. Essa configuração faz com que o nó raiz acione a execução do nó result_table.

(Opcional) Contexto do nó

Define como os parâmetros são passados entre nós upstream e downstream. Um nó downstream pode usar esse recurso para recuperar valores de um nó upstream.

Nota

Esse recurso é normalmente usado com nós de atribuição ou parâmetros de atribuição.

Etapa 6: Depurar o código

Utilize os seguintes métodos para depurar a lógica do seu código e garantir que esteja correta.

Método

Descrição

Recomendação

Linha de código: Execução rápida

Executa rapidamente um trecho de código selecionado.

Ideal quando você precisa executar rapidamente um pedaço de código.

Barra de ferramentas: Executar (Run)

Atribui valores constantes às variáveis para uma execução de teste.

Nota

Na primeira vez que você clica em Executar em um novo nó, atribua manualmente valores constantes às variáveis de código na caixa de diálogo. Essa atribuição é salva e não precisa ser repetida para execuções subsequentes.

Recomendado se você precisar depurar frequentemente todo o código.

Barra de ferramentas: Execução Avançada (Advanced Run)

Exige que você atribua valores constantes às variáveis para cada execução de teste.

Indicado se você precisar alterar as atribuições de variáveis para uma execução de teste.

Este tutorial usa a Execução avançada para testar os resultados da execução para 2022.09.07 14:00. Na caixa de diálogo Parameters, selecione um Scheduling Resource Group (por exemplo, Public Scheduling Resource Group). Na seção Custom Parameters, defina os valores dos parâmetros (por exemplo, day=20220907 e hour=14). Clique em OK para executar o código. O log de execução mostra que a execução foi bem-sucedida.

Etapa 7: Salvar e enviar o nó

Após configurar e testar o nó, salve a configuração e envie o nó para o ambiente de desenvolvimento.

Nota

Envie o nó apenas após ter configurado o Rerun attribute e os Parent Nodes na Etapa 5.

  1. Clique no ícone 保存 na barra de ferramentas para salvar a configuração do nó.

  2. Clique no ícone 提交 na barra de ferramentas para enviar o nó ao ambiente de desenvolvimento.

Etapa 8: Executar teste de fumaça

Realize testes de fumaça antes de implantar uma tarefa para garantir que as tarefas de produção sejam executadas com eficiência e evitar desperdício de recursos de computação. O teste de fumaça é executado no ambiente de desenvolvimento, portanto, envie primeiro o nó para esse ambiente. Após o envio:

  1. Clique no ícone 冒烟测试 na barra de ferramentas e configure a data de negócios na caixa de diálogo de teste de fumaça.

  2. Após a conclusão do teste de fumaça, clique no ícone 查看冒烟测试结果 na barra de ferramentas para visualizar os resultados do teste.

Este tutorial testa se a configuração do parâmetro de agendamento atende às expectativas. O nó result_table está agendado para executar a cada hora, das 00:00 às 23:59. Portanto, a configuração na figura a seguir gerará duas instâncias horárias, com horários de execução agendados para 00:00 e 01:00, respectivamente.

Nota
  • Uma instância é um snapshot de uma tarefa gerado quando uma tarefa periódica é executada de acordo com seu agendamento.

  • Como o nó result_table está definido como uma tarefa horária, configure não apenas a data de negócios para o teste de fumaça, mas também selecione o intervalo de tempo das instâncias a serem executadas.

  • Para mais informações sobre testes de fumaça, consulte Executar teste de fumaça.

Clique no ícone Smoke testing (☑) na barra de ferramentas superior. No painel de teste de fumaça que aparece, defina a Business Date (por exemplo, 2022-09-01), Start Time (00:00) e End Time (01:00).

Etapa 9: Implantar a tarefa

Em um workspace de modo básico, as tarefas são agendadas periodicamente após o envio. Em um workspace de modo padrão, uma tarefa enviada entra em estado "a ser implantado". Em seguida, implante a tarefa no ambiente de produção para habilitar o agendamento periódico.

Nota
  • O DataWorks suporta agendamento automático apenas para tarefas implantadas no ambiente de produção. Após o sucesso do teste de fumaça, implante a tarefa no sistema de agendamento de produção para habilitar o agendamento periódico.

  • Para mais informações sobre as diferenças entre os modos de workspace, consulte Diferenças entre modos de workspace.

Em um workspace de modo padrão, quaisquer alterações enviadas no Data Studio, como criação, atualização ou exclusão de nós, recursos e funções, são enviadas para a página de implantação de tarefas para aguardar implantação. Para aplicar essas alterações, acesse Task Deployment > Create Deploy Task e crie um pacote de implantação para liberá-las no ambiente de produção. As alterações tornam-se ativas somente após uma implantação bem-sucedida. Para mais informações, consulte Implantar tarefas.

A tabela a seguir descreve o processo de implantação.

Tópico de implantação

Descrição

Controle do processo de implantação

Permissões de função e controles de processo restringem as operações de implantação. Após realizar uma implantação, verifique se o status do pacote de implantação é "bem-sucedido".

Nota
  • Após a implantação, verifique o status do pacote de implantação na página Deployment Packages.

  • Desenvolvedores podem apenas criar pacotes de implantação. A implantação real requer permissões de O&M.

Controle de vigência da implantação

Para implantações realizadas durante a janela diária de geração de instâncias (22:00 às 24:00), as alterações serão aplicadas apenas às instâncias agendadas a partir do dia seguinte ao próximo.

Nota

Essa restrição afeta os modos de geração de instâncias Next Day e Immediately After Deployment. Para mais informações sobre esses modos, consulte Modos de geração de instâncias.

Próximas etapas

Acesse Operation Center > Auto Triggered Task O&M para visualizar as tarefas de agendamento em lote implantadas no ambiente de produção e realizar operações relacionadas de O&M. Para mais informações, consulte O&M básico para tarefas periódicas.