Todos os produtos
Search
Central de documentação

DataWorks:Nó EMR Presto

Última atualização: Aug 20, 2026

O Presto (PrestoDB) é um mecanismo de consulta SQL distribuído, flexível e escalável para análise interativa de big data com SQL padrão. O DataWorks fornece o nó EMR Presto para desenvolver e agendar tarefas Presto periodicamente.

Pré-requisitos

  • Crie um cluster Alibaba Cloud EMR e registre-o no DataWorks. Para mais informações, consulte New Data Studio: Attach an EMR compute resource.

  • (Opcional, para usuários RAM) Adicione o usuário do Resource Access Management (RAM) responsável pelo desenvolvimento da tarefa ao workspace e atribua a ele a função Development ou Workspace Administrator (esta função inclui permissões amplas; conceda-a com cautela). Para mais informações, consulte Add workspace members.

    Se você estiver usando uma conta raiz, pule esta etapa.

Limitações

  • Somente clusters de data lake baseados em Hadoop são compatíveis. Clusters DataLake e clusters personalizados não têm suporte.

  • Execute este tipo de tarefa apenas com um Serverless resource group (recomendado) ou um grupo de recursos exclusivo para agendamento.

  • Linhagem de dados: tarefas executadas em nós EMR Presto não geram linhagem de dados.

Procedimento

  1. Na página do editor de nó EMR Presto, siga as etapas de desenvolvimento abaixo.

    Desenvolver o código SQL

    No editor SQL, desenvolva o código da tarefa. Defina variáveis no formato ${variable_name} diretamente no código e atribua valores a elas na seção Scheduling Parameters, na aba Scheduling Settings. Isso permite a passagem dinâmica de parâmetros nas execuções agendadas. Para mais detalhes sobre parâmetros de agendamento, consulte Sources and expressions of scheduling parameters. O código a seguir apresenta um exemplo.

    select '${var}'; -- Can be used with scheduling parameters.
    
    select * from userinfo ;
    Nota
    • Uma instrução SQL não pode exceder 130 KB.

    • Consultas executadas em um nó EMR Presto retornam no máximo 10.000 linhas, e o tamanho total dos dados não pode ultrapassar 10 MB.

    (Opcional) Configurar parâmetros avançados

    No painel à direita, na aba Scheduling Settings, configure os parâmetros descritos na tabela a seguir em EMR Node Parameters > DataWorks parameters.

    Nota

    Você também pode configurar mais propriedades open-source do Presto em EMR Node Parameters > Spark parameter, no painel Scheduling Settings à direita.

    EMR on ECS

    Parâmetro

    Descrição

    DATAWORKS_SESSION_DISABLE

    Este parâmetro se aplica apenas a execuções de teste no ambiente de desenvolvimento. Valores válidos:

    • true: cria uma nova conexão JDBC sempre que uma instrução SQL é executada.

    • false (padrão): reutiliza a mesma conexão JDBC quando diferentes instruções SQL são executadas no mesmo nó.

    Nota

    Se este parâmetro estiver definido como false, o yarn applicationId do Presto não será impresso. Para imprimir o yarn applicationId, defina este parâmetro como true.

    FLOW_SKIP_SQL_ANALYZE

    Controla como as instruções SQL são executadas. Valores válidos:

    • true: executa várias instruções SQL simultaneamente.

    • false (padrão): executa uma instrução SQL por vez.

    Nota

    Este parâmetro se aplica apenas a execuções de teste no ambiente de desenvolvimento.

    priority

    Prioridade do job. Valor padrão: 1.

    queue

    Fila YARN onde os jobs são submetidos. O padrão é a fila default. Para mais informações sobre o EMR YARN, consulte Basic queue configurations.

    Executar a tarefa SQL

    1. Na seção Run Configuration, aba Compute Resource, selecione um Compute Resource e um DataWorks Resource Group.

      Nota
      • Ajuste o valor de CUs for Scheduling conforme os requisitos de recursos da tarefa. O valor padrão é 0.25.

      • Para acessar uma fonte de dados via rede pública ou em uma Virtual Private Cloud (VPC), utilize um grupo de recursos de agendamento aprovado no teste de conectividade de rede para essa fonte de dados. Para mais informações, consulte Network connectivity solutions.

    2. Na caixa de diálogo de parâmetros da barra de ferramentas, selecione a fonte de dados desejada e clique em Run.

  2. Caso precise executar a tarefa do nó periodicamente, configure suas propriedades de agendamento de acordo com seus requisitos de negócio. Para mais informações, consulte Configure scheduling for a node.

  3. Após configurar a tarefa do nó, publique-o. Para mais informações, consulte Publish nodes and workflows.

  4. Depois de publicar a tarefa, visualize o status das execuções periódicas no Operation Center. Para mais informações, consulte Get started with Operation Center.

Perguntas frequentes

  • P: Por que a mensagem "Error executing query" aparece?

    EMR execute task failed!
    SQL: {"name":"dw20251018","type":"PRESTO_SQL","launcher":{"allocationSpec":{}},"properties":{"envs":{"FLOW_SKIP_SQL_ANALYZE":false},"arguments":["select * from default.dim_customers;"],"tags":[],"description":"DataWorks"}
    TASK-MESSAGE:
    FAILED: Error executing query

    R: Verifique se o cluster é um cluster de data lake baseado em Hadoop.

  • P: Por que ocorre um tempo limite de conexão durante a execução do nó?

    R: Certifique-se de que o grupo de recursos e o cluster tenham conectividade de rede entre si. Acesse a lista de recursos de computação e clique em Resource Initialization. Na caixa de diálogo exibida, clique em Re-initialize. Confirme se a inicialização foi concluída com sucesso.