日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CDH6.3.0 HUE 整合 Oozie调度

發(fā)布時間:2025/3/21 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CDH6.3.0 HUE 整合 Oozie调度 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

由于oozie的xml配置執(zhí)行各種任務(wù)調(diào)度是在太過于繁瑣,所有一般都使用hue整合oozie來使用

通過hue對oozie進行配置,所以首先保證hue中 time_zone為Asia/Shanghai

cloudera oozie默認時區(qū)是UTC,缺點就是在開發(fā)oozie任務(wù)時必須在期望執(zhí)行的時間上減去8小時,因此很不推薦這樣做。
因此需要修改時區(qū)的配置操作:oozie-site.xml 的 Oozie Server 高級配置代碼段(安全閥)
<property>?
?? ?<name>oozie.processing.timezone</name>
?? ?<value>GMT+0800</value>
</property>

例子為每天定時添加指定分區(qū),分區(qū)為動態(tài)傳參傳入,和腳本類似,參數(shù)取值用${}包圍

  • ?? ?use?數(shù)據(jù)庫名;

  • ?? ?CREATE?TABLE?if?NOT?EXISTS?dw_serv_checi_query_day (

  • ?? ?user_id ? ? ? ? ??string,

  • ?? ?railway_no ? ? ? ?string,

  • ?? ?start_station ? ??string?

  • ?? ?) PARTITIONED?BY?(dt?STRING)ROW?FORMAT?DELIMITED?FIELDS?TERMINATED?BY?'\t'?STORED?AS?TEXTFILE;

  • ?? ?ALTER?TABLE?dw_serv_checi_query_day ?ADD?PARTITION?(dt = ${partdt});

  • ?? ?insert?into?dw_serv_checi_query_day?partition(dt='20190101')?values('1','2','3');


  • 保存為addpart.sql,上傳hdfs

    選擇剛才創(chuàng)建的workflows,選擇定時時間,可以選擇每日,每周,每月等等,選擇任務(wù)有效期,最后要給出參數(shù)的值,
    這里的值是代表前一天的日期,oozie有一些內(nèi)置的常量。保存提交,OK,定時任務(wù)完成了。

    • oozie常用的系統(tǒng)常量

    • 常量表示形式?? ??? ??? ??? ??? ??? ?含義說明

    • ${coord:minutes(int?n)}?? ??? ??? ??? ?返回日期時間:從一開始,周期執(zhí)行n分鐘

    • ${coord:hours(int?n)}?? ??? ??? ??? ?返回日期時間:從一開始,周期執(zhí)行n *?60分鐘

    • ${coord:days(int?n)}?? ??? ??? ??? ?返回日期時間:從一開始,周期執(zhí)行n *?24?*?60分鐘

    • ${coord:months(int?n)}?? ??? ??? ??? ?返回日期時間:從一開始,周期執(zhí)行n * M *?24?*?60分鐘(M表示一個月的天數(shù))

    • ${coord:endOfDays(int?n)}?? ??? ??? ??? ?返回日期時間:從當天的最晚時間(即下一天)開始,周期執(zhí)行n *?24?*?60分鐘

    • ${coord:endOfMonths(1)}?? ??? ??? ??? ?返回日期時間:從當月的最晚時間開始(即下個月初),周期執(zhí)行n *?24?*?60分鐘

    • ${coord:current(int?n)}?? ??? ??? ??? ?返回日期時間:從一個Coordinator動作(Action)創(chuàng)建時開始計算,第n個dataset實例執(zhí)行時間

    • ${coord:dataIn(String?name)}?? ??? ??? ?在輸入事件(input-events)中,解析dataset實例包含的所有的URI

    • ${coord:dataOut(String?name)}?? ??? ??? ?在輸出事件(output-events)中,解析dataset實例包含的所有的URI

    • ${coord:offset(int?n,?String?timeUnit)}?? ??? ?表示時間偏移,如果一個Coordinator動作創(chuàng)建時間為T,n為正數(shù)表示向時刻T之后偏移,n為負數(shù)向向時刻T之前偏移,

    • ?? ??? ??? ??? ??? ??? ?timeUnit表示時間單位(選項有MINUTE、HOUR、DAY、MONTH、YEAR)

    • ${coord:hoursInDay(int?n)}?? ??? ??? ??? ?指定的第n天的小時數(shù),n>0表示向后數(shù)第n天的小時數(shù),n=0表示當天小時數(shù),n<0表示向前數(shù)第n天的小時數(shù)

    • ${coord:daysInMonth(int?n)}?? ??? ??? ?指定的第n個月的天數(shù),n>0表示向后數(shù)第n個月的天數(shù),n=0表示當月的天數(shù),n<0表示向前數(shù)第n個月的天數(shù)

    • ${coord:tzOffset()}?? ??? ??? ??? ?ataset對應(yīng)的時區(qū)與Coordinator Job的時區(qū)所差的分鐘數(shù)

    • ${coord:latest(int?n)}?? ??? ??? ??? ?最近以來,當前可以用的第n個dataset實例

    • ${coord:future(int?n,?int?limit)}?? ??? ??? ?當前時間之后的dataset實例,n>=0,當n=0時表示立即可用的dataset實例,limit表示dataset實例的個數(shù)

    • ${coord:nominalTime()}?? ??? ??? ??? ?nominal時間等于Coordinator Job啟動時間,加上多個Coordinator Job的頻率所得到的日期時間。

    • ?? ??? ??? ??? ??? ??? ?例如:start=”2009-01-01T24:00Z”,end=”2009-12-31T24:00Z”,frequency=”${coord:days(1)}”,

    • ?? ??? ??? ??? ??? ??? ? ? ? ?frequency=”${coord:days(1)},則nominal時間為:2009-01-02T00:00Z、2009-01-03T00:00Z、2009-01-04T00:00Z、…、

    • ?? ??? ??? ??? ??? ??? ? ? ? ?2010-01-01T00:00Z

    • ${coord:actualTime()}?? ??? ??? ??? ?Coordinator動作的實際創(chuàng)建時間。例如:start=”2011-05-01T24:00Z”,end=”2011-12-31T24:00Z”,

    • ?? ??? ??? ??? ??? ??? ?frequency=”${coord:days(1)}”,則實際時間為:2011-05-01,2011-05-02,2011-05-03,…,2011-12-31

    • ${coord:user()}?? ??? ??? ??? ??? ??? ??? ?啟動當前Coordinator Job的用戶名稱

    • ${coord:dateOffset(String?baseDate,?int?instance,?String?timeUnit)}?? ?計算新的日期時間的公式:newDate = baseDate + instance * timeUnit,

    • ?? ??? ??? ??? ??? ??? ??? ??? ?如:baseDate=’2009-01-01T00:00Z’,instance=’2′,timeUnit=’MONTH’,

    • ?? ??? ??? ??? ??? ??? ??? ??? ?則計算得到的新的日期時間為’2009-03-01T00:00Z’。

    • ${coord:formatTime(String?timeStamp,?String?format)}?? ??? ??? ?格式化時間字符串,format指定模式

    beeline -u jdbc:hive2://node1:10000 -n root
    use 數(shù)據(jù)庫名;
    select * from dw_serv_checi_query_day;

    此處因為使用的默認數(shù)據(jù)庫default,因此創(chuàng)建的表直接就存儲在/user/hive/warehouse路徑下

    連續(xù)多個sql腳本按順序定時執(zhí)行

    總結(jié)

    以上是生活随笔為你收集整理的CDH6.3.0 HUE 整合 Oozie调度的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。