O Spark SQL é um mecanismo de consulta distribuído que processa dados estruturados com eficiência. No DataWorks, o nó CDH Spark SQL permite desenvolver, agendar e integrar tarefas CDH Spark SQL a outros jobs. Este tópico descreve como configurar e utilizar um nó CDH Spark SQL.
Pré-requisitos
-
Um cluster CDH da Alibaba Cloud foi criado e associado a um workspace do DataWorks. Para mais informações, consulte Associate a CDH compute engine.
ImportanteO componente Spark deve estar instalado no cluster CDH, e as informações relacionadas ao Spark precisam ter sido configuradas durante a vinculação do cluster.
-
(Opcional, para usuários RAM) O usuário RAM responsável pelo desenvolvimento da tarefa foi adicionado ao workspace correspondente e recebeu a função Development ou Workspace Administrator. A função Workspace Administrator possui permissões amplas; portanto, conceda-a com cautela. Para mais detalhes sobre como adicionar membros, consulte Add members to a workspace.
NotaCaso você utilize uma conta Alibaba Cloud, ignore esta etapa.
Uma source de dados Hive foi configurada no DataWorks e o teste de conectividade foi concluído com sucesso. Para mais informações, consulte Gerencie data sources.
Crie um nó
Para obter instruções, consulte Crie a node.
Desenvolver o nó
Escreva o código da tarefa no editor SQL. É possível definir variáveis no código usando o formato ${variable_name} e atribuir valores a essas variáveis na seção Scheduling Parameters do painel Scheduling Settings. Isso permite passar parâmetros dinamicamente para o código durante execuções agendadas. Para mais informações sobre parâmetros de agendamento, consulte Sources and expressions of scheduling parameters. O código abaixo fornece um exemplo:
CREATE TABLE IF NOT EXISTS test_spark.test_lineage_table_f1 (`id` BIGINT, `name` STRING)
PARTITIONED BY (`ds` STRING);
CREATE TABLE IF NOT EXISTS test_spark.test_lineage_table_t2 AS SELECT * FROM test_spark.test_lineage_table_f1;
INSERT INTO test_spark.test_lineage_table_t2 SELECT id,${var} FROM test_spark.test_lineage_table_f1;
Este exemplo cria as tabelas
test_lineage_table_f1etest_lineage_table_t2no banco de dadostest_sparke copia dados da tabelatest_lineage_table_f1para a tabelatest_lineage_table_t2. O exemplo serve apenas como referência. Para uso real, substitua o ambiente de banco de dados pelo seu próprio.O parâmetro
${var}está definido como o camponame.
Depurar o nó
-
Na seção Compute Resource da Run Configuration, configure o Compute Resource e o Resource Group.
Em Compute Resource, selecione o nome do cluster CDH registrado no DataWorks.
Em Resource group, selecione um grupo de recursos de agendamento que tenha aprovado o teste de conectividade com a source de dados. Para mais informações, consulte Network Connectivity Solution.
Na barra de ferramentas na parte superior do editor de nós, clique em Run.
Próximas etapas
Configure node scheduling: Caso seja necessário 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 em o ícone
para publicar o nó. Um nó só executa conforme o agendamento após ser publicado no ambiente de produção.O&M de tarefas: Após a publicação da tarefa, monitore suas execuções periódicas no Operation Center. Para mais informações, consulte Get started with Operation Center.