Oracle Scheduler Architecture
Published by : Obay Salah , November 19, 2024
In reality, there are many situations where a database administrator and users need to perform their tasks efficiently through scheduling. Examples of such tasks include creating backup copies, generating reports, and collecting statistics via the Optimizer Statistic and other routine tasks.
In previous versions of Oracle, tasks were scheduled using the DBMS_JOB package. This package is still available but has become less common after the introduction of the new DBMS_SCHEDULER package in Oracle 10g.
There are several processes that operate in the Scheduler Jobs environment and perform various tasks, including the CJQ0 Process, which monitors the DBMS_SCHEDULER_JOBS schedule. This schedule is a table in the data dictionary that contains information about all Scheduler Jobs. When necessary, it executes the jobs, as well as the Jnnn Processes that also execute jobs.
The CJQ0 process places jobs in the Job Queue schedule and then passes them for execution. It also completes these jobs upon request.
Overall, the database administrator can monitor all Scheduler Jobs through the DBMS_SCHEDULER_JOBS schedule in the Data Dictionary and can track the current processes running on the database through the V$PROCESS view.
SELECT PROGRAM FROM V$PROCESS WHERE PROGRAM LIKE '%J%';
There are several entities that can operate in the Scheduler environment, but the primary entity in this environment is the Job, which can perform tasks autonomously.
Through the Job, we can determine and define what we want to do, when we want to do it, and other configuration options that we need in this regard.
Comments
no comment yet!