我一直在尝试找到一个可在我的 AWS Glue 作业中使用的 Cron 表达式。我尝试了很多示例,但仍然不确定这是否可能,因为这是我第一次在 Cloud Formation 模板中向胶水作业添加时间表。
我们正在尝试将胶水作业安排在每月的第 5 个或第 6 个工作日的上午 10:15 运行。
我尝试了一些想法,但没有一个给出一致的结果,并且许多 cron 验证器显示它们是不正确的。 尝试过:
- 0 0 ? * 3#3 *
- 0 0 3-7 * ? *
我想要实现的目标的示例:
本月第 5 个工作日:
- 如果作业于 2023 年 1 月运行,则应于 1 月 6 日运行。
- 如果作业于 2022 年 12 月运行,则应于 12 月 7 日运行。
- 如果作业计划于 2023 年 7 月运行,则应于 7 月 7 日运行。
本月第 6 个工作日:
- 如果作业于 2023 年 1 月运行,则应于 1 月 9 日运行。
- 如果作业于 2022 年 12 月运行,则应于 12 月 8 日运行。
- 如果作业计划于 2023 年 7 月运行,则应于 7 月 10 日运行。
请记住,它将在 Cloud Formation AWS Glue 模板中使用。
最佳答案
在 AWS(至少)中,您无法设置 cron 表达式来匹配“业务/工作日”。对于 cron 表达式,没有“工作日”,只有日历日。
正如您提到的,您可以设置 Lambda 函数来检查当天是否是工作日,然后触发 Gluen 作业。
关于amazon-web-services - AWS Glue - CRON 计划触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75802770/