dataphin时间参数配置

2023-10-29 11:50
文章标签 配置 参数 时间 dataphin

本文主要是介绍dataphin时间参数配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

节点参数配置说明
参数配置是用以支持代码中所用参数具体做参数值赋值,类似全局变量作用,从而支持节点调度时,参数可以自动被替换执行。
Dataphin调度系统(Voldemort)节点配置的原则
节点代码中引用参数的方式为: n o d e P a r a m 节 点 参 数 配 置 的 格 式 为 K e y A = V a l u e A ; K e y B = V a l u e B , 不 同 参 数 配 置 之 间 的 用 分 号 ; 进 行 分 隔 节 点 的 K e y 不 区 分 大 小 写 , 因 此 K e y A = V a l u e A 和 k e y a = V a l u e A 是 一 样 的 , 在 引 用 配 置 参 数 的 时 候 , 也 不 会 区 分 大 小 写 , 因 此 在 引 用 配 置 参 数 的 时 候 , 可 以 使 用 {nodeParam} 节点参数配置的格式为 KeyA=ValueA; KeyB=ValueB, 不同参数配置之间的用分号;进行分隔 节点的Key不区分大小写, 因此KeyA=ValueA和keya=ValueA是一样的, 在引用配置参数的时候, 也不会区分大小写, 因此在引用配置参数的时候, 可以使用 nodeParamKeyA=ValueA;KeyB=ValueB,;Key,KeyA=ValueAkeya=ValueA,,,,使{KeyA}或 k e y a 或 {keya}或 keya{keyA}都是可以的.
节点配置支持参数的引用, 引用格式为 KeyA= K e y B ; K e y B = V a l u e B , 使 用 引 用 符 号 KeyB; KeyB=ValueB, 使用引用符号 KeyB;KeyB=ValueB,使, 则此时相当于KeyA=ValueB; KeyB=ValueB. 但是这里必须注意, Voldemort会进行循环引用的检测, 因此KeyA= K e y B ; K e y B = KeyB; KeyB= KeyB;KeyB=KeyA或者bizdate=$bizdate这种参数配置在Voldemort中是非法的.
伏地魔提供默认的节点参数配置项, 包括:

默认参数值:{yyyyMMdd}为业务日期,即当前日期的前一天T-1,[yyyyMMdd]为执行日期,即当前日期T
默认参数:bizdate,nodeid,taskid,生产业务板块名和生产项目名.其中 nodeid是节点id, taskid是节点生成实例时候的实例id, bizdate默认为当前日期的前一天,即参数默认参数值赋值为{yyyyMMdd},eg:如果今天是2018年1月10日, 则默认bizdate=20180109,生产业务板块名为当前系统所有生产业务板块名,开发环境执行时替换为开发板块名,生产环境执行时替换为生产板块名,eg:如果系统有Dev-Prod模式生成的生产业务板块为是LD_demo, 则默认生产环境里 L D d e m o 执 行 代 码 时 更 新 为 L D d e m o , 开 发 环 境 里 {LD_demo}执行代码时更新为LD_demo,开发环境里 LDdemoLDdemo{LD_demo}执行代码时更新为LD_demo_dev。 默认参数bizdate的设置及执行效果
可以在节点代码中直接引用这些参数配置项。①支持代码中自定义参数,引用默认参数值,如time= t o d a y , 调 度 参 数 配 置 为 t o d a y = {today},调度参数配置为 today= todaytoday=[yyyyMMdd],则2019年2月28日调度执行时,执行代码为time=20190228. ②如果用户配置的参数和默认参数有重复冲突, 则用户配置的参数赋值会覆盖默认规则. 例如配置了bizdate=ABC, 则在节点代码中引用bizdate时, 该bizdate的值会被替换为ABC,而不是具体日期参数值yyyymmdd。 默认参数bizdate配置为其他参数值的设置及执行效果

即席查询支持参数识别与设置,但是与调度系统规则有所不同,{bizdate}执行时,系统会识别并默认填入执行日期为默认值(2019年2月28日查询执行时,执行代码为替换为20190228),其他参数不会填入默认值,系统会记住当前界面会话下,用户最新填入的参数值,会话有效期内,执行时默认填入最新参数值。
Dataphin调度系统(Voldemort)时间参数的配置
日调度等:提供基于业务日期和预计执行时间两种方式, 基于业务日期的方式: ${yyyyMMdd}; 基于预计执行时间的方式: [ y y y y M M d d ] 。 可 参 考 示 例 配 置 , 实 现 月 调 度 、 年 调 度 小 时 、 分 钟 调 度 : 提 供 基 于 小 时 和 分 钟 偏 移 , 而 实 现 的 小 时 调 度 、 分 钟 调 度 , 暂 不 支 持 秒 。 H H 表 示 小 时 , m i ( 或 m m ) 表 示 分 钟 , s s 表 示 秒 , 小 时 的 偏 移 : d e l t a / 24 , 分 钟 的 偏 移 : d e l t a / 24 / 60 。 例 如 在 指 定 执 行 时 间 前 一 小 时 的 表 达 式 为 : [yyyyMMdd]。可参考示例配置,实现月调度、年调度 小时、分钟调度:提供基于小时和分钟偏移,而实现的小时调度、分钟调度,暂不支持秒。HH表示小时,mi(或mm)表示分钟,ss表示秒,小时的偏移: delta/24, 分钟的偏移: delta/24/60。 例如在指定执行时间前一小时的表达式为: [yyyyMMdd]HH,mi(mm),ss:delta/24,:delta/24/60:[HH-1/24], 在业务日期前1分钟:${HHmmss-1/24/60}
特别说明:如果配置的时间参数只精确到日, 那么小写的mm会被识别为月份。当同时有月和分钟存在的时候, 为了避免歧义, 需要将月大写为MM, 将分钟小写为mm,否则会统一识别为分钟,从而导致月份参数出错(比如更新为大于12的数值)
具体的配置可以参考下面的表格
在这里插入图片描述
特别说明:

周期实例: 系统时间=T(取生成实例的时间) bizdate=T-1(根据系统时间获取默认取值,调度配置参数取值可修改)→影响数据读写的时间分区值 预计执行时间=bizdate+1=T(根据bizdate获取)→影响数据生成时间

补数据实例: 系统时间=T(取生成实例的时间) Bizdate<=T(补数据时传入值)→影响数据读写的时间分区值 预计执行时间=Bizdate+1 →影响数据生成时间 ①如Bizdate+1<=T,取Bizdate+1 ②如bizdate+1>T,特殊处理为T 执行时,会根据调度配置时实例预计执行小时运行(如调度配置设置了定时以及分时段运行等)

这篇关于dataphin时间参数配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/300464

相关文章

一文详解PostgreSQL复制参数

《一文详解PostgreSQL复制参数》PostgreSQL作为一款功能强大的开源关系型数据库,其复制功能对于构建高可用性系统至关重要,本文给大家详细介绍了PostgreSQL的复制参数,需要的朋友可... 目录一、复制参数基础概念二、核心复制参数深度解析1. max_wal_seChina编程nders:WAL

Python日期和时间完全指南与实战

《Python日期和时间完全指南与实战》在软件开发领域,‌日期时间处理‌是贯穿系统设计全生命周期的重要基础能力,本文将深入解析Python日期时间的‌七大核心模块‌,通过‌企业级代码案例‌揭示最佳实践... 目录一、背景与核心价值二、核心模块详解与实战2.1 datetime模块四剑客2.2 时区处理黄金法

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑

macOS Sequoia 15.5 发布: 改进邮件和屏幕使用时间功能

《macOSSequoia15.5发布:改进邮件和屏幕使用时间功能》经过常规Beta测试后,新的macOSSequoia15.5现已公开发布,但重要的新功能将被保留到WWDC和... MACOS Sequoia 15.5 正式发布!本次更新为 Mac 用户带来了一系列功能强化、错误修复和安全性提升,进一步增

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

Pandas进行周期与时间戳转换的方法

《Pandas进行周期与时间戳转换的方法》本教程将深入讲解如何在pandas中使用to_period()和to_timestamp()方法,完成时间戳与周期之间的转换,并结合实际应用场景展示这些方法的... 目录to_period() 时间戳转周期基本操作应用示例to_timestamp() 周期转时间戳基

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

VSCode中配置node.js的实现示例

《VSCode中配置node.js的实现示例》本文主要介绍了VSCode中配置node.js的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一.node.js下载安装教程二.配置npm三.配置环境变量四.VSCode配置五.心得一.no

JavaScript时间戳与时间的转化常用方法

《JavaScript时间戳与时间的转化常用方法》在JavaScript中,时间戳(Timestamp)通常指Unix时间戳,即从1970年1月1日00:00:00UTC到某个时间点经过的毫秒数,下面... 目录1. 获取当前时间戳2. 时间戳 → 时间对象3. 时间戳php → 格式化字符串4. 时间字符