Todos os produtos
Search
Central de documentação

DataWorks:Nó Shell

Última atualização: Jun 27, 2026

O nó Shell do DataWorks foi desenvolvido para engenheiros de dados e permite executar scripts shell padrão em cenários como operações de arquivos e interação de dados com OSS e NAS. Configure parâmetros de agendamento, referencie recursos, acesse o OSS com segurança por meio da ferramenta ossutil pré-instalada e execute nós associando uma função do RAM.

Permissões

Adicione a conta RAM usada no desenvolvimento do nó ao workspace desejado e conceda a ela a função de desenvolvedor ou administrador do workspace. Para mais detalhes, consulte Adicionar um membro a um workspace.

Observações de uso

  1. Limitações de sintaxe

    • A sintaxe shell padrão é compatível, mas a sintaxe interativa não é suportada.

  2. Ambiente de execução e acesso à rede

    • Ao executar um nó Shell em um grupo de recursos serverless, caso o serviço de destino tenha uma lista de permissões configurada, adicione os endereços IP do grupo de recursos serverless à lista de permissões do aplicativo. Consulte Adicionar endereços IP do grupo de recursos serverless.

    • Em grupos de recursos serverless, cada tarefa suporta no máximo 64CU. Para evitar escassez de recursos e atrasos na inicialização, não ultrapasse 16CU.

  3. Ambiente de desenvolvimento estendido

    • Se sua tarefa exigir um ambiente de desenvolvimento específico, use o recurso de imagens personalizadas do DataWorks para criar uma imagem adaptada à execução da tarefa. Para mais informações, consulte Usar imagens personalizadas.

  4. Uso de recursos e chamadas de múltiplos scripts

    • Evite iniciar muitos subprocessos em um nó Shell. Como atualmente não há limites de recursos para esses nós, o excesso de subprocessos pode afetar outras tarefas executadas no mesmo grupo de recursos de agendamento.

    • Quando um nó Shell invoca outro script, como um script Python, ele aguarda a conclusão desse script antes de encerrar sua própria execução.

Início rápido

Esta seção apresenta o passo a passo para criar, depurar, configurar e implantar um nó Shell, usando como exemplo a saída "Hello DataWorks!".

Desenvolver o nó

  1. Faça login no console do DataWorks. Após alternar para a região desejada, no painel de navegação à esquerda, clique em Data Development and O&M > Data Development. Na lista suspensa exibida, selecione o workspace de destino e clique em Data Analytics.

  2. Na página Data Studio, crie um nó Shell.

  3. Insira o código shell padrão no editor de scripts (a sintaxe interativa não é suportada):

    echo "Hello DataWorks!"
  4. Após concluir o desenvolvimento do código, clique em Debug Configuration no lado direito, selecione o grupo de recursos de depuração desejado e outros parâmetros de execução necessários e, em seguida, clique no botão imageRun para iniciar uma execução de depuração local.

  5. Depois que o script for validado na depuração, clique em Scheduling Settings no lado direito para definir políticas de agendamento de nível de produção, incluindo cronograma, dependências e configurações de parâmetros. Isso permite que o nó seja executado automaticamente de forma periódica conforme planejado.

  6. Ao finalizar a configuração de agendamento da tarefa, clique em Save antes de prosseguir para a próxima etapa.

Implantar e operar o nó

  1. Concluídas as configurações de agendamento, envie e implante o nó Shell no ambiente de produção para fazer a transição do estado de desenvolvimento para o de produção. Para obter o procedimento específico e detalhes sobre o processo de implantação, consulte Implantar um nó.

  2. Após a implantação, a tarefa será executada periodicamente conforme o cronograma definido. Clique no ícone image no canto superior esquerdo e, na página de navegação exibida, escolha All Products > Data Development and O&M > Operation and Maintenance Center para acessar o Operation Center. Em seguida, no painel de navegação à esquerda, acesse Node O&M > Auto Triggered Task O&M > Auto Triggered Task para visualizar as tarefas agendadas implantadas. Para mais informações, consulte Gerenciar tarefas agendadas.

Uso avançado

Referenciar recursos

  1. O DataWorks permite carregar os recursos necessários aos nós Shell por meio do gerenciamento de recursos. Para mais detalhes, consulte Gerenciar recursos.

    Nota

    Os recursos precisam ser implantados antes de serem referenciados pelos nós. Se uma tarefa de produção necessitar de determinado recurso, esse recurso também deverá ser implantado no ambiente de produção.

  2. Abra o nó Shell criado para acessar a página do editor de scripts.

  3. Clique em image no painel de navegação à esquerda para abrir o menu de gerenciamento de recursos e localize o recurso que deseja referenciar. Clique com o botão direito do mouse no recurso e selecione reference resource para incluí-lo no script shell.

    Nota
    • Após a referência do recurso, o sistema insere automaticamente um comentário de declaração no formato ##@resource_reference{resource_name} no início do script.

    • Esse comentário é obrigatório para que o DataWorks identifique as dependências de recursos e monte automaticamente o recurso correspondente no ambiente de execução durante o runtime. Não o modifique ou exclua manualmente.

Usar parâmetros de agendamento

Os parâmetros de agendamento são injetados nos nós Shell como parâmetros posicionais, sem suporte a nomes de variáveis personalizados. O DataWorks transmite os valores configurados em Scheduling Settings > Scheduling Parameters para o script shell como parâmetros posicionais, como $1, $2 e $3, respectivamente. Quando houver mais de 9 parâmetros, utilize a sintaxe com chaves, como ${10} e ${11}, para garantir a análise correta. Separe múltiplos valores de parâmetros com espaços e certifique-se de que a ordem corresponda rigorosamente às referências posicionais no script.

Por exemplo:

  • O parâmetro $1 recebe a hora atual: $[yyyymmdd].

  • O parâmetro $2 recebe um valor fixo: Hello DataWorks.

Nota
  • Se o valor de um parâmetro contiver espaços, coloque-o entre aspas. Todo o conteúdo dentro das aspas será tratado como um único parâmetro.

  • Para obter os parâmetros de saída de um nó upstream, adicione parâmetros em Scheduling Settings > Node Context Parameters > Input Parameters e defina os valores dos parâmetros como os parâmetros de saída do nó upstream.

Usar o ossutil para acessar o OSS

O nó Shell do DataWorks oferece suporte nativo à ferramenta de linha de comando do Alibaba Cloud OSS, ossutil, que possibilita gerenciar buckets, carregar e baixar arquivos, além de realizar operações em lote. Configure as credenciais de acesso por meio de um arquivo de configuração ou parâmetros de linha de comando para utilizar o ossutil no acesso ao OSS.

No novo Data Studio, especificamente para nós Shell, além dos dois métodos anteriores, associe uma função do RAM e use o Alibaba Cloud STS (Security Token Service) para obter dinamicamente credenciais de segurança temporárias para essa função e, então, utilizar o ossutil para acessar o OSS. Esse método permite acessar recursos de nuvem de destino com segurança, sem a necessidade de codificar permanentemente credenciais AccessKey no código. Para mais detalhes, consulte Associar uma função do RAM para executar um nó.

Nota

O ossutil já vem pré-instalado no ambiente do DataWorks, não sendo necessária instalação manual. O caminho padrão é /home/admin/usertools/tools/ossutil64.

Usar datasets para acessar OSS ou NAS

O DataWorks permite criar datasets de OSS ou NAS e, posteriormente, referenciá-los no desenvolvimento de nós Shell para leitura e gravação em armazenamentos OSS ou NAS durante a execução do nó.

Executar um nó usando uma função associada

Associe uma função do RAM para executar um nó, conforme descrito em Associar uma função do RAM para executar um nó. Isso viabiliza a execução de tarefas com uma função RAM específica, garantindo controle granular de permissões e gestão de segurança.

Apêndice: Códigos de saída de script

Use códigos de saída de script para determinar se a execução foi bem-sucedida.

  • Código de saída 0: Indica sucesso.

  • Código de saída -1: Indica que o processo foi encerrado.

  • Código de saída 2: Sinaliza que a plataforma precisa reexecutar a tarefa automaticamente uma vez.

  • Outros códigos de saída: Indicam falha.

Veja abaixo um exemplo de log de execução quando o nó Shell é executado com êxito (código de saída 0).

INFO Exit code of the Shell command 0 INFO --- Invocation of Shell command completed --- INFO Shell run successfully!

Nota

Devido ao mecanismo subjacente do shell, o código de saída de todo o script em um nó Shell corresponde ao código de saída do último comando executado.