用于作业和爬网程序的基于时间的计划
您可以在 AWS Glue 中定义用于作业和爬网程序的基于时间的计划。这些计划的定义使用类似于 Unix 的 cron
要了解有关配置任务和爬网程序以使用计划运行的详细信息,请参阅使用触发器启动作业和爬网程序。
Cron 表达式
Cron 表达式有六个必填字段,之间以空格分隔。
语法
cron(
Minutes
Hours
Day-of-month
Month
Day-of-week
Year
)
字段 | 值 | 通配符 |
---|---|---|
分钟 |
0-59 |
, - * / |
小时 |
0-23 |
, - * / |
日期 |
1-31 |
, - * ? / L W |
月 |
1-12 或 JAN-DEC |
, - * / |
星期几 |
1-7 或 SUN-SAT |
, - * ? / L |
年 |
1970-2199 |
, - * / |
通配符
-
,(逗号)通配符包含其他值。在
Month
字段中,JAN,FEB,MAR
将包含 January、February 和 March。 -
-(破折号)通配符用于指定范围。在
Day
字段中,1-15 将包含指定月份的 1-15 日。 -
*(星号)通配符包含该字段中的所有值。在
Hours
字段中,* 将包含每个小时。 -
/(正斜杠)通配符用于指定增量。在
Minutes
字段中,您可以输入1/10
以指定从一个小时的第一分钟开始的每个第十分钟(例如,第 11 分钟、第 21 分钟和第 31 分钟)。 -
?(问号)通配符用于指定一个或另一个。在
Day-of-month
字段中,您可以输入 7,如果您不介意 7 日是星期几,则可以在“星期几”字段中输入 ?。 -
或 字段中的
Day-of-month
LDay-of-week
通配符用于指定月或周的最后一天。 -
Day-of-month
字段中的 W 通配符用于指定工作日。在Day-of-month
字段中,3W
用于指定最靠近当月的第三周的日。
限制
-
您无法在同一 cron 表达式中为
Day-of-month
和Day-of-week
字段同时指定值。如果您在其中一个字段中指定了值,则必须在另一个字段中使用 ?(问号)。 -
不支持产生的速率快于 5 分钟的 Cron 表达式。
示例
在创建计划时,您可以使用以下示例 cron 字符串。
分钟 | 小时 | 日期 | 月份 | 星期几 | 年 | 含义 |
---|---|---|---|---|---|---|
0 |
10 |
* |
* |
? |
* |
每天上午的 10:00 (UTC) 运行 |
15 |
12 |
* |
* |
? |
* |
每天在下午 12:15 (UTC) 运行 |
0 |
18 |
? |
* |
MON-FRI |
* |
每星期一到星期五的下午 6:00 (UTC) 运行 |
0 |
8 |
1 |
* |
? |
* |
每月第 1 天上午 8:00 (UTC) 运行 |
0/15 |
* |
* |
* |
? |
* |
每 15 分钟运行一次 |
0/10 |
* |
? |
* |
MON-FRI |
* |
从星期一到星期五,每 10 分钟运行一次 |
0/5 |
8-17 |
? |
* |
MON-FRI |
* |
每星期一到星期五的上午 8:00 和下午 5:55 (UTC) 之间,每 5 分钟运行一次 |
例如,要按计划在每天 12:15 UTC 运行,请指定:
cron(15 12 * * ? *)