All Products
Search
Document Center

AnalyticDB:Pengenalan\ pengembangan\ aplikasi\ Spark

Last Updated:Mar 29, 2026

AnalyticDB for MySQL menggunakan metode pengembangan yang sama untuk aplikasi batch Spark dan aplikasi streaming. Topik ini menjelaskan tool pengembangan yang tersedia, parameter konfigurasi, serta parameter khusus bahasa untuk aplikasi Java, Scala, dan Python.

Prasyarat

Sebelum memulai, pastikan bahwa:

  • Anda memiliki kluster AnalyticDB for MySQL.

  • Anda memiliki bucket Object Storage Service (OSS) di wilayah yang sama dengan kluster tersebut.

Semua file aplikasi—JAR, file Python, dependensi, dan paket terkompresi—harus disimpan di OSS.

Tool pengembangan

Anda dapat menggunakan salah satu tool berikut untuk mengembangkan aplikasi batch Spark dan aplikasi streaming:

Konfigurasi aplikasi

Aplikasi Spark di AnalyticDB for MySQL dikonfigurasi menggunakan JSON. Contoh berikut menunjukkan aplikasi Java yang membaca data dari OSS, termasuk parameter umum (name, file, conf) dan parameter khusus Java (args, className).

{
  "args": ["args0", "args1"],
  "name": "spark-oss-test",
  "file": "oss://<testBucketName>/jars/test/spark-examples-0.0.1-SNAPSHOT.jar",
  "className": "com.aliyun.spark.oss.SparkReadOss",
  "conf": {
    "spark.driver.resourceSpec": "medium",
    "spark.executor.resourceSpec": "medium",
    "spark.executor.instances": 2,
    "spark.adb.connectors": "oss"
  }
}

Untuk detail parameter khusus bahasa, lihat parameter aplikasi Java, parameter aplikasi Scala, atau parameter aplikasi Python.

Parameter umum

ParameterWajibDeskripsiContoh
nameTidakNama aplikasi Spark."name": "spark-oss-test"
fileYa (Java, Scala, Python)Path absolut OSS dari file utama aplikasi. Untuk Java dan Scala, ini adalah file JAR yang berisi titik masuk. Untuk Python, ini adalah titik masuk yang dapat dieksekusi. Bucket OSS harus berada di wilayah yang sama dengan kluster."file": "oss://<testBucketName>/jars/test/spark-examples-0.0.1-SNAPSHOT.jar"
filesTidakPath OSS file tambahan yang akan diunduh ke direktori kerja driver dan executor. Mendukung alias menggunakan # (misalnya, oss://<testBucketName>/test/test1.txt#test1 membuat file tersebut dapat diakses sebagai ./test1 atau ./test1.txt). Pisahkan beberapa path dengan koma. Jika Anda menyertakan log4j.properties, Spark akan menggunakannya sebagai file konfigurasi log."files": ["oss://<testBucketName>/path/to/file1", "oss://<testBucketName>/path/to/file2"]
archivesTidakPath OSS paket terkompresi TAR.GZ yang akan didekompresi ke direktori kerja proses Spark. Mendukung alias menggunakan # (misalnya, oss://testBucketName/test/test1.tar.gz#test1 membuat file test2.txt di dalamnya dapat diakses sebagai ./test1/test2.txt atau ./test1.tar.gz/test2.txt). Pisahkan beberapa path dengan koma. Jika dekompresi paket gagal, pekerjaan akan gagal."archives": ["oss://<testBucketName>/path/to/archive1.tar.gz", "oss://<testBucketName>/path/to/archive2.tar.gz"]
confYaKonfigurasi Spark dalam format key: value, mirip dengan Apache Spark. Pisahkan beberapa entri dengan koma. Untuk parameter khusus AnalyticDB for MySQL, lihat parameter konfigurasi aplikasi Spark."conf": {"spark.driver.resourceSpec": "medium", "spark.executor.resourceSpec": "medium", "spark.executor.instances": 2, "spark.adb.connectors": "oss"}

Parameter aplikasi Java

ParameterWajibDeskripsiContoh
argsTidakArgumen yang diteruskan ke JAR. Pisahkan beberapa argumen dengan koma."args": ["args0", "args1"]
classNameYaKelas utama aplikasi Java."className": "com.aliyun.spark.oss.SparkReadOss"
jarsTidakPath absolut OSS file JAR tambahan yang ditambahkan ke classpath JVM (Java Virtual Machine) driver dan executor saat waktu proses. Bucket OSS harus berada di wilayah yang sama dengan kluster. Pisahkan beberapa path dengan koma."jars": ["oss://<testBucketName>/path/to/app.jar", "oss://testBucketName/path/to/lib.jar"]

Parameter aplikasi Scala

ParameterWajibDeskripsiContoh
classNameYaKelas utama aplikasi Scala."className": "com.aliyun.spark.oss.SparkReadOss"
jarsTidakPath absolut OSS file JAR tambahan yang ditambahkan ke classpath JVM driver dan executor saat waktu proses. Bucket OSS harus berada di wilayah yang sama dengan kluster. Pisahkan beberapa path dengan koma."jars": ["oss://<testBucketName>/path/to/app.jar", "oss://testBucketName/path/to/lib.jar"]

Parameter aplikasi Python

ParameterWajibDeskripsiContoh
pyFilesYaPath OSS file Python untuk aplikasi PySpark. Format yang didukung: ZIP, PY, atau EGG. Untuk beberapa file, gunakan format ZIP atau EGG. File Python dapat diimpor sebagai modul dalam kode Anda. Pisahkan beberapa path dengan koma."pyFiles": ["oss://<testBucketName>/path/to/app.zip", "oss://<testBucketName>/path/to/lib.egg"]