日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

周期調(diào)度任務(wù)(Periodic Task)

MaxCompute周期調(diào)度任務(wù)(Periodic Task)功能,支持通過SQL語句自定義調(diào)度和計算邏輯,從而高效靈活地管理定時調(diào)度任務(wù),實現(xiàn)更短的周期、高效的運行及低成本的調(diào)度管理。

功能介紹

MaxCompute周期調(diào)度任務(wù)(Periodic Task)可以靈活自定義任務(wù)調(diào)度策略,執(zhí)行對應(yīng)的SQL計算邏輯,來自動構(gòu)建數(shù)據(jù)管道,簡化ETL鏈路。此外,您還可以將任務(wù)與表數(shù)據(jù)變更和流讀場景相結(jié)合,從而實現(xiàn)連續(xù)的ELT工作流程,以處理最近更改的數(shù)據(jù)。該功能具有以下特性:

  • 支持SQL語言,所有針對定時任務(wù)的管理操作均可通過簡潔的SQL語言實現(xiàn)。

  • 支持全生命周期管理:包括創(chuàng)建、修改、刪除、查看以及查看任務(wù)列表和任務(wù)執(zhí)行實例列表。

  • 秒級別周期調(diào)度任務(wù),支持最短10 s的定時調(diào)度。

  • MaxCompute內(nèi)置調(diào)度服務(wù),更高效成本更低。

  • 支持配置實例啟動條件的When表達式,該表達式能夠?qū)崿F(xiàn)較為復(fù)雜的條件判斷。

  • 支持與平臺內(nèi)對象的無縫結(jié)合。例如:支持Delta Table CDC、Object Table等需要定期刷新的對象,提供高效的內(nèi)置調(diào)度服務(wù)。

  • 默認支持增量CDC數(shù)據(jù)后臺自動生成。

創(chuàng)建周期調(diào)度任務(wù)(Periodic Task)

  • 語法

    CREATE TASK [IF NOT EXISTS] <task_name>
        SCHEDULE = "<num> [minute|minutes] | [second|seconds]"
        [TASKPROPERTIES("schedule_strategy"="3",--指定定時調(diào)度任務(wù)重試次數(shù)
                   "odps.namespace.schema"="true" ....];
        [COMMENT task_comment]
        WHEN <bool_expr>
        AS <taskBody>;
  • 參數(shù)說明

    • IF NOT EXISTS:可選,創(chuàng)建任務(wù)時:

      • 若選擇該選項,則無論是否存在同名任務(wù),即使原表結(jié)構(gòu)與要創(chuàng)建的目標任務(wù)結(jié)構(gòu)不一致,均會返回成功,且已存在的同名任務(wù)將不會受到影響。

      • 若未指定該選項,當存在同名任務(wù),將返回報錯。

    • task_name:必填,周期調(diào)度任務(wù)名稱。

    • SCHEDULE = "<num> [minute|minutes] | [second|seconds]":必填,執(zhí)行周期時長,支持的單位為:分鐘、秒。取值范圍:[10秒,59*60秒]。

      說明

      單位為秒的數(shù)值限制為10~59,大于60 s的需要設(shè)置單位為分鐘。

    • TASKPROPERTIES("schedule_strategy"="3","odps.namespace.schema"="true" ....]:可選,定時任務(wù)調(diào)度執(zhí)行SQL時需要指定的參數(shù),均可通過此處配置。常見取值:schedule_strategy:指定定時調(diào)度任務(wù)重試次數(shù)。定時任務(wù)調(diào)度執(zhí)行SQL示例:

      • taskproperties('odps.sql.reducer.instances'='100'):自動啟動的任務(wù)Reduce Task的Instance數(shù)量為100個。

      • taskproperties('odps.sql.reducer.memory'='2048'):自動啟動的任務(wù)Reduce Task的每個Instance的Memory大小為2048 M。

    • COMMENT task_comment:可選, 周期調(diào)度任務(wù)的注釋內(nèi)容。注釋內(nèi)容為長度不超過1024字節(jié)的有效字符串,否則報錯。

    • WHEN:可選,支持配置一個BOOLEAN表達式。僅當該表達式返回True時,后續(xù)SQL的執(zhí)行才會被觸發(fā)。如果未進行配置,則默認值為True。目前對支持的條件語句進行了相應(yīng)的約束,只有部分函數(shù)支持使用。

      說明
      • BOOLEAN表達式內(nèi)常用的SCALAR函數(shù),不能使用窗口函數(shù)和聚合函數(shù),不能使用子查詢嵌套。

      • SCALAR函數(shù)可以使用CURRENT_TIMESTAMP、GETDATE、WEEKDAY等獲取日期、TO_DATE、CONCAT、LENGTH、REGEXP_REPLACE、UPPER、SPLIT等做轉(zhuǎn)換、計算和替換,也可以使用MAX_PT、TABLE_EXISTS、PARTITION_EXISTS、STREAM_HAS_DATA、TABLE_NEED_CDC_BUILD獲取表和分區(qū)的信息等,支持的函數(shù)列表詳情,請參見函數(shù)白名單

    • AS <taskBody>:要執(zhí)行的SQL任務(wù)。SQL語句不支持腳本模式執(zhí)行的語句,目前支持常用的DML和DQL語法, 不支持DDL。

  • 示例

    創(chuàng)建調(diào)度任務(wù)periodic_task1,每5 分鐘(minutes)調(diào)度一次,調(diào)度失敗會重試3次。僅當判斷條件stream_has_data('acid2_stream')返回結(jié)果為true時,執(zhí)行SQL任務(wù)INSERT INTO acid2_table_dest SELECT pk, val FROM acid_stream。代碼示例如下。

    -- 創(chuàng)建一個Delta Table增量表
    CREATE TABLE acid2_table_dest (
      pk bigint NOT NULL PRIMARY KEY, 
      val bigint
    ) tblproperties ("transactional"="true");
    
    -- 創(chuàng)建一個定時調(diào)度任務(wù)periodic_task1
    CREATE task if NOT EXISTS periodic_task1  
      schedule = '5 minutes' 
      taskproperties('schedule_strategy'='3')
      comment 'task_comment'
      WHEN stream_has_data('acid_stream') 
      AS INSERT INTO acid2_table_dest SELECT pk, val FROM acid_stream;
    說明

    其中stream_has_data('acid2_stream') 的條件判斷,等同于在MaxCompute中執(zhí)行select stream_has_data('acid2_stream');

修改定時調(diào)度任務(wù)Periodic Task

  • 語法

    ALTER TASK [IF EXISTS] <task_name>
        SET SCHEDULE = "<num> [minute|minutes] | [second|seconds]"
        [TASKPROPERTIES("schedule_strategy"="3",--指定定時調(diào)度任務(wù)重試次數(shù)
                   "odps.namespace.schema"="true" ....];
        [COMMENT task_comment];
    
    ALTER TASK [IF EXISTS] task_name resume | suspend;
    ALTER TASK [IF EXISTS] task_name MODIFY WHEN <boolean_expr>;
  • 參數(shù)說明

    • IF EXISTS:可選,創(chuàng)建任務(wù)時:

      • 不指定該選項,若指定的定時調(diào)度任務(wù)不存在,則返回出錯。

      • 指定該選項,若指定的定時調(diào)度任務(wù)不存在,將會跳過執(zhí)行并返回成功;存在指定的定時調(diào)度任務(wù)存在,將對指定的任務(wù)進行修改。

    • ALTER TASK [IF EXISTS] task_name resume | suspend;:重啟(resume) 或暫停(suspend)定時調(diào)度任務(wù)。

      說明

      創(chuàng)建定時調(diào)度任務(wù)后會自動啟動,若定時調(diào)度任務(wù)出現(xiàn)問題或手動執(zhí)行了暫停(suspend),導(dǎo)致任務(wù)暫停,您可以通過重啟(resume),重新定時調(diào)度任務(wù)。重啟后通過desc查看定時調(diào)度任務(wù)的狀態(tài)是ACTIVE。

    其他更多相關(guān)參數(shù)說明,請參見創(chuàng)建周期調(diào)度任務(wù)的參數(shù)介紹。

  • 示例

    ALTER task periodic_task_alter1 resume; --重啟周期調(diào)度任務(wù)
    ALTER task periodic_task_alter1 suspend;  --暫停周期調(diào)度任務(wù)
    ALTER task if EXISTS periodic_task_alter1 SET schedule = '6 minute';--修改調(diào)度時間
    ALTER task if EXISTS periodic_task_alter1 SET comment 'comment2';--添加注釋內(nèi)容
    ALTER task if EXISTS periodic_task_alter1 SET taskproperties('session_parameter'='false');--

查看定時調(diào)度任務(wù)(Periodic Task)信息

  • 語法

    DESC task <task_name>;--查看定時調(diào)度任務(wù)信息
    DESC extended task <task_name>;--查看定時調(diào)度任務(wù)信息以及Extended信息。
  • 示例

    查看定時調(diào)度任務(wù)periodic_task1信息。

    DESC task periodic_task1;

    返回結(jié)果如下。

    +------------------------------------------------------------------------------------+
    | Owner:                    ALIYUN$odpstest1@aliyun.com                              |
    | Project:                  sql_odps2_daoxi                                          |
    | Schema:                                                                            |
    | Task:                     periodic_task1                                           |
    +------------------------------------------------------------------------------------+
    | CreateTime:               2024-08-23 11:05:46                                      |
    | LastModifiedTime:         2024-08-23 11:05:46                                      |
    +------------------------------------------------------------------------------------+
    | ScheduleText:             '5 minute'                                               |
    | TaskType:                 SQL                                                      |
    | Query:                    insert into acid2_table_dest select pk, val from acid_stream;                                                |
    | Condition:                stream_has_data('acid_stream')                           |
    | Status:                   ACTIVE                                                   |
    | Comment:                                                                           |
    +------------------------------------------------------------------------------------+
    

刪除定時調(diào)度任務(wù)(Periodic Task)

  • 語法

    DROP TASK [IF EXISTS] <task_name>; 
  • 參數(shù)說明

    • IF EXISTS:可選,刪除任務(wù)時:

      • 不指定該選項,若指定的定時調(diào)度任務(wù)不存在,則返回出錯。

      • 指定該選項,若指定的定時調(diào)度任務(wù)不存在,將會跳過執(zhí)行并返回成功;若指定的定時調(diào)度任務(wù)存在,將刪除指定任務(wù)。

    • task_name:需要刪除的定時調(diào)度任務(wù)(Periodic Task)名稱。

查看所有定時調(diào)度任務(wù)(Periodic Task)列表

您可以通過以下SQL,查看當前MaxCompute項目下的所有定時調(diào)度(Periodic Task)任務(wù)。

SHOW TASKS; 

結(jié)果如下所示:

+--------------------------------------------------------------------------------------------------------------------------------+
| Project:                  openmronlot_daily_arm_src3_xr                                                                        |
| Schema:                                                                                                                        |
+--------------------------------------------------------------------------------------------------------------------------------+
| Tasks:                                                                                                                         |
+--------------------------------------------------------------------------------------------------------------------------------+
| Name                      | Owner                             | CreateTime             | LastModifiedTime       | Status       |
+--------------------------------------------------------------------------------------------------------------------------------+
| periodic_task1            | ALIYUN$odpstest1@aliyun.com       | 2024-07-26 16:19:06    | 2024-07-26 16:19:06    | ACTIVE       |
| periodic_task2            | ALIYUN$odpstest1@aliyun.com       | 2024-07-26 16:19:28    | 2024-07-26 16:19:28    | ACTIVE       |
| periodic_task3            | ALIYUN$odpstest1@aliyun.com       | 2024-07-26 16:20:45    | 2024-07-26 16:20:45    | ACTIVE       |
| periodic_task6            | ALIYUN$odpstest1@aliyun.com       | 2024-08-15 11:09:55    | 2024-08-15 11:09:55    | ACTIVE       |
| periodic_task_alter1      | ALIYUN$odpstest1@aliyun.com       | 2024-07-26 16:17:40    | 2024-07-26 16:17:40    | ACTIVE       |
| periodic_task_condition_task1 | ALIYUN$odpstest1@aliyun.com       | 2024-08-15 11:35:52    | 2024-08-15 11:35:52    | ACTIVE       |
| periodic_task_condition_task_f1 | ALIYUN$odpstest1@aliyun.com       | 2024-08-15 17:59:38    | 2024-08-15 17:59:38    | ACTIVE       |
| periodic_task_condition_task_f2 | ALIYUN$odpstest1@aliyun.com       | 2024-08-15 18:00:18    | 2024-08-15 18:00:18    | ACTIVE       |
| periodic_task_condition_task_f3 | ALIYUN$odpstest1@aliyun.com       | 2024-08-15 18:45:41    | 2024-08-15 18:45:41    | ACTIVE       |
| periodic_task_condition_task_f6 | ALIYUN$odpstest1@aliyun.com       | 2024-08-15 18:49:53    | 2024-08-15 18:49:53    | ACTIVE       |
| periodic_task_ifall_task1 | ALIYUN$odpstest1@aliyun.com       | 2024-08-21 09:17:58    | 2024-08-21 09:17:58    | ACTIVE       |
| periodic_task_ifall_task2 | ALIYUN$odpstest1@aliyun.com       | 2024-08-21 09:26:55    | 2024-08-21 09:26:55    | ACTIVE       |
| periodic_task_negative2   | ALIYUN$odpstest1@aliyun.com       | 2024-07-26 16:15:43    | 2024-07-26 16:15:43    | ACTIVE       |
| periodic_task_negative3   | ALIYUN$odpstest1@aliyun.com       | 2024-07-26 16:17:03    | 2024-07-26 16:17:03    | ACTIVE       |
| task1                     | ALIYUN$odpstest1@aliyun.com       | 2024-07-17 11:36:54    | 2024-07-17 11:36:54    | ACTIVE       |
+--------------------------------------------------------------------------------------------------------------------------------+

查看定時調(diào)度任務(wù)(Periodic Task)自動調(diào)度實例的歷史列表

  • 語法

    SHOW HISTORY FOR TASK <task_name>; 
    說明

    上述命令可以看到定時調(diào)度任務(wù)(Periodic Task)自動調(diào)度實例的InstanceId、CreateTime、EndTime以及Status信息。若需要查看某個自動調(diào)度實例的詳細日志,可以執(zhí)行wait InstanceId命令。例如:wait 2024082309000177gq71ut9g42m可以獲取到MaxCompute Logview地址。您可以在瀏覽器中復(fù)制MaxCompute Logview地址,查看自動調(diào)度實例的詳細日志。

  • 示例

    --查看定時調(diào)度任務(wù)periodic_task1的自動調(diào)度歷史列表信息。
    SHOW HISTORY FOR TASK periodic_task1;

    返回結(jié)果如下。

    +---------------------------------------------------------------------------------------------------+
    | Project:                  xr_project                                                                     |
    | Schema:                                                                                                                     |
    | Task:                     periodic_task1                                                                     |
    +---------------------------------------------------------------------------------------------------+
    | History:                                                                                          |
    +---------------------------------------------------------------------------------------------------+
    | InstanceId                       | CreateTime             | EndTime                | Status       |
    +---------------------------------------------------------------------------------------------------+
    | 20240823093000475gpp5sfmcw92     | 2024-08-23 17:30:00    | 2024-08-23 17:30:03    | Terminated   |
    | 2024082309000177gq71ut9g42m      | 2024-08-23 17:00:00    | 2024-08-23 17:00:02    | Terminated   |
    | 20240823083001129gm2k2uq242m     | 2024-08-23 16:30:00    | 2024-08-23 16:30:02    | Terminated   |
    | 2024082308000127g830w1nunj66     | 2024-08-23 16:00:00    | 2024-08-23 16:00:02    | Terminated   |
    | 20240823073000936gd6nllaizqm     | 2024-08-23 15:30:00    | 2024-08-23 15:30:02    | Terminated   |
    | 20240823070000813g1c1ksw7fgc6    | 2024-08-23 15:00:00    | 2024-08-23 15:00:02    | Terminated   |
    | 20240823063001181glltwkzrtdk     | 2024-08-23 14:30:00    | 2024-08-23 14:30:02    | Terminated   |
    | 20240823060000776goyxv1nunj66    | 2024-08-23 14:00:00    | 2024-08-23 14:00:02    | Terminated   |
    | 2024082305300180g5in7zbo22m      | 2024-08-23 13:30:00    | 2024-08-23 13:30:02    | Terminated   |
    | 20240823050000998g59i62v95y9     | 2024-08-23 13:00:00    | 2024-08-23 13:00:02    | Terminated   |
    | 20240823043000692gf6vtt9g42m     | 2024-08-23 12:30:00    | 2024-08-23 12:30:02    | Terminated   |
    | 20240823040000747gp4drnmcw92     | 2024-08-23 12:00:00    | 2024-08-23 12:00:02    | Terminated   |
    | 20240823033000643gmwn937izqm     | 2024-08-23 11:30:00    | 2024-08-23 11:30:02    | Terminated   |
    | 20240823030000777g4whu60oe72     | 2024-08-23 11:00:00    | 2024-08-23 11:00:02    | Terminated   |
    | 20240823023000838gt2rsw3s9un5    | 2024-08-23 10:30:00    | 2024-08-23 10:30:02    | Terminated   |
    | 20240823020000754gdgj937izqm     | 2024-08-23 10:00:00    | 2024-08-23 10:00:02    | Terminated   |
    | 20240823013000869gw0vv77vx7      | 2024-08-23 09:30:00    | 2024-08-23 09:30:02    | Terminated   |
    | 20240823010000895gcwv2e0stdk     | 2024-08-23 09:00:00    | 2024-08-23 09:00:02    | Terminated   |
    | 20240823003000911gujpaps5tz      | 2024-08-23 08:30:00    | 2024-08-23 08:30:02    | Terminated   |
    | 20240823000000466gc6vlbut7f2     | 2024-08-23 08:00:00    | 2024-08-23 08:00:02    | Terminated   |
    | 20240822233000688go492o8o22m     | 2024-08-23 07:30:00    | 2024-08-23 07:30:02    | Terminated   |
    | 20240822230000524gw39jtv95y9     | 2024-08-23 07:00:00    | 2024-08-23 07:00:02    | Terminated   |
    | 20240822223000394g0g82o8o22m     | 2024-08-23 06:30:00    | 2024-08-23 06:30:01    | Terminated   |
    | 20240822220000691geeksypunj66    | 2024-08-23 06:00:00    | 2024-08-23 06:00:02    | Terminated   |
    | 20240822213000736gil72o8o22m     | 2024-08-23 05:30:00    | 2024-08-23 05:30:02    | Terminated   |
    | 20240822210000712gcmlbuu242m     | 2024-08-23 05:00:00    | 2024-08-23 05:00:03    | Terminated   |
    | 20240822203000397glakbuu242m     | 2024-08-23 04:30:00    | 2024-08-23 04:30:01    | Terminated   |
    | 20240822200000531ghxwgupr9un5    | 2024-08-23 04:00:00    | 2024-08-23 04:00:02    | Terminated   |
    | 20240822193000506gydgvlca68o     | 2024-08-23 03:30:00    | 2024-08-23 03:30:01    | Terminated   |
    | 20240822190000545g1moq4s7fgc6    | 2024-08-23 03:00:00    | 2024-08-23 03:00:02    | Terminated   |
    | 20240822183000199g4gsqclunj66    | 2024-08-23 02:30:00    | 2024-08-23 02:30:01    | Terminated   |
    | 20240822180000405goxm8zsr9un5    | 2024-08-23 02:00:00    | 2024-08-23 02:00:01    | Terminated   |
    +---------------------------------------------------------------------------------------------------+
    

函數(shù)白名單

創(chuàng)建周期調(diào)度任務(wù)(Periodic Task)時,支持配置一個BOOLEAN表達式。目前,對支持的條件語句進行了相應(yīng)的約束,僅以下函數(shù)支持被使用。以下函數(shù)詳情,請參見內(nèi)建函數(shù)(字母排序)

  • DATEADD

  • DATEDIFF

  • DATEPART

  • DATETRUNC

  • DATE_FORMAT

  • FROM_UNIXTIME

  • GETDATE

  • ISDATE

  • LASTDAY

  • LAST_DAY

  • UNIX_TIMESTAMP

  • WEEKDAY

  • WEEKDAY

  • WEEKOFYEAR

  • TO_DATE

  • TO_CHAR

  • YEAR

  • QUARTER

  • MONTH

  • DAY

  • DAYOFMONTH

  • HOUR

  • MINUTE

  • SECOND

  • CURRENT_TIMESTAMP

  • FROM_UTC_TIMESTAMP

  • ADD_MONTHS

  • NEXT_DAY

  • MONTHS_BETWEEN

  • TO_MILLIS

  • ABS

  • ROUND

  • CONCAT

  • CONCAT_WS

  • GET_JSON_OBJECT

  • INSTR

  • LENGTH

  • LENGTHB

  • REGEXP_EXTRACT

  • REGEXP_REPLACE

  • REGEXP_INSTR

  • REGEXP_SUBSTR

  • REGEXP_COUNT

  • REVERSE

  • SUBSTR

  • TOLOWER

  • TOUPPER

  • TRIM

  • LTRIM

  • RTRIM

  • REPLACE

  • SIZE

  • FIELD

  • COALESCE

  • IF

  • SPLIT

  • SPLIT_PART

  • FROM_JSON

  • MAX_PT

  • TABLE_EXISTS

  • PARTITION_EXISTS

  • GET_LATEST_VERSION

  • GET_LATEST_TIMESTAMP