计划快照
要精确控制创建快照的时间,您可以为特定命名空间创建快照计划。计划快照的创建时,您可以创建一次性事件,也可以使用 Unix 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 |
, - * / |
通配符
-
,(逗号)通配符包含其他值。在
Day-of-week
字段中,MON,WED,FRI
将包含星期一、星期三和星期五。总值限制为每字段 24 个。 -
-(破折号)通配符用于指定范围。在
Hour
字段中,1–15 将包含指定日期的 1 - 15 小时。 -
*(星号)通配符包含该字段中的所有值。在
Hours
字段中,* 将包含每个小时。 -
/(正斜杠)通配符用于指定增量。在
Hours
字段中,您可以输入1/10
来指定从当天的第 1 个小时开始每隔 10 小时(例如,01:00、11:00 和 21:00)。 -
?(问号)通配符用于指定一个或另一个。在
Day-of-month
字段中,您可以输入 7,如果您不介意 7 日是星期几,则可以在“星期几”字段中输入 ?。 -
或 字段中的
Day-of-month
LDay-of-week
通配符用于指定月或周的最后一天。 -
Day-of-month
字段中的 W 通配符用于指定工作日。在Day-of-month
字段中,3W
用于指定最靠近当月的第三周的日。 -
“星期几”字段中的 # 通配符用于指定一个月内所指定星期几的特定实例。例如,3#2 指该月的第二个星期二:3 指的是星期二,因为它是每周的第三天,2 是指该月内该类型的第二天。
注意
如果使用 “#” 字符,则只能在星期字段中定义一个表达式。例如,“3#1,6#3”是无效的,因为它被解释为两个表达式。
限制
-
您无法在同一 cron 表达式中为
Day-of-month
和Day-of-week
字段同时指定值。如果您在其中一个字段中指定了值,则必须在另一个字段中使用 ?(问号)。 -
快照计划不支持以下频率:
-
计划快照的频率超过每小时 1 次。
-
计划快照的频率低于每天 1 次(24 小时)。
如果您有重叠的计划导致在 1 小时时段内计划了多次快照,将产生验证错误。
-
下表提供了一些示例 cron 字符串。
分钟 | 小时 | 星期几 | 意义 |
---|---|---|---|
0 |
14-20/1 |
TUE |
星期二下午 2 点到晚上 8 点之间,每小时拍摄一次。 |
0 |
21 |
MON-FRI |
每天晚上 9 点,星期一至星期五。 |
30 |
0/6 |
SAT-SUN |
星期六和星期日从当天午夜 30 分 (00:30) 开始,每 6 小时拍摄一次。这导致在每天的 [00:30、06:30、12:30 和 18:30] 拍摄快照。 |
30 |
12/4 |
* |
每天从 12:30 开始,每 4 小时拍摄一次。这将解析为 [12:30、16:30、20:30]。 |
以下示例演示如何创建每天从 15:15 开始,以 2 小时为增量运行的计划。
cron(15 15/2 *)
目前,您只能使用 Amazon Redshift Serverless API 或 AWS CLI 创建快照计划。有关这些操作的更多信息,请参阅 Using the AWS CLI and Amazon Redshift Serverless API。