Os nós EMR Presto permitem escrever consultas Presto SQL em um cluster Alibaba Cloud E-MapReduce (EMR) e executá-las recorrentemente no DataWorks.
Limitações
|
Restrição |
Detalhes |
|
Tipo de cluster |
Apenas clusters legados de data lake Hadoop. Não há suporte para clusters DataLake e Custom. |
|
Grupo de recursos |
Grupo de recursos serverless ou grupo de recursos exclusivo para agendamento. Sempre que possível, use um grupo de recursos serverless. |
|
Tamanho da instrução SQL |
Cada instrução SQL não pode exceder 130 KB. |
|
Resultados da consulta |
Uma única consulta retorna no máximo 10.000 registros e 10 MB de dados. |
|
Linhagem de dados |
Sem suporte para nós EMR Presto. |
Pré-requisitos
Antes de começar, verifique se você tem:
Um cluster EMR criado e registrado no DataWorks. Consulte DataStudio (versão antiga): Associar um recurso de computação EMR
(Se estiver usando um usuário RAM) O usuário RAM adicionado ao workspace com a função Develop ou Workspace Administrator. A função Workspace Administrator concede mais permissões do que o necessário para esta tarefa — atribua-a com cautela. Consulte Adicionar membros ao workspace e atribuir funções
Um grupo de recursos serverless adquirido e configurado com associação de workspace e definições de rede. Consulte Criar e usar um grupo de recursos serverless
Um workflow criado no DataStudio. Consulte Criar um workflow
Etapa 1: Criar um nó EMR Presto
Acesse a página do DataStudio. Faça login no console do DataWorks. Na barra de navegação superior, selecione a região. No painel de navegação à esquerda, escolha Data Development and O&M > Data Development. Selecione seu workspace na lista suspensa e clique em Go to Data Development.
-
No diretório de workflows, clique com o botão direito no workflow desejado e escolha Create Node > EMR > EMR Presto.
Alternativamente, passe o mouse sobre Create e selecione Create Node > EMR > EMR Presto .
-
Na caixa de diálogo Create Node, configure os campos a seguir e clique em Confirm. A aba de configuração do nó EMR Presto será aberta.
Campo
Descrição
Name
Nome do nó. Caracteres permitidos: letras maiúsculas, letras minúsculas, caracteres chineses, dígitos, sublinhados (
_) e pontos (.).Engine Instance
Recurso de computação EMR a associar a este nó.
Node Type
Tipo de nó de computação a usar.
Path
Localização na estrutura de diretórios do workflow.
Etapa 2: Desenvolver uma tarefa EMR Presto
Clique duas vezes no nó criado. A página de desenvolvimento de tarefas será aberta para escrita de SQL, configuração de parâmetros avançados e execução da tarefa.
Desenvolver código SQL
Escreva o código Presto SQL no editor SQL. Use a sintaxe ${variable_name} para definir variáveis no código. Atribua valores a essas variáveis em Scheduling Configuration > Scheduling Parameters no painel lateral direito, no formato key=value. Isso permite passar valores dinâmicos no momento do agendamento sem modificar o código.
Exemplo:
select '${var}'; -- ${var} is resolved at run time from Scheduling Parameters
select * from userinfo;
Para atribuir um valor a var: abra Scheduling Configuration > Scheduling Parameters e adicione uma entrada como var=2024-01-01. Para formatos de parâmetros suportados, consulte Formatos suportados de parâmetros de agendamento.
Se o seu workspace tiver vários recursos de computação EMR anexados, selecione aquele que deseja usar para este nó. Se houver apenas um anexado, nenhuma seleção é necessária.
Para testar a resolução de parâmetros antes do agendamento, clique em Run With Parameters na barra de ferramentas superior. Para detalhes sobre como os valores dos parâmetros diferem entre Run, Run with Parameters e testes de fumaça, consulte Diferenças na lógica de atribuição de parâmetros.
Configurar parâmetros avançados (opcional)
Cluster Hadoop: EMR on ECS
Na seção Advanced Settings, defina os seguintes parâmetros para controlar o comportamento de execução do SQL e o roteamento de envio de jobs. Para mais informações sobre como configurar os parâmetros, consulte Configuração do Spark. Estas configurações aplicam-se a clusters Hadoop (EMR on ECS).
|
Parâmetro |
Valores |
Padrão |
Descrição |
|
|
|
|
Controla como as instruções SQL são executadas. |
|
|
|
|
Controla o roteamento de envio de jobs. |
Executar a tarefa SQL
-
Na barra de ferramentas, clique no ícone
. Na caixa de diálogo Parameters, selecione o grupo de recursos de agendamento e clique em Run.O grupo de recursos deve ter aprovado em um teste de conectividade com o cluster EMR. Para acessar recursos de computação pela internet pública ou dentro de uma VPC, verifique a conectividade primeiro. Consulte Soluções de conectividade de rede .
Clique no ícone
para salvar seu SQL.(Opcional) Execute testes de fumaça. É possível acionar testes de fumaça no ambiente de desenvolvimento ao enviar o nó ou após o envio. Consulte Realizar testes de fumaça.
Etapa 3: Configurar propriedades de agendamento
Para executar a tarefa recorrentemente, clique em Properties no painel de navegação à direita e configure as definições de agendamento.
Configure os parâmetros Rerun e Parent Nodes antes de confirmar a tarefa.
Para obter uma referência completa sobre as opções de agendamento, consulte Visão geral.
Etapa 4: Implantar a tarefa
Clique no ícone
para salvar a tarefa.-
Clique no ícone
para confirmar a tarefa. Na caixa de diálogo Submit, insira uma Change description. Se a revisão de código estiver ativada no seu workspace, a tarefa só poderá ser implantada depois que o código confirmado for aprovado na revisão. Consulte Revisão de código.Configure os parâmetros Rerun e Parent Nodes na aba Properties antes de confirmar.
(Apenas workspaces no modo padrão) Implante a tarefa no ambiente de produção. Clique em Deploy no canto superior direito da aba de configuração do nó. Consulte Implantar nós.
Próximos passos
Após a confirmação e implantação da tarefa, ela é executada automaticamente com base na sua configuração de agendamento. Para monitorar o status do agendamento, clique em Operation Center no canto superior direito da aba de configuração do nó. Consulte Visualizar e gerenciar tarefas acionadas automaticamente.
Perguntas frequentes
Por que o erro "Error executing query" aparece?

Este erro ocorre quando o tipo de cluster não é suportado. Os nós EMR Presto funcionam apenas com clusters legados de data lake Hadoop — não há suporte para clusters DataLake e Custom.
Para resolver:
No DataStudio, acesse a lista de recursos de computação.
Verifique se o cluster registrado no seu workspace é um cluster legado de data lake Hadoop.
Por que ocorre um tempo limite de conexão quando o nó é executado?
Isso indica um problema de conectividade de rede entre o grupo de recursos e o cluster EMR.
Para resolver:
No DataStudio, acesse a página da lista de recursos de computação.
-
Localize o recurso e clique em Re-initialize.


Confirme se a inicialização foi concluída com sucesso e tente executar a tarefa novamente.
Se o problema persistir, verifique se o grupo de recursos aprovou em um teste de conectividade com o cluster EMR. Consulte Soluções de conectividade de rede.