Todos os produtos
Search
Central de documentação

DataWorks:Nó do Serverless Spark SQL

Última atualização: Sep 25, 2026

Crie um nó do Serverless Spark SQL para processar dados estruturados com um mecanismo de consulta SQL distribuído baseado em um recurso de computação do EMR Serverless Spark. Essa abordagem melhora a eficiência da execução de jobs.

Observações de uso

  • Limitações de recursos de computação: há suporte apenas para bound EMR Serverless Spark compute resources. Certifique-se de que o grupo de recursos e o recurso de computação possam se comunicar pela rede.

  • Restrições de grupos de recursos: apenas Serverless resource groups podem executar esse tipo de tarefa.

  • (Opcional, para usuários do 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 (essa função inclui permissões amplas e deve ser concedida com cautela). Para mais informações, consulte Add workspace members.

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

Crie um nó

Para obter instruções, consulte Crie um nó.

Desenvolver o nó

Desenvolva o código da sua tarefa no editor SQL. A sintaxe aceita catalog.database.tablename. Se você omitir catalog, o Data Catalog padrão do cluster será usado. Se você omitir catalog.database, o banco de dados padrão no Data Catalog padrão do cluster será usado.

Para mais informações sobre o Data Catalog, consulte Gerencie um Data Catalog no EMR Serverless Spark .

-- Substitua <catalog.database.tablename> pelos seus identificadores reais. SELECT * FROM <catalog.database.tablename>

Defina variáveis no seu código usando o formato ${variable_name}. Em seguida, atribua valores a essas variáveis na seção Scheduling Parameters do painel Scheduling Settings. Isso permite a passagem dinâmica de parâmetros em cenários agendados. Para mais informações sobre parâmetros de agendamento, consulte Sources and expressions of scheduling parameters. O código a seguir fornece um exemplo.

SHOW TABLES; -- Use ${var} para definir uma variável chamada var. Se você atribuir o valor ${yyyymmdd} a essa variável, poderá usar uma tarefa agendada para criar uma tabela com a data do negócio como sufixo. CREATE TABLE IF NOT EXISTS userinfo_new_${var} ( ip STRING COMMENT'IP address', uid STRING COMMENT'User ID' )PARTITIONED BY( dt STRING ); --Isso pode ser usado com parâmetros de agendamento.

Nota

Uma instrução SQL não pode exceder 130 KB.

Depurar o nó

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

    Parâmetro

    Descrição

    Compute Resource

    Selecione um recurso de computação do EMR Serverless Spark vinculado. Se nenhum recurso de computação estiver disponível, selecione Create Compute Resource na lista suspensa.

    Resource Group

    Selecione um grupo de recursos associado ao workspace.

    Script Parameters

    Ao configurar o conteúdo do nó, defina variáveis usando o formato ${parameter_name}. Em seguida, configure o Parameter name e o Parameter Value na seção Script Parameters. O sistema substitui essas variáveis dinamicamente pelos valores reais durante a execução. Para mais informações, consulte Sources and expressions of scheduling parameters.

    ServerlessSpark Node Parameters

    Parâmetros de tempo de execução do Spark. Há suporte para os seguintes tipos:

  2. Na barra de ferramentas na parte superior do editor de nós, clique em Run para executar a tarefa SQL.

    Importante

    Antes da implantação, sincronize os Serverlessspark Node Parameters da Run Configuration para os Serverlessspark Node Parameters em Scheduling Settings.

Modos de execução SQL

O DataWorks fornece dois modos de execução SQL: execução dentro do nó e execução a partir do painel de fluxo de trabalho. Esses dois modos possuem contextos de execução diferentes e podem produzir resultados distintos.

  • Executar dentro do nó: selecione todas as instruções SQL no editor SQL e clique em Execute. Apenas as instruções SQL selecionadas são executadas. Este modo usa o recurso de computação e os parâmetros configurados para o nó e não aciona relações de dependência com nós upstream ou downstream.

  • Executar a partir do painel de fluxo de trabalho: clique com o botão direito no nó atual no painel de fluxo de trabalho e execute o nó atual e seus nós downstream. O nó atual e todos os seus nós downstream são executados sequencialmente com base nas dependências de agendamento. Este modo usa o recurso de computação e os parâmetros especificados nas configurações de agendamento, que podem diferir do ambiente de execução de dentro do nó.

As causas comuns para diferenças entre os dois modos incluem valores de parâmetros de agendamento diferentes, configurações de recursos de computação inconsistentes e a saída de nós upstream afetando o contexto de execução do nó atual. Para solucionar problemas, compare os parâmetros de agendamento e as configurações de recursos de computação usados pelos dois modos.

Próximas etapas

  • Configure o agendamento do nó: se você precisar executar um nó periodicamente, configure sua Scheduling Policy no painel Scheduling Settings à direita.

  • Publish a node: para executar uma tarefa no ambiente de produção, clique no ícone image para publicar o nó. Um nó é executado conforme o agendamento somente após ser publicado no ambiente de produção.

  • O&M de tarefas: após a publicação de uma tarefa, monitore suas execuções periódicas no Operation Center. Para mais informações, consulte Get started with Operation Center.

Apêndice: parâmetros do DataWorks

Parâmetro avançado

Descrição

FLOW_SKIP_SQL_ANALYZE

O modo de execução de instruções SQL. Valores válidos:

  • true: várias instruções SQL são executadas por vez.

  • false (padrão): uma única instrução SQL é executada por vez.

Nota

Há suporte para esse parâmetro apenas para execuções de teste no ambiente de desenvolvimento de dados.

DATAWORKS_SESSION_DISABLE

O método de envio de tarefas. Durante o desenvolvimento de dados, as tarefas são enviadas para o SQL Compute para execução por padrão. Você pode usar esse parâmetro para especificar se a tarefa é executada por meio do SQL Compute ou enviada para uma fila para execução.

  • true: a tarefa é enviada para uma fila para execução. Por padrão, a fila padrão especificada quando o recurso de computação foi associado é usada. Quando DATAWORKS_SESSION_DISABLE é definido como true, você pode configurar o parâmetro SERVERLESS_QUEUE_NAME para especificar a fila para a qual as tarefas são enviadas durante o desenvolvimento de dados.

  • false (padrão): a tarefa é enviada para o SQL Compute para execução.

    Nota

    Esse parâmetro entra em vigor apenas durante a execução do desenvolvimento de dados, e não durante execuções agendadas.

SERVERLESS_RELEASE_VERSION

A versão do mecanismo Spark. Por padrão, a Default Engine Version configurada nas configurações do cluster em Compute Resource no Management Center é usada. Para definir uma versão de mecanismo diferente para uma tarefa específica, configure este parâmetro.

Nota

O parâmetro SERVERLESS_RELEASE_VERSION nas configurações avançadas entra em vigor apenas quando o SQL Compute (sessão) especificado para o cluster registrado está em estado parado no console do EMR Serverless Spark.

SERVERLESS_QUEUE_NAME

A fila de recursos para a qual as tarefas são enviadas. Quando uma tarefa é configurada para ser enviada para uma fila para execução, a Default Resource Queue configurada nas configurações do cluster em Clusters no Management Center é usada por padrão. Se você tiver requisitos de isolamento e gerenciamento de recursos, poderá adicionar filas. Para mais informações, consulte Gerencie filas de recursos.

Métodos de configuração:

  • Especifique a fila de recursos para envio de tarefas configurando os parâmetros do nó.

  • Especifique a fila de recursos para envio de tarefas configurando global Spark parameters.

Nota
  • O parâmetro SERVERLESS_QUEUE_NAME nas configurações avançadas entra em vigor apenas quando o SQL Compute (sessão) especificado para o cluster registrado está em estado parado no console do EMR Serverless Spark.

  • Durante a execução do desenvolvimento de dados: você deve primeiro definir DATAWORKS_SESSION_DISABLE como true para que as tarefas sejam enviadas para uma fila para execução. Somente então o parâmetro SERVERLESS_QUEUE_NAME entra em vigor para especificar a fila de tarefas.

  • Durante a execução agendada do Operation Center: as tarefas são enviadas obrigatoriamente para uma fila para execução e não podem ser enviadas para o SQL Compute.

SERVERLESS_SQL_COMPUTE

O SQL Compute (sessão SQL) a ser usado. Por padrão, o Default SQL Compute configurado nas configurações do cluster em Compute Resource no Management Center é usado. Para definir uma sessão SQL diferente para uma tarefa específica, configure este parâmetro. Para obter informações sobre como criar e gerenciar sessões SQL, consulte Gerencie sessões do SQL Compute.

Outros

Parâmetros personalizados de Spark Configuration. Adicione parâmetros de propriedade específicos do Spark.

Formato de configuração: "spark.eventLog.enabled": false. O DataWorks anexa automaticamente os parâmetros ao código enviado para o cluster EMR no formato: --conf key=value.

Nota

O DataWorks permite que você configure parâmetros globais do Spark no nível do workspace para cada módulo do DataWorks. Você pode especificar se a prioridade dos parâmetros globais do Spark é maior do que a dos parâmetros do Spark configurados em um módulo específico. Para mais informações sobre como configurar parâmetros globais do Spark, consulte Configure parâmetros globais do Spark.