作業(yè)日期設(shè)置
在作業(yè)編輯的過程中,支持在作業(yè)參數(shù)中設(shè)置時(shí)間變量通配符。
變量通配符格式
請注意時(shí)間格式的大小寫。
格式 | 描述 |
---|---|
yyyy | 表示4位的年份。 |
MM | 表示月份。 |
dd | 表示天。 |
HH | 表示24小時(shí)制,12小時(shí)制使用hh。 |
mm | 表示分鐘。 |
ss | 表 |
時(shí)間變量可以是包含yyyy年份的任意時(shí)間組合,同時(shí)支持用加號(+)和減號(-)來分別表示延后和提前。例如,變量${yyyy-MM-dd}表示當(dāng)前日期,則:
后1年的表示方式:${yyyy+1y}或者${yyyy-MM-dd hh:mm:ss+1y}。
后3月的表示方式:${yyyyMM+3m}或者${yyyy-MM-dd hh:mm:ss+3m}。
前5天的表示方式:${yyyyMMdd-5d}或者${yyyy-MM-dd hh:mm:ss-5d}。
例如,假設(shè)當(dāng)前時(shí)間為20160427 12:08:01,則:
如果在作業(yè)參數(shù)中寫成${yyyyMMdd HH:mm:ss-1d},那么這個(gè)參數(shù)通配符在真正執(zhí)行的時(shí)候會(huì)被替換成20160426 12:08:01,即在當(dāng)前日期上減了一天并精確到了秒。
如果寫成${yyyyMMdd-1d},則執(zhí)行時(shí)會(huì)替換成20160426, 表示當(dāng)前日期的前一天。
如果寫成${yyyyMMdd},則會(huì)被替換成20160427,直接表示當(dāng)前的日期。
目前DDI僅支持小時(shí)和天維度的加減,即只支持在dateexpr后面+Nd、-Nd、+Nh、-Nh的形式(dateexpr為時(shí)間格式表達(dá)式,N為整數(shù))。
時(shí)間變量參數(shù)必須以yyyy開始,如${yyyy-MM}。如果希望單獨(dú)獲取月份等特定時(shí)間區(qū)域的值,可以在作業(yè)內(nèi)容中使用如下兩個(gè)函數(shù)提取:
parseDate(<參數(shù)名稱>, <時(shí)間格式>):將給定參數(shù)轉(zhuǎn)換為Date對象。其中,參數(shù)名稱為上述配置參數(shù)中設(shè)置的一個(gè)變量名,時(shí)間格式為設(shè)置該變量時(shí)所使用的時(shí)間格式。如設(shè)置一個(gè)變量current_time = ${yyyyMMddHHmmss-1d},則此處時(shí)間格式應(yīng)設(shè)置為yyyyMMddHHmmss。
formatDate(<Date對象>, <時(shí)間格式>):將給定Date對象轉(zhuǎn)換為給定格式的時(shí)間字符串。函數(shù)使用示例:
- 獲取current_time變量的小時(shí)字面值:${formatDate(parseDate(current_time, 'yyyyMMddHHmmss'), 'HH')}
- 獲取current_time變量的年字面值:${formatDate(parseDate(current_time, 'yyyyMMddHHmmss'), 'yyyy')}
操作示例
進(jìn)入項(xiàng)目空間頁面。
使用阿里云賬號登錄Databricks數(shù)據(jù)洞察控制臺。
在Databricks數(shù)據(jù)洞察控制臺頁面,選擇所在的地域(Region)。創(chuàng)建的集群將會(huì)在對應(yīng)的地域內(nèi),一旦創(chuàng)建后不能修改。
在左側(cè)導(dǎo)航欄,單擊項(xiàng)目空間。
在項(xiàng)目空間頁面,單擊待操作項(xiàng)目所在行的作業(yè)編輯。
進(jìn)行作業(yè)設(shè)置。
在作業(yè)編輯頁面,選擇需要操作的作業(yè)名稱,單擊右上角的作業(yè)設(shè)置。
在配置參數(shù)區(qū)域,單擊+圖標(biāo),新增參數(shù),并按照上文介紹的變量通配符格式填寫參數(shù)。
配置完成后就可以在作業(yè)中引用配置參數(shù)的Key了。