Penjadwal tugas adalah program komputer yang mengontrol eksekusi program lain di belakang layar, atau sebagai bagian dari proses batch. Otomatisasi beban kerja ini biasanya dikoordinasikan sehingga pemrosesan data latar belakang tradisional dapat diintegrasikan dengan aktivitas bisnis waktu nyata tanpa menghabiskan sumber daya atau mengganggu aplikasi lain. Penjadwal tugas mengotomatiskan antarmuka dalam alur kerja, mengirimkan dan memantau eksekusi, dan mengantrekan urutan eksekusi tugas yang tidak terkait sehingga operasi ditangani dalam urutan yang benar, dan tunduk pada kondisi tertentu.
Alat populer untuk otomatisasi proses basis data adalah penjadwal pekerjaan bawaan Oracle. Hal ini dapat digunakan tidak hanya untuk mengotomatisasi prosedur SQL dan operasi utilitas, tetapi untuk proses pihak ketiga yang mempengaruhi efisiensi Oracle. Oracle DBA secara rutin menggunakan IRI FACT, IRI CoSort, dan SQL*Loader untuk menghapus overhead transformasi dari lapisan database, dan meningkatkan alur kerja di seluruh ETL volume tinggi dan operasi penataan ulang offline. Alat-alat ini sekarang dapat digabungkan dan dijadwalkan dengan Penjadwal Pekerjaan Oracle di IRI Workbench, lingkungan GUI yang dibangun di Eclipse™.
Baik di baris perintah, front-end Oracle, atau IRI di Eclipse™, Oracle DBA sekarang dapat menjadwalkan langkah-langkah ETL yang saling bergantung, atau menyiapkan operasi bongkar/urutkan/muat ulang (reorg) menggunakan perangkat lunak IRI. Dengan Oracle Job Scheduler, DBMS_SCHEDULER, DBA, dan arsitek gudang data dapat menentukan kapan harus memulai ekstrak FACT, pengurutan/transformasi/laporan CoSort, dan/atau pemuatan massal, dan menentukan dependensi antara proses ini.
Oracle Job Scheduler membantu pengguna mengelola dan merencanakan tugas yang berbeda sehingga intervensi manual tidak diperlukan. Untuk menggunakan penjadwal pekerjaan, diperlukan tiga skrip kecil:
• Prosedur untuk merakit proses ETL
• Berfungsi untuk menangkap pesan apapun dari program Java
• Program Java untuk menangani panggilan baris perintah ke langkah-langkah ETL:FACT (E), CoSort SortCL (T), dan Oracle SQL*Loader (L)
Setelah skrip siap, pengguna kemudian dapat membuat prosedur untuk mengotomatiskan pekerjaan yang diinginkan. Pengguna dapat menentukan tanggal dan waktu prosedur akan dimulai. Pengguna juga dapat menentukan seberapa sering mereka ingin pekerjaan dijalankan (mingguan, harian, per jam, atau pada waktu dan tanggal tertentu hingga setiap 30 detik).
Penjadwal akan mengelola langkah-langkah tersebut sehingga dilakukan dalam urutan yang benar. Anda juga dapat menentukan pemeriksaan khusus untuk memastikan langkah berikutnya tidak dimulai kecuali langkah sebelumnya telah berhasil atau memenuhi kriteria tertentu.
Pada contoh di bawah ini, pengguna telah memilih prosedur “runFlow” untuk memulai langkah yang ditentukan setiap hari Selasa pukul 8:00, dan setiap Jumat pukul 15:00.
MENNYATAKAN
PekerjaanNo user_jobs.job%TYPE;
v_date1 date :=to_date('20130312 080000′,'yyyymmdd hh24miss');
v_date2 date :=to_date('20130315 150000 ,'yyyymmdd hh24miss');
BEGIN
dbms_job.submit( JobNo, –Job ID
'begin runFlow; end;', — Prosedur untuk dijalankan
v_date1, — mulai berjalan pada
'SYSDATE + 7' — interval tugas
);
COMMIT;
dbms_job.submit( JobNo, –Job ID
'begin runFlow; end; ', — Prosedur untuk mengeksekusi
v_date2, — mulai berjalan pada
'SYSDATE + 7' — interval pekerjaan
);
COMMIT;
END;
Ada manfaat signifikan untuk mengotomatisasi proses ETL dengan cara ini, terutama untuk Oracle DBA yang sudah terbiasa dengan DBMS_SCHEDULER. Metode ini dapat menghemat biaya paket ETL atau penjadwalan pekerjaan yang mahal, meminimalkan kemungkinan kesalahan manusia, dan mencegah kebutuhan akan intervensi manual. Anda juga dapat menggunakan integrasi untuk mengotomatiskan penataan ulang offline dan langkah-langkah terkait ELT.
Jika Anda memiliki pertanyaan tentang penerapan langkah-langkah pekerjaan IRI di Oracle Job Scheduler, atau menginginkan contoh kertas putih, hubungi kami.