全部产品
Search
文档中心

E-MapReduce:Mengedit pekerjaan

更新时间:Jun 24, 2025

Anda dapat membuat pekerjaan untuk mengembangkan tugas dalam sebuah proyek. Topik ini menjelaskan operasi terkait pekerjaan.

Informasi latar belakang

Prasyarat

Proyek telah dibuat. Untuk informasi lebih lanjut, lihat Kelola Proyek.

Buat pekerjaan

  1. Buka tab Platform Data.
    1. Masuk ke Konsol EMR Alibaba Cloud menggunakan akun Alibaba Cloud Anda.
    2. Di bilah navigasi atas, pilih wilayah tempat kluster Anda berada dan pilih grup sumber daya sesuai dengan kebutuhan bisnis Anda.
    3. Klik tab Data Platform.
  2. Pada bagian Proyek di halaman yang muncul, temukan proyek yang ingin Anda kelola dan klik Edit Job di kolom Tindakan.
  3. Buat pekerjaan.
    1. Di panel Edit Pekerjaan di sebelah kiri halaman yang muncul, klik kanan folder tempat Anda ingin melakukan operasi dan pilih Create Job.
      null Anda juga dapat mengklik kanan folder dan memilih Create Subfolder, Rename Folder, atau Delete Folder untuk melakukan operasi yang sesuai.
    2. Di kotak dialog Create Job, tentukan Name dan Description, lalu pilih jenis pekerjaan tertentu dari daftar drop-down Job Type.

      E-MapReduce (EMR) mendukung jenis pekerjaan berikut dalam pengembangan data: Shell, Hive, Hive SQL, Spark, Spark SQL, Spark Shell, Spark Streaming, MapReduce, Sqoop, Pig, Flink, Streaming SQL, Presto SQL, dan Impala SQL.

      null Setelah pekerjaan dibuat, Anda tidak dapat mengubah type of the job.
    3. Klik OK.
      Setelah pekerjaan dibuat, Anda dapat mengonfigurasi dan mengedit pekerjaan tersebut.

Konfigurasi pekerjaan

Untuk informasi lebih lanjut tentang cara mengembangkan dan mengonfigurasi setiap jenis pekerjaan, lihat Pekerjaan. Bagian ini menjelaskan cara mengonfigurasi parameter pekerjaan pada tab Basic Settings, Advanced Settings, Shared Libraries, dan Alert Settings di panel Pengaturan Pekerjaan.

  1. Di sudut kanan atas halaman job, klik Job Settings.
  2. Di panel Job Settings, konfigurasikan parameter pada tab Pengaturan Dasar.
    Bagian dan parameterDeskripsi
    Job OverviewNameNama pekerjaan.
    Job TypeJenis pekerjaan.
    RetriesJumlah percobaan ulang yang diizinkan jika pekerjaan gagal. Nilai parameter ini berkisar antara 0 hingga 5.
    Actions on FailuresTindakan yang dapat Anda lakukan jika pekerjaan gagal. Nilai valid:
    • Pause: Menangguhkan alur kerja saat ini jika pekerjaan gagal.
    • Run Next Job: Lanjutkan untuk menjalankan pekerjaan berikutnya jika pekerjaan saat ini gagal.
    Anda dapat menentukan apakah akan mengaktifkan sakelar Use Latest Job Content and Parameters berdasarkan kebutuhan bisnis Anda.
    • Jika Anda mematikan sakelar ini, instans pekerjaan dihasilkan berdasarkan konten dan parameter pekerjaan asli setelah Anda menjalankan ulang pekerjaan yang gagal.
    • Jika Anda menghidupkan sakelar ini, instans pekerjaan dihasilkan berdasarkan konten dan parameter pekerjaan terbaru setelah Anda menjalankan ulang pekerjaan yang gagal.
    DescriptionDeskripsi pekerjaan. Jika Anda ingin memodifikasi deskripsi pekerjaan, Anda dapat mengklik Edit di sebelah kanan parameter ini.
    ResourcesSumber daya yang diperlukan untuk menjalankan pekerjaan, seperti paket JAR dan fungsi yang ditentukan pengguna (UDF). Klik ikon Plus sign di sebelah kanan untuk menambahkan sumber daya.

    Unggah sumber daya ke Object Storage Service (OSS) terlebih dahulu. Kemudian, Anda dapat menambahkannya ke pekerjaan.

    Configuration ParametersVariabel yang ingin Anda referensikan dalam skrip pekerjaan. Anda dapat merujuk variabel dalam skrip pekerjaan Anda dalam format ${Nama Variabel}.

    Klik ikon Plus sign di sebelah kanan untuk menambahkan variabel dalam format pasangan kunci-nilai. Anda dapat menentukan apakah akan memilih Kata Sandi untuk menyembunyikan nilai berdasarkan kebutuhan bisnis Anda. Kunci menunjukkan nama variabel. Nilai menunjukkan nilai variabel. Selain itu, Anda dapat mengonfigurasi variabel waktu berdasarkan waktu penjadwalan mulai. Untuk informasi lebih lanjut, lihat Konfigurasi waktu dan tanggal pekerjaan.

  3. Klik tab Advanced Settings dan konfigurasikan parameter.
    BagianParameter dan deskripsi
    Mode
    • Job Submission Node: mode untuk mengirimkan pekerjaan. Untuk informasi lebih lanjut, lihat Mode pengiriman pekerjaan. Nilai valid:
      • Worker Node: Pekerjaan dikirimkan ke YARN menggunakan peluncur, dan YARN mengalokasikan sumber daya untuk menjalankan pekerjaan.
      • Header/Gateway Node: Pekerjaan berjalan sebagai proses pada node yang dialokasikan.
    • Estimated Maximum Duration: durasi maksimum perkiraan pekerjaan berjalan. Nilai valid: 0 hingga 10800. Unit: detik.
    Environment VariablesVariabel lingkungan yang digunakan untuk menjalankan pekerjaan. Anda juga dapat mengekspor variabel lingkungan dari skrip pekerjaan.
    • Contoh 1: Konfigurasikan pekerjaan Shell dengan kode echo ${ENV_ABC}. Jika Anda mengatur variabel ENV_ABC menjadi 12345, nilai 12345 dikembalikan setelah Anda menjalankan perintah echo.
    • Contoh 2: Konfigurasikan pekerjaan Shell dengan kode java -jar abc.jar. Isi paket abc.jar:
      public static void main(String[] args) {System.out.println(System.getEnv("ENV_ABC"));}
      Jika Anda mengatur variabel ENV_ABC menjadi 12345, nilai 12345 dikembalikan setelah Anda menjalankan pekerjaan. Efek mengatur variabel ENV_ABC di bagian Variabel Lingkungan setara dengan menjalankan skrip berikut:
      export ENV_ABC=12345
      java -jar abc.jar
    Scheduling ParametersParameter yang digunakan untuk menjadwalkan pekerjaan, termasuk Antrian, Memori (MB), vCore, Prioritas, dan Jalankan Oleh. Jika Anda tidak mengonfigurasi parameter ini, pengaturan default kluster Hadoop digunakan.
    null Parameter Memori (MB) menentukan kuota memori untuk peluncur.
  4. Klik tab Shared Libraries.
    Di bagian Dependent Libraries, tentukan Libraries.

    Pelaksanaan pekerjaan bergantung pada beberapa file perpustakaan yang terkait dengan sumber data. EMR menerbitkan perpustakaan ke repositori pusat penjadwalan sebagai perpustakaan dependensi. Anda harus menentukan perpustakaan dependensi saat membuat pekerjaan. Untuk menentukan perpustakaan dependensi, masukkan string referensinya, seperti sharedlibs:streamingsql:datasources-bundle:2.0.0.

  5. Klik tab Alert Settings dan konfigurasikan parameter peringatan.
    ParameterDeskripsi
    Execution FailedMenentukan apakah akan mengirimkan notifikasi ke grup kontak peringatan atau grup peringatan DingTalk jika pekerjaan gagal.
    Action on Startup TimeoutMenentukan apakah akan mengirimkan notifikasi ke grup kontak peringatan atau grup peringatan DingTalk jika waktu mulai pekerjaan habis.
    Job execution timed out.Menentukan apakah akan mengirimkan notifikasi ke grup kontak peringatan atau grup peringatan DingTalk jika eksekusi pekerjaan habis waktu.

Tambahkan anotasi

Anda dapat menambahkan anotasi ke skrip pekerjaan untuk mengonfigurasi parameter pekerjaan dalam pengembangan data. Gunakan format berikut untuk menambahkan anotasi:
!!! @<Nama Anotasi>: <Isi Anotasi>
null Jangan indentasi tiga tanda seru (!!!) yang memulai anotasi. Tambahkan satu anotasi dalam satu baris.
Tabel berikut menjelaskan semua anotasi yang didukung.
Nama AnotasiDeskripsiContoh
remMenambahkan komentar.
!!! @rem: Ini adalah komentar.
envMenambahkan variabel lingkungan.
!!! @env: ENV_1=ABC
varMenambahkan variabel kustom.
!!! @var: var1="value1 and \"one string end with 3 spaces\" "
!!! @var: var2=${yyyy-MM-dd}
resourceMenambahkan file sumber daya.
!!! @resource: oss://bucket1/dir1/file.jar
sharedlibsMenambahkan perpustakaan dependensi. Anotasi ini hanya valid dalam pekerjaan Streaming SQL. Pisahkan beberapa perpustakaan dependensi dengan koma (,).
!!! @sharedlibs: sharedlibs:streamingsql:datasources-bundle:1.7.0,...
scheduler.queueMenentukan antrian tempat pekerjaan dikirimkan.
!!! @scheduler.queue: default
scheduler.vmemMenentukan memori yang diperlukan untuk menjalankan pekerjaan. Unit: MiB.
!!! @scheduler.vmem: 1024
scheduler.vcoresMenentukan jumlah vCore yang diperlukan untuk menjalankan pekerjaan.
!!! @scheduler.vcores: 1
scheduler.priorityMenentukan prioritas pekerjaan. Nilai valid: 1 hingga 100.
!!! @scheduler.priority: 1
scheduler.userMenentukan pengguna yang mengirimkan pekerjaan.
!!! @scheduler.user: root
null
Saat menambahkan anotasi, perhatikan poin-poin berikut:
  • Anotasi yang tidak valid secara otomatis dilewati. Misalnya, anotasi yang tidak dikenal atau anotasi yang isinya dalam format tidak valid akan dilewati.
  • Parameter pekerjaan yang ditentukan dalam anotasi memiliki prioritas lebih tinggi daripada parameter pekerjaan yang ditentukan di panel Pengaturan Pekerjaan. Jika parameter ditentukan baik dalam anotasi maupun di panel Pengaturan Pekerjaan, pengaturan parameter yang ditentukan dalam anotasi yang berlaku.

Jalankan pekerjaan

  1. Jalankan pekerjaan yang Anda buat.
    1. Di halaman pekerjaan, klik Run di sudut kanan atas untuk menjalankan pekerjaan.
    2. Di kotak dialog Run Job, pilih grup sumber daya dan kluster yang Anda buat.
    3. Klik OK.
  2. Lihat detail yang sedang berjalan.
    1. Klik tab Log di bagian bawah halaman pekerjaan untuk melihat log operasional.
      Log
    2. Klik tab Records untuk melihat catatan eksekusi instans pekerjaan.
    3. Klik Details di kolom Tindakan instans pekerjaan untuk pergi ke tab Scheduling Center. Di tab ini, Anda dapat melihat detail tentang instans pekerjaan.

Operasi yang dapat Anda lakukan pada pekerjaan

Di panel Edit Job, Anda dapat mengklik kanan pekerjaan dan melakukan operasi yang dijelaskan dalam tabel berikut.
OperasiDeskripsi
Clone JobMengkloning konfigurasi pekerjaan untuk menghasilkan pekerjaan baru di folder yang sama.
Rename JobMengubah nama pekerjaan.
Delete JobMenghapus pekerjaan. Anda hanya dapat menghapus pekerjaan jika pekerjaan tersebut tidak terkait dengan alur kerja atau alur kerja terkait tidak sedang berjalan atau dijadwalkan.

Mode pengiriman pekerjaan

Proses spark-submit, yang merupakan peluncur dalam modul pengembangan data, digunakan untuk mengirimkan pekerjaan Spark. Dalam kebanyakan kasus, proses ini menggunakan lebih dari 600 MiB memori. Parameter Memori (MB) di panel Pengaturan Pekerjaan menentukan ukuran memori yang dialokasikan untuk peluncur.

Tabel berikut menjelaskan mode di mana pekerjaan dapat dikirimkan di versi terbaru EMR.
Mode pengiriman pekerjaanDeskripsi
Header/Gateway NodeDalam mode ini, proses spark-submit berjalan di node master dan tidak dipantau oleh YARN. Proses spark-submit meminta sejumlah besar memori. Sejumlah besar pekerjaan mengonsumsi banyak sumber daya node master, yang merusak stabilitas kluster.
Worker NodeDalam mode ini, proses spark-submit berjalan di node inti, menempati wadah YARN, dan dipantau oleh YARN. Mode ini mengurangi penggunaan sumber daya di node master.
Dalam kluster EMR, memori yang dikonsumsi oleh instans pekerjaan dihitung menggunakan rumus berikut:
Memori yang dikonsumsi oleh instans pekerjaan = Memori yang dikonsumsi oleh peluncur + Memori yang dikonsumsi oleh pekerjaan yang sesuai dengan instans pekerjaan
Untuk pekerjaan Spark, memori yang dikonsumsi oleh pekerjaan dihitung menggunakan rumus berikut:
Memori yang dikonsumsi oleh pekerjaan = Memori yang dikonsumsi oleh modul logis spark-submit (bukan proses) + Memori yang dikonsumsi oleh driver + Memori yang dikonsumsi oleh executor
Proses di mana driver berjalan bervariasi berdasarkan mode di mana aplikasi Spark diluncurkan di YARN.
Mode Peluncuran Aplikasi SparkProses di mana spark-submit dan driver berjalanDeskripsi Proses
mode yarn-clientKirim pekerjaan dalam mode LOCAL.Driver berjalan di proses yang sama dengan spark-submit.Proses yang digunakan untuk mengirimkan pekerjaan berjalan di node master dan tidak dipantau oleh YARN.
Kirim pekerjaan dalam mode YARN.Proses yang digunakan untuk mengirimkan pekerjaan berjalan di node inti, menempati wadah YARN, dan dipantau oleh YARN.
mode yarn-clusterDriver berjalan di proses yang berbeda dari spark-submit.Driver menempati wadah YARN.