DataWorks路径可以只填到日期维度吗?不填到小时维度,支持正则表达式吗?
DataWorks支持使用通配符和正则表达式来指定路径,所以您可以在路径中使用日期维度。不过,对于OSS和HDFS等文件系统来说,建议指定精确的文件路径,因为这可以减少不必要的I/O开销和性能损耗。
例如,假设您有一个名为order_log
的日志目录,每天都有一个新的子目录,比如order_log/20230101
、order_log/20230102
等等。您可以使用以下语法来查询当天的日志:
FROM 'oss://my-bucket/order_log/${yyyyMMdd}/' [PARTITION (...)]
这里,${yyyyMMdd}
是一个ODPS SQL的宏,表示当前日期(yyyyMMdd格式)。它会被替换为当前日期的实际值,比如今天是2023年1月1日,则会被替换为20230101
。
如果您想要指定更多的日期范围,可以使用正则表达式,例如:
FROM 'oss://my-bucket/order_log/[0-9]{8}/' [PARTITION (...)]
这样就可以匹配到任何8位数字组成的子目录,例如order_log/20230101
、order_log/20230102
等等。
注意:在查询时,必须确保指定的路径正确无误,以免影响查询性能和结果的准确性。如果存在路径匹配错误,会导致查询失败或结果不准确。如果您不确定路径是否正确,建议先使用LS命令查看是否存在指定的路径。
您需手动填写OSS对象的存储路径。该路径支持使用调度参数,详情请参见DataWorks调度参数。https://help.aliyun.com/zh/dataworks/user-guide/supported-formats-of-scheduling-parameters#concept-2185254
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。