Setiap instans task DataWorks yang berjalan pada mesin komputasi E-MapReduce (EMR) mencakup beberapa job EMR yang dijalankan secara berurutan. Jika salah satu job gagal atau tetap dalam status RUNNING lebih lama dari yang diharapkan, seluruh instans task beserta instans downstream-nya akan terblokir. Halaman Engine O&M memberikan visibilitas terhadap setiap job EMR secara individual sehingga Anda dapat mengidentifikasi, menghentikan, dan menghapus job bermasalah sebelum dampaknya meluas.
Batasan
-
Engine O&M hanya didukung untuk job EMR. Untuk mendapatkan data O&M, submit a ticketsubmit a ticket untuk melakukan upgrade paket eksekusi EMR Anda.
-
Engine Maintenance muncul di panel navigasi kiri Pusat Operasi hanya setelah Anda mendaftarkan kluster EMR ke ruang kerja DataWorks Anda.
-
Jika Anda menggunakan grup sumber daya eksklusif untuk penjadwalan, submit a ticketsubmit a ticket untuk melakukan upgrade konfigurasinya. Tanpa upgrade tersebut, bidang tertentu akan ditampilkan sebagai tanda hubung (-) pada halaman Engine O&M.
Catatan penggunaan
Aplikasi YARN dapat digunakan ulang di berbagai layanan EMR. Saat sebuah aplikasi digunakan ulang, ID job yang sama (application ID) akan muncul untuk job tersebut, terlepas dari layanan DataWorks mana yang memicunya.
-
Halaman Engine O&M hanya menampilkan application ID pertama yang dihasilkan saat sebuah job EMR dijalankan di DataWorks.
-
Setelah instans task DataWorks selesai — baik berhasil maupun gagal — aplikasi YARN yang sesuai mungkin masih berada dalam status RUNNING.
Contoh: Parameter kyuubi.engine.share.level secara default bernilai USER untuk EMR Kyuubi, artinya setiap pengguna berbagi satu engine. Semua job yang dipicu oleh pengguna pada engine tersebut menggunakan application ID yang sama. Jika Anda menjalankan task EMR Kyuubi di DataStudio dan kemudian menganalisis task yang sama di DataAnalysis, tidak akan dihasilkan application ID baru — ID dari DataStudio akan digunakan kembali.
Selain itu, kyuubi.session.engine.idle.timeout mengontrol berapa lama session idle tetap aktif. Dengan kyuubi.session.engine.idle.timeout=PT30M, aplikasi YARN tetap dalam status RUNNING selama 30 menit setelah job selesai. Lihat pengaturan parameter Kyuubi pada halaman EMR on ECS.
Prasyarat
Sebelum memulai, pastikan Anda telah:
-
Kluster EMR yang terdaftar ke ruang kerja DataWorks Anda. Lihat Mendaftarkan Kluster EMR ke DataWorks.
-
Menjalankan task EMR terkait di DataWorks. Lihat Usage notes for development of EMR nodes in DataWorks.
Buka halaman Engine O&M
-
Masuk ke Konsol DataWorks. Di bilah navigasi atas, pilih wilayah target. Di panel navigasi kiri, pilih Data Development and O&M > Operation Center.
-
Pilih ruang kerja target dari daftar drop-down dan klik Go to Operation Center.
-
Di panel navigasi kiri halaman Operation Center, pilih Other > Engine Maintenance > E-MapReduce.
Lihat dan cari job EMR
Halaman Engine O&M mencantumkan semua job EMR yang dibuat di seluruh ruang kerja DataWorks dalam wilayah saat ini.
Secara default, halaman ini menampilkan data dari tiga hari sebelumnya. Gunakan filter di bagian atas halaman (Area 1) untuk mempersempit hasil berdasarkan job ID, jenis job, ID instans DataWorks, dan kondisi lainnya.
Pencarian berdasarkan job ID atau DataWorks instance ID hanya mengkueri instans dari tujuh hari sebelumnya. Bidang DataWorks Instance ID hanya menerima ID instans yang dijalankan di Operation Center.
Setiap baris job (Area 2) menampilkan detail berikut:
| Field | Description |
|---|---|
| Job ID | Pengidentifikasi unik untuk job EMR. Klik untuk membuka halaman detail job. |
| Job status | Status saat ini dari job. Lihat Job statuses. |
| Running duration | Lama waktu job berjalan atau waktu yang diperlukan hingga selesai. |
| Job source | Layanan DataWorks yang memicu job (misalnya, DataStudio atau DataAnalysis). |
| Node Instance ID | Instans task DataWorks tempat job tersebut berada. Job yang dimulai pada waktu berbeda dianggap sebagai bagian dari instans task yang berbeda, meskipun berasal dari node yang sama. Task yang dipicu oleh Data Quality, DataStudio, atau DataAnalysis menampilkan tanda hubung (-) pada kolom ini. |
| Queue usage (%) | Persentase resource antrian YARN yang dialokasikan untuk job ini. |
| Start time / End time | Kolom yang dapat diurutkan untuk melihat urutan eksekusi dan durasi job. |
Job statuses
Status akhir sebuah job mencerminkan apakah job tersebut berhasil diselesaikan. Status-status tersebut, dalam urutan siklus hidup, adalah:
| Status | Meaning |
|---|---|
| NEW | Job baru saja dibuat. |
| NEW_SAVING | Job sedang disimpan. |
| SUBMITTED | Job telah dikirim untuk dieksekusi. |
| ACCEPTED | Sistem penjadwalan menyetujui permintaan eksekusi. |
| RUNNING | Job sedang berjalan aktif. |
| FINISHED | Job selesai dijalankan. |
| SUCCESSED | Job berhasil diselesaikan. |
| FAILED | Job gagal. Segera selidiki untuk mencegah kegagalan ini memblokir instans task dan instans downstream-nya. |
| KILLED | Job dihentikan oleh pengguna atau administrator. |
Hanya job EMR jenis MapReduce dan Spark yang terlihat di halaman ini.
Tangani masalah job
Hentikan job yang macet atau berjalan terlalu lama
Jika sebuah job tetap dalam status RUNNING lebih lama dari yang diharapkan — misalnya karena error internal yang mencegah terminasi otomatis — hentikan job tersebut untuk membebaskan resource dan membuka blokir job lainnya.
Hanya workspace administrator, pengguna dengan role O&M, dan pemilik task yang dapat menghentikan instans task. Menghentikan job yang sedang berjalan akan mengubah seluruh instans task DataWorks menjadi FAILED dan memblokir instans downstream-nya. Jika beberapa job EMR termasuk dalam satu instans task DataWorks yang sama dan Anda menghentikan salah satunya, seluruh instans task DataWorks akan masuk ke status FAILED. Lakukan dengan hati-hati.
-
Untuk menghentikan satu job, temukan job tersebut dalam daftar dan klik Terminate Running di kolom Actions.
-
Untuk menghentikan beberapa job sekaligus, pilih job-job tersebut dan klik Stop DataWorks Node Instances di pojok kiri bawah halaman.
Hanya instans dalam status running yang dapat dihentikan.
Investigasi dan pulihkan dari job yang gagal
Ketika sebuah job berada dalam status FAILED, lakukan langkah-langkah berikut untuk mengidentifikasi penyebab dan melanjutkan eksekusi:
-
Klik job ID atau Node Instance ID untuk membuka halaman detail dan mulai troubleshooting.
-
Atau, klik tombol layanan di kolom Actions (misalnya, DataStudio) untuk langsung menuju halaman layanan tempat job tersebut dipicu.
Izin akses ke halaman layanan:
-
DataAnalysis: Hanya pemilik file yang dapat melihat file kueri SQL.
-
DataStudio: Semua developer ruang kerja dapat melihat instans tersebut. Hanya pengguna yang memicunya yang dapat melihat riwayat eksekusi.