AnalyticDB for MySQL oferece suporte à execução de Spark SQL em dois modos: lote e interativo. Ambos os modos se conectam diretamente ao service de metadados do AnalyticDB for MySQL, o que permite ler e gravar dados em bancos de dados e tabelas do AnalyticDB for MySQL. Este tópico descreve as notas de uso, casos de uso, recursos e procedimentos de inicialização de ambos os modos de execução.
Execução em lote
Notas de uso
Ao executar SQL no modo de lote, inicie com a instrução
USE <database_name>;para selecione um banco de dados.Ao especifique uma tabela em uma instrução SQL, use o formato
database_name.table_name.Na execução de instruções DML, DDL ou DQL no modo de lote, o sistema retorna apenas o status de sucesso ou falha, sem incluir os dados. Uma execução bem-sucedida imprime uma amostra dos resultados no log. Para visualize os dados retornados por uma instrução SQL, consulte View Spark application information.
Casos de uso
execute múltiplas instruções SQL interdependentes.
Aplicar isolamento rigoroso de recursos para instruções SQL.
Processar dados em grande escala, como execute um job ETL único com SQL.
Fazer upload e iterar em pacotes complexos de dependências de terceiros.
Recursos
O SQL enviado no modo de lote é executado em uma aplicação Spark dedicada, o que garante estabilidade.
Permite configurações independentes defina dentro de uma instrução SQL, como
SET spark.sql.adaptive.coalescePartitions.minPartitionSize = 2MB;.Se uma instrução SQL em lote contiver uma instrução SELECT, o sistema imprime uma amostra dos resultados no log.
Método de inicialização
No SQL Console, selecione um grupo de recursos de job e o mecanismo Spark, insira sua instrução SQL e clique em Run Now.
Execução interativa
Notas de uso
No modo interativo, as instruções DML retornam no máximo 1.000 linhas.
Instruções DDL executadas no modo interativo, como
CREATE TABLE, retornam apenas o status de sucesso ou falha, e não os dados da tabela. Esse comportamento segue as convenções de código aberto.Um grupo de recursos interativos do Spark leva algum tempo para iniciar. Se a inicialização falhar, aguarde alguns instantes e tente novamente.
Casos de uso
execute consultas ad hoc que não exigem o conjunto completo de resultados.
execute um grande volume de instruções DDL.
execute imediatamente instruções DQL em ambientes onde o isolamento de recursos e falhas ocasionais são aceitáveis.
Recursos
O isolamento de recursos ocorre no nível de thread. Vários usuários que executam SQL na mesma aplicação Spark podem interferir uns nos outros.
É possível aplicar configurações no nível de thread por meio de instruções SQL.
As configurações no nível da aplicação só entram em vigor após a reinicialização do grupo de recursos interativos do Spark. Para modifique as configurações no nível da aplicação, primeiro stop the Spark interactive resource group, configure os parâmetros e depois restart the Spark interactive resource group.
Método de inicialização
No SQL Console, selecione um grupo de recursos interativos do Spark e o mecanismo Spark, insira sua instrução SQL e clique em Run Now.