Todos os produtos
Search
Central de documentação

AnalyticDB:Agendar jobs do Spark com o Azkaban

Última atualização: Aug 21, 2026

O Azkaban é um agendador de workflows em lote para criar, executar e gerenciar workflows com dependências complexas. Use a interface web do Azkaban para agendar jobs do Spark no AnalyticDB for MySQL.

Pré-requisitos

Agendar jobs do Spark SQL

Use o Spark-Submit para enviar jobs do Spark SQL e jobs do Spark ao AnalyticDB for MySQL.

Batch

  1. Instale a ferramenta de linha de comando Spark-Submit e configure os parâmetros relacionados.

  2. Crie um arquivo de workflow e compacte a pasta pai em um arquivo ZIP.

    nodes:
      - name: SparkPi
        type: command
        config:
          command: /<your path>/adb-spark-toolkit-submit/bin/spark-submit 
                    --class com.aliyun.adb.spark.sql.OfflineSqlTemplate 
                    local:///opt/spark/jars/offline-sql.jar 
                    "show databases" 
                    "select 100"
        dependsOn:
          - jobA
          - jobB
    
      - name: jobA
        type: command
        config:
          command: echo "This is an echoed text."
    
      - name: jobB
        type: command
        config:
          command: pwd
    Importante
    • Substitua <your path> pelo caminho de instalação real da ferramenta de linha de comando Spark-Submit.

    • Não use caractere de continuação de linha (\) no comando do nó de comando.

  3. Crie um projeto e envie o arquivo ZIP da etapa 2.

    1. Abra a interface web do Azkaban. Na barra de navegação superior, clique em Project.

    2. No canto superior direito da página, clique em Create Project.

    3. Na caixa de diálogo Create Project, defina os parâmetros Name e Description.

    4. No canto superior direito da página, clique em Upload.

    5. Na caixa de diálogo Upload Project Files, envie o arquivo ZIP e clique em Upload.

  4. Execute o workflow.

    1. Na página Project, clique na aba Flows.

    2. Clique em Execute Flow.

    3. Clique em Execute.

    4. Na caixa de diálogo Flow submitted, clique em Continue.

  5. Visualize os detalhes do workflow.

    1. Na barra de navegação superior, clique em Executing.

    2. Clique na aba Recently Finished.

    3. Clique em um Execution ID e, em seguida, na aba Job List para visualizar os detalhes de execução de cada job.

    4. Clique em Logs para visualizar os logs do job.

Interactive

  1. Obtenha a URL de conexão do grupo de recursos interativos do Spark.

    1. Faça login no console do AnalyticDB for MySQL. No canto superior esquerdo do console, selecione uma região. No painel de navegação à esquerda, clique em Clusters. Localize o cluster desejado e clique no respectivo ID.

    2. No painel de navegação à esquerda, escolha Cluster Management > Resource Management. Na página exibida, clique na aba Resource Groups.

    3. Localize o grupo de recursos interativos do Spark criado e clique em Details na coluna Actions para visualizar a URL de conexão interna ou pública do grupo de recursos. Clique no ícone image entre parênteses, ao lado do número da porta correspondente, para copiar a URL de conexão.

      Clique em Apply for Endpoint ao lado de Public Endpoint para solicitar manualmente um endpoint público nos seguintes cenários:

      • A ferramenta cliente usada para enviar um job do Spark SQL está implantada on-premises.

      • A ferramenta cliente usada para enviar um job do Spark SQL está implantada em uma instância do Elastic Compute Service (ECS) residente em uma Virtual Private Cloud (VPC) diferente da VPC do seu cluster do AnalyticDB for MySQL.

  2. Crie um arquivo de workflow e compacte a pasta pai em um arquivo ZIP.

    nodes:
      - name: jobB
        type: command
        config:
          command: <path> -u "jdbc:hive2://amv-t4n83e67n7b****sparkwho.ads.aliyuncs.com:10000/adb_demo" -n spark_interactive_prod/spark_user -p "spark_password" -e "show databases;show tables;"
    
        dependsOn:
          - jobA
    
      - name: jobA
        type: command
        config:
          command: <path> -u "jdbc:hive2://amv-t4n83e67n7b****sparkwho.ads.aliyuncs.com:10000/adb_demo" -n spark_interactive_prod/spark_user -p "spark_password" -e "show tables;"

    Parâmetros:

    Parameter

    Description

    path

    Caminho para o cliente Beeline. Exemplo: /path/to/spark/bin/beeline.

    -u

    Insira o endereço de conexão obtido na Etapa 1. Substitua default no endereço de conexão pelo nome real do banco de dados e remova resource_group=<resource group name> do endereço.

    Exemplo: jdbc:hive2://amv-t4naxpqk****sparkwho.ads.aliyuncs.com:10000/adb_demo.

    -n

    Conta do banco de dados do AnalyticDB for MySQL e nome do grupo de recursos, no formato resource_group_name/database_account_name.

    Por exemplo, se o nome do grupo de recursos for spark_interactive_prod e o nome da conta do banco de dados for spark_user, insira spark_interactive_prod/spark_user.

    -p

    Senha da conta do banco de dados do AnalyticDB for MySQL.

    -e

    Instruções SQL a serem executadas. Use ponto e vírgula (;) para separar várias instruções.

  3. Crie um projeto e envie o arquivo ZIP da etapa anterior.

    1. Abra a interface web do Azkaban. Na barra de navegação superior, clique em Project.

    2. No canto superior direito da página, clique em Create Project.

    3. Na caixa de diálogo Create Project, defina os parâmetros Name e Description.

    4. No canto superior direito da página, clique em Upload.

    5. Na caixa de diálogo Upload Project Files, envie o arquivo ZIP e clique em Upload.

  4. Execute o workflow.

    1. Na página Project, clique na aba Flows.

    2. Clique em Execute Flow.

    3. Clique em Execute.

    4. Na caixa de diálogo Flow submitted, clique em Continue.

  5. Visualize os detalhes do workflow.

    1. Na barra de navegação superior, clique em Executing.

    2. Clique na aba Recently Finished.

    3. Clique em um Execution ID e, em seguida, na aba Job List para visualizar os detalhes de execução de cada job.

    4. Clique em Logs para visualizar os logs do job.

  6. Agendar jobs JAR do Spark

    1. Instale a ferramenta de linha de comando Spark-Submit e configure os parâmetros.

      Nota

      Configure apenas os seguintes parâmetros obrigatórios: keyId, secretId, regionId, clusterId e rgName. Se o pacote JAR do Spark estiver armazenado na máquina local, configure também os parâmetros do Object Storage Service (OSS), como ossUploadPath.

    2. Crie um arquivo de workflow e compacte a pasta pai em um arquivo ZIP.

      nodes:
        - name: SparkPi
          type: command
          config:
            command: /<your path>/adb-spark-toolkit-submit/bin/spark-submit 
                      --class org.apache.spark.examples.SparkPi 
                      --name SparkPi 
                      --conf spark.driver.resourceSpec=medium 
                      --conf spark.executor.instances=2 
                      --conf spark.executor.resourceSpec=medium 
                      local:///tmp/spark-examples.jar 1000
          dependsOn:
            - jobA
            - jobB
      
        - name: jobA
          type: command
          config:
            command: echo "This is an echoed text."
      
        - name: jobB
          type: command
          config:
            command: pwd
      Importante
      • Substitua <your path> pelo caminho de instalação real da ferramenta de linha de comando Spark-Submit.

      • Não use caractere de continuação de linha (\) no comando do nó de comando.

    3. Crie um projeto e envie o arquivo ZIP da etapa 2.

      1. Abra a interface web do Azkaban. Na barra de navegação superior, clique em Project.

      2. No canto superior direito da página, clique em Create Project.

      3. Na caixa de diálogo Create Project, defina os parâmetros Name e Description.

      4. No canto superior direito da página, clique em Upload.

      5. Na caixa de diálogo Upload Project Files, envie o arquivo ZIP e clique em Upload.

    4. Execute o workflow.

      1. Na página Project, clique na aba Flows.

      2. Clique em Execute Flow.

      3. Clique em Execute.

      4. Na caixa de diálogo Flow submitted, clique em Continue.

    5. Visualize os detalhes do workflow.

      1. Na barra de navegação superior, clique em Executing.

      2. Clique na aba Recently Finished.

      3. Clique em um Execution ID e, em seguida, na aba Job List para visualizar os detalhes de execução de cada job.

      4. Clique em Logs para visualizar os logs do job.