在创建作业过程中,支持在作业参数中设置时间变量通配符。
变量通配符格式
E-MapReduce 所支持的变量通配符的格式为${dateexpr-1d} 或者 ${dateexpr-1h} 的格式。例如,假设当前时间为“20160427 12:08:01”:
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
在阿里云E-MapReduce服务中,创建作业时支持使用时间变量通配符来动态生成与时间相关的参数,这为需要按时间分区处理数据的任务提供了便利。根据您的描述,这里有几个关键点和一个示例来帮助理解如何应用这些时间变量通配符:
${dateexpr-Nx}
,其中dateexpr
是一个遵循特定格式的时间表达式(如yyyyMMdd HH:mm:ss
或yyyyMMdd
),而Nx
表示相对于当前时间的偏移量,可以是天(d
)或小时(h
),N为整数。-1d
表示前一天,5h
表示五个小时之后。假设当前时间为“2016年04月27日 12:08:01”,作业参数中设置了一个应用参数,比如用于指定输出路径包含日期的部分,如下所示:
oss://emr/output/pt=${yyyyMMdd}
执行时,这个参数会被自动替换为:
oss://emr/output/pt=20160427
这意味着输出路径会指向一个代表当天日期的目录。
如果您需要处理前一天的数据,可以这样设置参数:
oss://emr/output/pt=${yyyyMMdd-1d}
执行时,它将被替换为:
oss://emr/output/pt=20160426
这样就方便地指定了前一日的数据处理目录。
通过这种方式,您可以灵活地安排定时任务,确保它们总是针对正确的时间范围进行操作,无需手动每天调整作业参数。