DolphinScheduler adalah platform orkestrasi alur kerja open source yang terdistribusi dan dapat diperluas dengan antarmuka visual Directed Acyclic Graph (DAG) yang kuat. DolphinScheduler membantu Anda menjalankan dan mengelola alur kerja untuk sejumlah besar data secara efisien. Topik ini menjelaskan cara membuat, mengedit, dan menjadwalkan pekerjaan Spark di web UI DolphinScheduler dengan mudah.
Informasi latar belakang
Kode DolphinScheduler AliyunServerlessSpark Task Plugin telah berhasil digabungkan ke cabang utama Apache DolphinScheduler dan akan dirilis di versi resmi selanjutnya. Sebelum versi baru dirilis, Anda dapat mengkompilasi kode cabang utama AliyunServerlessSpark Task Plugin atau mengintegrasikan AliyunServerlessSpark Task Plugin ke dalam proyek Anda menggunakan permintaan tarik terkait (PR) dari perintah cherry-pick.
Prasyarat
Java Development Kit (JDK) 1.8 atau yang lebih baru telah diinstal.
AliyunServerlessSpark Task Plugin telah diinstal menggunakan salah satu metode berikut:
Metode 1: Kompilasi kode cabang utama AliyunServerlessSpark Task Plugin. Untuk informasi lebih lanjut, lihat dolphinscheduler.
Metode 2: Integrasikan AliyunServerlessSpark Task Plugin ke dalam proyek Anda menggunakan PR terkait dari perintah cherry-pick. Untuk informasi lebih lanjut, lihat [Feature-16127] Dukungan emr serverless spark #16126.
Prosedur
Langkah 1: Buat sumber data
Akses web UI DolphinScheduler. Di bilah navigasi atas, klik Datasource.
Klik Create DataSource. Di kotak dialog Choose DataSource Type, pilih ALIYUN_SERVERLESS_SPARK.
Di kotak dialog CreateDataSource, konfigurasikan parameter. Tabel berikut menjelaskan parameter tersebut.
Parameter
Deskripsi
Datasource Name
Nama sumber data.
Access Key Id
ID AccessKey akun Alibaba Cloud Anda.
Access Key Secret
Rahasia AccessKey akun Alibaba Cloud Anda.
Region Id
ID wilayah tempat E-MapReduce (EMR) Serverless Spark workspace berada. Contoh: cn-beijing.
Untuk informasi tentang wilayah yang didukung, lihat Wilayah yang Didukung.
Klik Test Connect. Setelah sumber data lulus uji koneksi, klik Confirm.
Langkah 2: Buat proyek
Di bilah navigasi atas, klik Project.
Klik Create Project.
Di kotak dialog Create Project, konfigurasikan parameter seperti Project Name dan User. Untuk informasi lebih lanjut, lihat Project.
Langkah 3: Buat alur kerja
Klik nama proyek yang telah dibuat. Di panel navigasi sisi kiri, pilih Workflow > Workflow Definition untuk masuk ke halaman Workflow Definition.
Klik Create Workflow. Halaman edit workflow DAG edit muncul.
Di panel navigasi sisi kiri, pilih ALIYUN_SERVERLESS_SPARK dan seret ke kanvas sisi kanan.
Di kotak dialog Current node settings, konfigurasikan parameter dan klik Confirm.
Konfigurasi parameter bervariasi berdasarkan jenis pekerjaan yang ingin Anda kirimkan.
Parameter yang diperlukan untuk mengirimkan pekerjaan Java Archive (JAR)
Parameter
Deskripsi
Datasource types
Pilih ALIYUN_SERVERLESS_SPARK.
Datasource instances
Pilih sumber data yang telah dibuat.
workspace id
ID EMR Serverless Spark workspace.
resource queue id
ID antrian sumber daya di EMR Serverless Spark workspace. Nilai default:
root_queue.code type
Jenis pekerjaan. Atur parameter ini menjadi
JAR.job name
Nama pekerjaan EMR Serverless Spark. Contoh: ds-emr-spark-jar.
entry point
Path file. Contoh: oss://<yourBucketName>/spark-resource/examples/jars/spark-examples_2.12-3.3.1.jar.
entry point arguments
Kode pekerjaan Spark. Anda dapat menggunakan
tanda pagar(#) sebagai pemisah untuk memisahkan parameter dalam kode.spark submit parameters
Parameter yang diperlukan untuk mengirimkan pekerjaan JAR Spark. Contoh:
--class org.apache.spark.examples.SparkPi --conf spark.executor.cores=4 --conf spark.executor.memory=20g --conf spark.driver.cores=4 --conf spark.driver.memory=8g --conf spark.executor.instances=1is production
Aktifkan sakelar jika pekerjaan Spark merupakan pekerjaan di lingkungan produksi.
engine release version
Versi mesin. Nilai default:
esr-2.1-native (Spark 3.3.1, Scala 2.12, Native Runtime).Parameter yang diperlukan untuk mengirimkan pekerjaan SQL
Parameter
Deskripsi
Datasource types
Pilih ALIYUN_SERVERLESS_SPARK.
Datasource instances
Pilih sumber data yang telah dibuat.
workspace id
ID EMR Serverless Spark workspace.
resource queue id
ID antrian sumber daya di EMR Serverless Spark workspace. Nilai default:
root_queue.code type
Jenis pekerjaan. Atur parameter ini menjadi
SQL.job name
Nama pekerjaan EMR Serverless Spark. Contoh: ds-emr-spark-sql.
entry point
Path file. Anda harus memasukkan path file yang valid.
entry point arguments
Kode pekerjaan Spark. Anda dapat menggunakan
tanda pagar(#) sebagai pemisah untuk memisahkan parameter dalam kode. Contoh:Kirim skrip SQL.
-e#show tables;show tables;Kirim skrip SQL di OSS.
-f#oss://<yourBucketName>/spark-resource/examples/sql/show_db.sql
spark submit parameters
Parameter yang diperlukan untuk mengirimkan pekerjaan SQL Spark. Contoh:
--class org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver --conf spark.executor.cores=4 --conf spark.executor.memory=20g --conf spark.driver.cores=4 --conf spark.driver.memory=8g --conf spark.executor.instances=1is production
Aktifkan sakelar jika pekerjaan Spark merupakan pekerjaan di lingkungan produksi.
engine release version
Versi mesin. Nilai default:
esr-2.1-native (Spark 3.3.1, Scala 2.12, Native Runtime).Parameter yang diperlukan untuk mengirimkan pekerjaan PySpark
Parameter
Deskripsi
Datasource types
Pilih ALIYUN_SERVERLESS_SPARK.
Datasource instances
Pilih sumber data yang telah dibuat.
workspace id
ID EMR Serverless Spark workspace.
resource queue id
ID antrian sumber daya di EMR Serverless Spark workspace. Nilai default:
root_queue.code type
Jenis pekerjaan. Atur parameter ini menjadi
PYTHON.job name
Nama pekerjaan EMR Serverless Spark. Contoh: ds-emr-spark-jar.
entry point
Path file. Contoh:
oss://<yourBucketName>/spark-resource/examples/src/main/python/pi.py.entry point arguments
Kode pekerjaan Spark. Anda dapat menggunakan
tanda pagar(#) sebagai pemisah untuk memisahkan parameter dalam kode. Contoh:1.spark submit parameters
Parameter yang diperlukan untuk mengirimkan pekerjaan PySpark. Contoh:
--conf spark.executor.cores=4 --conf spark.executor.memory=20g --conf spark.driver.cores=4 --conf spark.driver.memory=8g --conf spark.executor.instances=1is production
Aktifkan sakelar jika pekerjaan Spark merupakan pekerjaan di lingkungan produksi.
engine release version
Versi mesin. Nilai default:
esr-2.1-native (Spark 3.3.1, Scala 2.12, Native Runtime).
Referensi
Untuk informasi lebih lanjut tentang DolphinScheduler, lihat Apache DolphinScheduler.