Databases Reference
In-Depth Information
Oracle Scheduler concepts
A Scheduler should be able to be controlled with a minimum of two basic
parameters, what you want to launch, and when you want to start launching
it (plus how often this task should be launched). A good Scheduler has additional
capabilities such as monitoring, repetition control, suspending, resuming, and
cancelling tasks. In previous Oracle versions (8i to 9i) this was performed by means
of the DBMS_JOB . The problem with this package was that the scheduling mechanism
required you to provide a date expression, not quite readable when the scheduling
was a bit more complex than usual. DBMS_JOB was not originally intended to be a
Scheduler, it was simply designed to be a job initialization utility limited to jobs
inside the database.
When dbms_scheduler was designed (it was originally derived from OEM's mgmt_
jobs ), Oracle had in mind a tool that could make the user's life easier. This tool was
able to manage complex schedules, create scheduling patterns that could be reused,
and launch different tasks seamlessly. You could create a Scheduler for a regular
PLSQL task as well as an OS task that could be launched from the database server
side, all without requiring the OS Scheduler. Sometimes, you may need to launch
a task within a given time frame (maintenance window). During this maintenance
window the task may require special attributes when scheduled, such as a specific
priority, an emphasis on parallelism or other OS resources. There is the need to
create a job pattern for those tasks that require similar scheduling parameters.
Then Oracle created the DBMS_SCHEDULER . This is a powerful tool that in a simple
and elegant way handles complex schedules. In order for you to be able to manage
the Scheduler, you should first get acquainted with some basic Oracle concepts.
Resource
Consumer
Group
Window Group
Resource Plan
Window
Event
Schedule
Time
Job Class
Job
Job Chain
Program
Job = Program + Schedule
 
Search WWH ::




Custom Search