用于作业和爬网程序的基于时间的计划 - AWS Glue
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

用于作业和爬网程序的基于时间的计划

您可以在 AWS Glue 中定义用于作业和爬网程序的基于时间的计划。这些计划的定义使用类似于 Unix 的 cron 语法。您可以按 协调世界时 (UTC) 指定时间,计划的最小精度是 5 分钟。

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-week(星期几)字段中输入 ?

  • Day-of-monthDay-of-week 字段中的 L 通配符用于指定月或周的最后一天。

  • Day-of-month 字段中的 W 通配符用于指定工作日。在 Day-of-month 字段中,3W 用于指定最靠近当月的第三周的日。

限制

  • 您无法在同一 Cron 表达式中为 Day-of-monthDay-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 * * ? *)