All Products
Search
Document Center

DataWorks:Buat node EMR Spark Streaming

Last Updated:Apr 23, 2026

Node EMR Spark Streaming memproses aliran data real-time ber-throughput tinggi dan menyediakan toleransi kesalahan untuk membantu Anda pulih dengan cepat dari error pada aliran data. Topik ini menjelaskan cara membuat node EMR Spark Streaming dan mengembangkan tugas data.

Prasyarat

  • Kluster Alibaba Cloud EMR telah dibuat dan didaftarkan ke DataWorks. Untuk informasi selengkapnya, lihat Data Studio (legacy): Asosiasikan sumber daya komputasi EMR.

  • (Wajib jika Anda menggunakan RAM user untuk mengembangkan tugas) RAM user telah ditambahkan ke ruang kerja DataWorks sebagai anggota dan diberi peran Develop atau Workspace Administrator. Peran Workspace Administrator memiliki lebih banyak izin daripada yang diperlukan. Berhati-hatilah saat memberikan peran tersebut. Untuk informasi selengkapnya tentang cara menambahkan anggota, lihat Tambahkan anggota ke ruang kerja.

  • Kelompok sumber daya serverless telah dibeli dan dikonfigurasi. Konfigurasi tersebut mencakup asosiasi dengan ruang kerja dan konfigurasi jaringan. Untuk informasi selengkapnya, lihat Buat dan gunakan kelompok sumber daya serverless.

  • Alur kerja telah dibuat di DataStudio.

    Operasi pengembangan pada berbagai jenis mesin komputasi dilakukan berdasarkan alur kerja di DataStudio. Oleh karena itu, sebelum membuat node, Anda harus membuat alur kerja terlebih dahulu. Untuk informasi selengkapnya, lihat Buat alur kerja.

Batasan

  • Tipe tugas ini hanya dapat dijalankan pada kelompok sumber daya serverless (disarankan) atau grup sumber daya eksklusif untuk penjadwalan.

  • Anda tidak dapat membuat node EMR Spark Streaming untuk pengembangan tugas di kluster EMR on ACK Spark.

Langkah 1: Buat node EMR Spark Streaming

  1. Login ke Konsol DataWorks. Di wilayah target, klik Data Development and O&M > Data Development di panel navigasi kiri. Pilih ruang kerja dari daftar drop-down lalu klik Go to Data Development.

  2. Buat node EMR Spark Streaming.

    1. Klik kanan alur kerja target lalu pilih Create Node > EMR > EMR Spark Streaming.

      Catatan

      Atau, arahkan kursor ke Create lalu pilih Create Node > EMR > EMR Spark Streaming.

    2. Pada kotak dialog Create Node, masukkan Name dan pilih engine instance, Node Type, dan Path. Klik OK. Hal ini akan membuka halaman konfigurasi untuk node EMR Spark Streaming.

      Catatan

      Nama node dapat berisi huruf kapital, huruf kecil, karakter Tionghoa, angka, garis bawah (_), dan titik (.).

Langkah 2: Kembangkan tugas EMR Spark Streaming

Pada halaman konfigurasi node EMR Spark Streaming, klik ganda node yang telah Anda buat untuk membuka halaman pengembangan tugas.

Buat dan referensikan resource EMR JAR

Jika Anda menggunakan kluster DataLake, ikuti langkah-langkah berikut untuk mereferensikan resource EMR JAR.

Catatan

Jika node EMR Spark Streaming bergantung pada resource besar yang tidak dapat diunggah di DataWorks, Anda dapat menyimpan resource tersebut di HDFS dan mereferensikannya dalam kode Anda. Contohnya:

spark-submit --master yarn
--deploy-mode cluster
--name SparkPi
--driver-memory 4G
--driver-cores 1
--num-executors 5
--executor-memory 4G
--executor-cores 1
--class org.apache.spark.examples.JavaSparkPi
hdfs:///tmp/jars/spark-examples_2.11-2.4.8.jar 100
  1. Buat resource EMR JAR. Untuk informasi selengkapnya, lihat Buat dan gunakan resource EMR. Saat pertama kali menggunakan fitur ini, Anda harus melakukan Authorize.

  2. Referensikan resource EMR JAR tersebut.

    1. Buka node EMR Spark Streaming dan buka editor kode.

    2. Di bawah node EMR > Resource, temukan resource yang diinginkan, klik kanan, lalu pilih Insert Resource Path.

    3. Setelah Anda memilih resource tersebut, pernyataan dalam format ##@resource_reference{""} akan muncul di editor node. Pernyataan ini mereferensikan resource tersebut. Kemudian, masukkan perintah spark-submit Anda. Nama paket resource, bucket, dan path dalam perintah hanya bersifat ilustratif. Gantilah dengan nilai aktual Anda.

      ##@resource_reference{"examples-1.2.0-shaded.jar"}
      --master yarn-cluster --executor-cores 2 --executor-memory 2g --driver-memory 1g --num-executors 2 --class com.aliyun.emr.example.spark.streaming.JavaLoghubWordCount examples-1.2.0-shaded.jar <logService-project> <logService-store> <group> <endpoint> <access-key-id> <access-key-secret>

Kembangkan kode spark-submit

Di editor node EMR Spark Streaming, masukkan perintah spark-submit untuk pekerjaan Anda. Contohnya:

spark-submit --master yarn-cluster --executor-cores 2 --executor-memory 2g --driver-memory 1g --num-executors 2 --class com.aliyun.emr.example.spark.streaming.JavaLoghubWordCount examples-1.2.0-shaded.jar <logService-project> <logService-store> <group> <endpoint> <access-key-id> <access-key-secret>
Catatan
  • Dalam contoh ini, resource yang diunggah ke DataWorks adalah examples-1.2.0-shaded.jar.

  • Ganti access-key-id dan access-key-secret dengan ID AccessKey dan Rahasia AccessKey Akun Alibaba Cloud Anda. Untuk mendapatkannya, login ke Konsol DataWorks, arahkan kursor ke foto profil Anda di pojok kanan atas, lalu buka halaman Manajemen AccessKey.

  • Komentar tidak didukung saat Anda mengedit kode untuk node EMR Spark Streaming.

  • Jika beberapa sumber daya komputasi EMR diasosiasikan dengan ruang kerja Anda di DataStudio, pilih salah satu yang sesuai dengan kebutuhan bisnis Anda. Jika hanya ada satu sumber daya yang diasosiasikan, tidak perlu pemilihan.

(Opsional) Konfigurasikan Pengaturan Lanjutan

Anda dapat mengonfigurasi properti tertentu di bagian Advanced Settings node. Untuk informasi selengkapnya tentang properti tersebut, lihat Spark Configuration. Tabel berikut menjelaskan parameter advanced yang tersedia.

DataLake: EMR on ECS

Parameter

Deskripsi

queue

Antrian penjadwalan untuk pekerjaan. Antrian default adalah default. Untuk informasi selengkapnya tentang EMR YARN, lihat Basic queue configurations.

priority

Prioritas pekerjaan. Nilai default adalah 1.

Others

Anda dapat menambahkan parameter SparkConf kustom di bagian ini. Saat Anda mengirimkan kode, DataWorks secara otomatis menambahkan parameter tersebut ke perintah. Contoh: "spark.driver.memory" : "2g".

Catatan

Untuk mengaktifkan Ranger guna kontrol akses, tambahkan konfigurasi spark.hadoop.fs.oss.authorization.method=ranger di Set global Spark parameters.

Untuk informasi selengkapnya tentang cara mengonfigurasi parameter, lihat Set global Spark parameters.

Jalankan tugas

  1. Di bilah alat, klik ikon 高级运行. Di kotak dialog Parameter, pilih kelompok sumber daya penjadwalan yang telah Anda buat lalu klik Running.

    Catatan
    • Untuk mengakses sumber daya komputasi melalui jaringan publik atau di dalam VPC, Anda harus menggunakan kelompok sumber daya penjadwalan yang dapat terhubung ke sumber daya komputasi tersebut. Untuk informasi selengkapnya, lihat Network connectivity solutions.

    • Jika Anda perlu mengubah kelompok sumber daya untuk eksekusi berikutnya, klik ikon Run with Parameters 高级运行 lalu pilih kelompok sumber daya yang ingin digunakan.

  2. Klik ikon 保存 untuk menyimpan kode.

  3. (Opsional) Lakukan pengujian asap.

    Jika Anda ingin melakukan pengujian asap di lingkungan pengembangan, jalankan pengujian tersebut sebelum atau setelah Anda commit node. Untuk informasi selengkapnya, lihat Perform smoke testing.

Langkah 3: Konfigurasi properti penjadwalan

Jika Anda ingin sistem menjalankan tugas pada node secara berkala, Anda dapat mengklik Properties di panel navigasi kanan pada tab konfigurasi node untuk mengonfigurasi properti penjadwalan tugas sesuai kebutuhan bisnis Anda. Untuk informasi selengkapnya, lihat Overview.

Catatan

Anda harus mengonfigurasi parameter Rerun dan Parent Nodes di tab Properties sebelum melakukan commit tugas.

Langkah 4: Terapkan tugas

Setelah tugas pada node dikonfigurasi, Anda harus melakukan commit dan deploy tugas tersebut. Setelah tugas di-commit dan di-deploy, sistem akan menjalankan tugas tersebut secara berkala berdasarkan konfigurasi penjadwalan.

  1. Klik ikon 保存 di bilah alat atas untuk menyimpan tugas.

  2. Klik ikon 提交 di bilah alat atas untuk melakukan commit tugas.

    Pada kotak dialog Submit, konfigurasikan parameter Change description. Lalu, tentukan apakah Anda perlu melakukan tinjauan kode tugas setelah commit berdasarkan kebutuhan bisnis Anda.

    Catatan
    • Anda harus mengonfigurasi parameter Rerun dan Parent Nodes di tab Properties sebelum melakukan commit tugas.

    • Anda dapat menggunakan fitur tinjauan kode untuk memastikan kualitas kode tugas dan mencegah error eksekusi tugas akibat kode tugas yang tidak valid. Jika Anda mengaktifkan fitur tinjauan kode, kode tugas yang di-commit hanya dapat di-deploy setelah melewati proses tinjauan kode. Untuk informasi selengkapnya, lihat Code review.

Jika Anda menggunakan ruang kerja dalam mode standar, Anda harus melakukan deploy tugas di lingkungan produksi setelah melakukan commit tugas. Untuk melakukan deploy tugas pada node, klik Deploy di pojok kanan atas tab konfigurasi node. Untuk informasi selengkapnya, lihat Deploy nodes.

Operasi tambahan

Setelah Anda melakukan commit dan deploy tugas, tugas tersebut akan dijalankan secara berkala berdasarkan konfigurasi penjadwalan. Anda dapat mengklik Operation Center di pojok kanan atas tab konfigurasi node terkait untuk membuka Operation Center dan melihat status penjadwalan tugas tersebut. Untuk informasi selengkapnya, lihat Manage auto triggered tasks.