全部产品
Search
文档中心

AnalyticDB:Gunakan Azkaban untuk menjadwalkan pekerjaan Spark

更新时间:Jul 02, 2025

Azkaban adalah penjadwal alur kerja batch yang memungkinkan Anda membuat, mengeksekusi, dan mengelola alur kerja dengan dependensi kompleks. Anda dapat menjadwalkan pekerjaan Spark AnalyticDB for MySQL melalui antarmuka web Azkaban.

Prasyarat

Jadwalkan Pekerjaan SQL Spark

AnalyticDB for MySQL mendukung eksekusi Spark SQL dalam mode batch atau interaktif. Prosedur penjadwalan berbeda tergantung pada mode eksekusi.

Mode Batch

  1. Instal alat baris perintah spark-submit dan tentukan parameter yang relevan.

    Catatan

    Anda hanya perlu menentukan parameter berikut: keyId, secretId, regionId, clusterId, dan rgName.

  2. Tulis file alur kerja dan kompres folder alur kerja dalam format 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
    Penting
    • Ganti parameter <your path> dengan jalur instalasi sebenarnya dari alat spark-submit.

    • Jangan gunakan backslash (\) dalam perintah.

  3. Buat proyek dan unggah file alur kerja yang dibuat di Langkah 2.

    1. Akses antarmuka web Azkaban. Di bilah navigasi atas, klik Projects.

    2. Di pojok kanan atas halaman, klik Create Project.

    3. Dalam kotak dialog Create Project, konfigurasikan parameter Name dan Description, lalu klik Create Project.

    4. Di pojok kanan atas halaman, klik Upload.

    5. Dalam kotak dialog Upload Project Flies, pilih file alur kerja dan klik Upload.

  4. Jalankan alur kerja.

    1. Di halaman Projects, klik tab Flows.

    2. Klik Execute Flow.

    3. Klik Execute.

    4. Dalam pesan Flow submitted, klik Continue.

  5. Lihat detail tentang alur kerja.

    1. Di bilah navigasi atas, klik Executing.

    2. Klik tab Recently Finished.

    3. Klik execution ID dari alur kerja. Klik tab Job List untuk melihat detail setiap pekerjaan.

    4. Klik Logs untuk melihat log pekerjaan.

Mode Interaktif

  1. Peroleh URL koneksi grup sumber daya interaktif Spark.

    1. Masuk ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih wilayah. Di panel navigasi sisi kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster.

    2. Di panel navigasi sisi kiri, pilih Cluster Management > Resource Management. Di halaman yang muncul, klik tab Resource Groups.

    3. Temukan grup sumber daya interaktif Spark yang Anda buat dan klik Details di kolom Actions untuk melihat URL koneksi internal atau publik dari grup sumber daya. Anda bisa mengklik ikon image di dalam tanda kurung di sebelah nomor port yang sesuai untuk menyalin URL koneksi.

      Anda harus mengklik Apply for Endpoint di sebelah Public Endpoint untuk secara manual mengajukan endpoint publik dalam skenario berikut:

      • Alat klien yang digunakan untuk mengirim pekerjaan Spark SQL diterapkan di server lokal atau eksternal.

      • Alat klien yang digunakan untuk mengirim pekerjaan Spark SQL diterapkan di instance Elastic Compute Service (ECS) yang berada di virtual private cloud (VPC) yang berbeda dari kluster AnalyticDB for MySQL Anda.

  2. Tulis file alur kerja dan kompres folder alur kerja dalam format 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;"

    Tabel berikut menjelaskan parameter.

    Parameter

    Deskripsi

    path

    Jalur klien Beeline. Contoh: /path/to/spark/bin/beeline.

    -u

    Titik akhir yang diperoleh di Langkah 1. Ganti default di titik akhir dengan nama database sebenarnya dan hapus akhiran resource_group=<resource group name> dari titik akhir.

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

    -n

    Nama akun database dan grup sumber daya di kluster AnalyticDB for MySQL. Format: resource_group_name/database_account_name.

    Contoh: spark_interactive_prod/spark_user.

    -p

    Kata sandi akun database dari kluster AnalyticDB for MySQL.

    -e

    Pernyataan SQL. Pisahkan beberapa pernyataan SQL dengan titik koma (;).

  3. Buat proyek dan unggah file alur kerja yang dibuat di Langkah 2.

    1. Akses antarmuka web Azkaban. Di bilah navigasi atas, klik Projects.

    2. Di pojok kanan atas halaman, klik Create Project.

    3. Dalam kotak dialog Create Project, konfigurasikan parameter Name dan Description, lalu klik Create Project.

    4. Di pojok kanan atas halaman, klik Upload.

    5. Dalam kotak dialog Upload Project Flies, pilih file alur kerja dan klik Upload.

  4. Jalankan alur kerja.

    1. Di halaman Projects, klik tab Flows.

    2. Klik Execute Flow.

    3. Klik Execute.

    4. Dalam pesan Flow submitted, klik Continue.

  5. Lihat detail tentang alur kerja.

    1. Di bilah navigasi atas, klik Executing.

    2. Klik tab Recently Finished.

    3. Klik execution ID dari alur kerja. Klik tab Job List untuk melihat detail setiap pekerjaan.

    4. Klik Logs untuk melihat log pekerjaan.

Jadwalkan Pekerjaan JAR Spark

  1. Instal alat baris perintah spark-submit dan tentukan parameter yang relevan.

    Catatan

    Anda hanya perlu menentukan parameter berikut: keyId, secretId, regionId, clusterId, dan rgName. Jika paket Spark JAR Anda disimpan di perangkat lokal, Anda harus menentukan parameter Object Storage Service (OSS) seperti ossUploadPath.

  2. Tulis file alur kerja dan kompres folder alur kerja dalam format 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
    Penting
    • Ganti parameter <your path> dengan jalur instalasi sebenarnya dari alat spark-submit.

    • Jangan gunakan backslash (\) dalam perintah.

  3. Buat proyek dan unggah file alur kerja yang dibuat di Langkah 2.

    1. Akses antarmuka web Azkaban. Di bilah navigasi atas, klik Projects.

    2. Di pojok kanan atas halaman, klik Create Project.

    3. Dalam kotak dialog Create Project, konfigurasikan parameter Name dan Description, lalu klik Create Project.

    4. Di pojok kanan atas halaman, klik Upload.

    5. Dalam kotak dialog Upload Project Flies, pilih file alur kerja dan klik Upload.

  4. Jalankan alur kerja.

    1. Di halaman Projects, klik tab Flows.

    2. Klik Execute Flow.

    3. Klik Execute.

    4. Dalam pesan Flow submitted, klik Continue.

  5. Lihat detail tentang alur kerja.

    1. Di bilah navigasi atas, klik Executing.

    2. Klik tab Recently Finished.

    3. Klik execution ID dari alur kerja. Klik tab Job List untuk melihat detail setiap pekerjaan.

    4. Klik Logs untuk melihat log pekerjaan.