>> Mastering Oracle Scheduler in Oracle 11g Databases
By Ronald Rood
Ronald has created a practical and concise guide to the functionality, features and some of the uses of the Oracle Scheduler based on Oracle 11g R1.
The book has ten chapters as follows:
1. Simple Jobs – which describes using anonymous PL/SQL blocks, Stored Procedures, OS Executables and programs which are the basic building blocks of scheduler Jobs.
2. Simple Job Chains – Which covers chains (multi-step jobs) including the steps of a chain and the rules used to evaluate the conditions under which a job step should or should not run. I found the backup example disappointing because the code used DBMS_JOB.SLEEP to “simulate” what would be done in the job but for the same effort an RMAN job could have been used or perhaps another realistic example. However the code does indeed show how to create a simple chain.
3. Control The Scheduler – Which covers Job creation, Job Execution and Job Logging.
4. Managing Resources – This was a good section discussing the relationship between the Scheduler and the Oracle Resource manager and discussed Job Classes, Resource Manager Plans, Scheduler Windows and Window groups. Reading this will help DBAs automate and control the time periods when certain jobs may run.
5. Getting Out of the Database – A useful new 11g feature called the “Remote Job Agent” is explained here showing how to extend the External Executable capability of the Scheduler to remote platforms, Both Linux and Windows installation are covered.
6. Events - This section teaches DBAs how to trigger jobs using “Event Based Scheduling. Some prior knowledge of Advanced Queuing would be useful as the section assumes that the AQ concepts are known. Many DBAs might only know the Streams interface to Queuing but this is still an important section.
7. Debugging the Scheduler - The lesson name here is somewhat modest because the lesson covers known bugs and some patches for them which is not really debugging in the sense that I expected but this was a pleasant addition to the lesson. There is also a short section in the end explaining how to resolve situations if jobs do not run.
8. The Scheduler in Real Life – This covered some “Examples” of using the scheduler for Statistics collection and for Backups. The section on “How to Use the Calendar” was extremely useful answering questions such as “How to Schedule a job on the first day of each month” or the “last working day of a quarter” and several other useful examples of “calendaring expressions”.
9. Other Configurations – This Section explains the use of the Scheduler in RAC and Data Guard configurations and refers to the use of RAC Services and Job Classes. The book suggests that adding a Service name as an attribute of a job class is only useful in RAC to allow the scheduler to run the job in any instance where this service is active. This is all true but associating services with job classes in single instance Oracle is also useful as this permits the workload of a Scheduler job to be attributable to the Service and available in the V$SERVICE_STATS view rather that having the workload attributed to the “sys$user” service.
10. Scheduler GUI Tools – Summarises the use of DB Console, Grid Control and a third party tool called DbVisualizer to manage and monitor the Scheduler.
I found the language and grammar a bit awkward at times with some examples of technical jargon that were non-standard, but this should not detract from the overall benefit of having this book as most DBAs would be reading it for the technical content and this book will be of use on any DBA bookshelf as a Guide to the Scheduler.