当前位置首页 > 百科> 正文

调度程式

2019-02-23 01:45:51 百科
调度程式

调度程式

调度程式是管理任务的DB2®系统。“任务中心”显示具有活动调度程式的已编目系统或资料库的列表。每次启动任务中心时都必须登录。

基本介绍

  • 中文名:调度程式
  • 外文名:Scheduler
  • 类别:程式
  • 系统:管理任务的DB2®系统
  • 组成:工具目录资料库等
  • 套用:电子程式编写

基本信息

调度程式是管理任务的DB2®系统。“DB2管理伺服器”(DAS)的这个组件包括工具目录资料库,该资料库包含“任务中心”使用的信息。安排一个任务时,“任务中心”使用调度程式的系统时钟来跟蹤调度程式上的任务何时需要运行。
结构图结构图
“任务中心”显示具有活动调度程式的已编目系统或资料库的列表。必须选择一个调度程式系统来与“任务中心”一起工作。当您登录至“任务中心”时,您正在登录至选择的调度程式系统。每次启动任务中心时都必须登录。

调度程式的体系架构

调度的结构包括三个组件:作业表(Job Table)、作业协调进程(Job Coordinator)以及工进程(Job Work Process)。

调度架构

调度结构三个组件作业表、作业协调进程以及工进程的作用说明如下:
1)作业表包含调度管理的作业信息,如作业名称、程式名称以及作业拥有者等。
2)作业协调进程协调作业的执行,查看运行中的作业。
3)作业工进程完成作业要完成的工作。
下图所示是调度的体系架构图。
调度的体系架构调度的体系架构

执行调度程式的许可权

Oracle可以在某个用户模式下创建作业、程式以及调度,但是必须具有相应的许可权才可以创建这些部件,如Create Job许可权来创建调度的作业、程式以及事件。并且对于调度其他模式的过程或程式,必须具备执行这些资料库组件的许可权,即被赋予EXECUTE ANY PROGRAM许可权。下面是对于创建Scheduler以及各种执行许可权的一个总结。
①SCHEDULER ADMIN角色:所有的Scheduler系统许可权。
②DBA角色:包含SCHEDULER ADMIN角色。
③CREATE JOB许可权:创建Scheduler的作业、调度、程式、链以及事件。
④MANAGER SCHEDULER许可权:使用Scheduler的高级组件。
⑤EXECUTE ANY PROGRAM许可权:允许用户在任何模式下执行任何程式。
⑥EXECuTE ANY CLASS许可权:允许将一个作业分配给任何作业类。

调度程式的组件

调度程式由一系列组件组成,当然这些组件是为了完成调度任务,提供调度的灵活性而定义的。它们之间各司其职完成调度任务。
(1)作业:作业将调度与程式结合起来,完成在某个时间间隔或者某个时间段内的任务,这个任务可以是PL/SQL代码,也可以是执行档或者Shell脚本。具体要执行的任务与调度结合,可以在指定的时间开始执行任务以及设定任务执行的频率。
(2)调度:调度是纯粹的时间概念,它告诉任务执行的开始时间,以及任务执行的频率,一个调度可以触发多个具体任务。
(3)程式:程式是具体完成某项任务的单元,包括程式名、类型以及具体动作,程式类型可以是PL/SQL代码块、存储过程或者二进制可执行脚本。
(4)事件:Schedule支持使用事件触发启动具体作业运行,事件使用Schedule的Oracle流高级伫列特性。一个事件由某个进程或程式在具体动作发生时传送讯息来完成。
(5)链:链将多个程式连线起来,这样一个程式的运行有可能以另一个程式的运行为基础,或者基于一个链来启动作业。

调度程式对象

调度程式环境中最基本的对象是作业。作业可以是完全自包含的:它可以定义要执行的动作和执行时间。在更高级的配置中,作业只是由大量各种类型的调度程式对象组成的结构的一部分。
1.作业
作业(job)指定了要执行的动作以及执行动作的时间。“要执行的动作”可以是匿名的PL/SQL块(可只由单条SQL语句构成)、PL/SQL存储过程(可调用Java存储过程或外部过程),或在伺服器的档案系统中存储的任何执行档(既可以是二进制执行档,也可以是shell脚本)。特彆强大的功能(超出了OCP课程的範围)是远程外部作业,该作业在一台单独的机器上运行。“执行动作的时间”指定了启动作业时的时间戳以及用于今后运行的重複时间间隔,或是触发事件。
创建作业时可以使用多个选项,可以从DBMS SCHEDULE·CREATE JOB过程中看到这些选项。这个过程被重载,它至少具有6种形式。图21—1为DBMS SC髒DuLE包的DESCRIBE的部分输出,显示了CREATE JOB的前两种形式。
CREATE_JOB过程的输出行CREATE_JOB过程的输出行
CREATE JOB过程的所有形式都必须指定JOB NAME。在创建该作业的模式内,这个作业名必须是唯一的。注意,作业是模式对象。接着,在CREATE JOB过程的第一种形式中,JOB TYPE必须是如下值之一:
·PLSQL BLOCK:一个匿名的PL/SOL块
·STORED PROCEDURE:一个命名的PL/SQL过程
·EXECUTABLE:在作业系统提示行上的任何可执行程式
·CHAIN:一个命名的作业链对象
·E×TERNAL SCRIPT:作业系统的命令解释器启动的脚本
·SQL SCRIPT:一个SQL*Pius脚本
·BACKUP SCRIPT:一个RMAN脚本
JOB ACTION是要运行的命令、脚本或链。NUMBER OF ARGUMENTS参数指定了JOB ACTION应当接受的参数数量。
如上图所示,CREATE JOB过程的第一种形式中的其他参数继续详细说明了运行作业的时间与频率。START DATE指定了第一次执行作业的时间;REPEAT INTERVAL定义了在到达END DATE所指定时间之前重複执行作业的频率(如每天执行一次)。JOB CLASS与优先权有关,并且集成调度程式与Resource Manager。ENABLED参数决定是否真正运行指定的作业。你可能会感到意外的是:这个参数默认设定为FALSE。如果在这个参数未被设定为TRUE的情况下创建某个作业,那幺该作业只有先启用才能运行(手动运行或者通过某个调度程式运行)。最后,AUTO DROP控制是否在到达END TIME指定的时间之后删除作业定义,这个参数默认为TRUE。如果不使用任何调度信息创建某个作业,那幺这个作业只要一启用就能运行。如果AUTO DROP参数採用默认的设定TRUE,那幺在到达END TIME指定的时间之后就会立即删除这个作业。
2.程式
程式(program)在作业与其将要执行的动作之间提供了一个抽象层。程式是使用DBMSSCHEDULER.CREATE PROGRAM过程创建的。通过从作业定义中取出作业内容并在程式中加以定义,就可以在不同的作业中引用相同的程式,从而不必进行多次定义,就可以将它与不同的时间表和作业类关联在一起。需要记
住的是:就作业而言,只有启用程式才能使用它。默认是不启用。
3.时间表
时间表(schedule)是指定作业运行时间与频率的规范。时间表的基本原理是从作业中取出执行作业的时间,然后将其与不同的作业关联。时间表是使用DBMS—SCHEDULER.CREATE—SCHEDULE过程创建的。START DATE默认为当前的日期与时间,这是与时间表关联的任何作业的运行时间。REPEAT INTERVAL指定了在到达END DATE所表示时问之前作业应当运行的频率。没有设定END DATE的时间表将会一直运行。
REPEAT INTERVAL参数可以接受多种曆法表达式。这些曆法表达式由三种元素组成:频率、时间间隔(默认为1)以及一些说明符。其中,频率可以为下列值之一:
● YEARLY
● MONTHLY
● WEEKLY
● DAILY
● HOURLY
● MINUTELY
● SECONDLY
说明符可以为下列值之一:
● BYMONTH
● BYWEEKNO
● BYYEARDAY
● BYMONTHDAY
● BYHOUR
●BYMINUTE
●BYSECOND

相关短句

1、An addition to the dispatcher that determines which task is toexe cute next.
一种附加调度程式,它确定下一个要执行的任务。
2、Aroutine that controls the order in which in putand out put devicesobta in access to the processing system.
调度程式控制命令的例行程式,由它控制输入和输出装置从而到达处理系统。
3、In soft wareengineering,abasic part of a system or program.For example,the scheduler or supervis or of anoperating system.
在软体工程中,系统或程式的基本部分。例如,作业系统中的调度程式或管理程式。
4、Aqueue of new messages (or agroup) with in a system that area waiting processing.The main scheduling routine will scan the malong with other queuesand order them in to processing in order.
在系统中等待处理的一组或一伫列新信息,主调度程式对该伫列及其它伫列进行扫描,使之顺序进入处理状态。
5、InDPCX,aforward-chainedlist of all threads added to apriority level since that level' sscheduler last refer redtoits queues.
在分散式处理控制执行程式(dpcx)中,自从一个优先权的调度程式最后一次查阅它的伫列以来所添加到这个优先权上的所有执行绪的一个正向连结表。
6、The program in an operating system,or another function alunit,the purpose of which is to dispatch.
作业系统或其它功能单元中起调度作用的程式。
7、acrane formoving material with dispatch as in loading an dunloading ships.
在装卸船上调度物质的起重机。
8、procedure of tax payment
纳税程式
9、The force the reassembled was trivial compared with the Danish horde.
他调度的军队与丹麦的乌合之众相比是微不足道的。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net