全部產品
Search
文件中心

Lindorm:通過DMS管理作業

更新時間:Jul 06, 2024

Lindorm計算引擎支援通過Data Management的任務編排功能來調度Lindorm Spark任務,並查看Lindorm Spark任務發布記錄和日誌,滿足使用者在資料生產、互動式分析、機器學習和圖計算等情境中的計算需求。本文介紹通過DMS管理Lindorm Spark作業的方法。

前提條件

建立Lindorm Spark任務流

  1. 登入Data Management 5.0

  2. 進入任務編排頁面。

    • DMS極簡模式:

      1. 情境引導地區,單擊資料轉送與加工(DTS)

      2. 在右側資料加工地區,單擊任務編排卡片。

    • DMS非極簡模式:在頂部功能表列中,選擇整合與開發(DTS) > 資料開發 > 任務編排

  3. 任務編排頁面,單擊新增任務流

  4. 新增任務流對話方塊中,輸入任務流名稱描述,並單擊確認

  5. 在左側任務類型列表中,拖拽Lindorm Spark任務節點到空白地區,並通過連線的方式定義任務節點之間的依賴關係。

  6. 配置Lindorm Spark任務節點。

    1. 雙擊Lindorm Spark任務節點或者單擊Lindorm Spark任務節點並選擇配置節點

    2. 在開啟的任務節點頁面中,配置基礎參數和運行作業的自訂參數。

      • 基礎配置地區配置基礎參數,基礎參數說明如下表:

        參數

        說明

        地區

        選擇目標Lindorm執行個體所屬的地區。

        Lindorm執行個體

        選擇目標Lindorm執行個體ID。

        任務類型

        選擇Spark作業類型,支援以下兩種:

        • JAR

        • Python

        • SQL

      • 作業配置地區配置運行作業的自訂參數。以下列出不同的Spark作業配置模板和自訂參數說明。

        • JAR作業配置模板和自訂參數說明如下:

          {
            "mainResource" : "oss://path/to/your/file.jar",
            "mainClass" : "path.to.main.class",
            "args" : [ "arg1", "arg2" ],
            "configs" : {
              "spark.hadoop.fs.oss.endpoint" : "",
              "spark.hadoop.fs.oss.accessKeyId" : "",
              "spark.hadoop.fs.oss.accessKeySecret" : "",
              "spark.hadoop.fs.oss.impl" : "org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem",
              "spark.sql.shuffle.partitions" : "20"
            }
          }

          參數

          參數類型

          是否必填

          說明

          樣本值

          mainResource

          String

          JAR包儲存在HDFS或OSS的路徑。

          • JAR包儲存至HDFS:hdfs:///path/spark-examples_2.12-3.1.1.jar

          • JAR包儲存至OSS:oss://testBucketName/path/spark-examples_2.12-3.1.1.jar

          mainClass

          String

          JAR作業的程式入口類。

          com.aliyun.ldspark.SparkPi

          args

          Array

          傳入mainClass參數。

          ["arg1", "arg2"]

          configs

          Json

          Spark系統參數配置。此外,如果您已將作業上傳至OSS,則需要在此增加以下配置:

          • spark.hadoop.fs.oss.endpoint:儲存作業的OSS地址。

          • spark.hadoop.fs.oss.accessKeyId:通過阿里雲控制台建立的Access Key ID,擷取方法請參見建立AccessKey

          • spark.hadoop.fs.oss.accessKeySecret:通過阿里雲控制台擷取Access Key Secret,擷取方法請參見建立AccessKey

          • spark.hadoop.fs.oss.impl:訪問OSS的類。固定值為:org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem。

          { "spark.sql.shuffle.partitions": "200"}

        • Python作業配置模板和自訂參數說明如下:

          {
            "mainResource" : "oss://path/to/your/file.py",
            "args" : [ "arg1", "arg2" ],
            "configs" : {
              "spark.hadoop.fs.oss.endpoint" : "",
              "spark.hadoop.fs.oss.accessKeyId" : "",
              "spark.hadoop.fs.oss.accessKeySecret" : "",
              "spark.hadoop.fs.oss.impl" : "org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem",
              "spark.submit.pyFiles" : "oss://path/to/your/project_file.py,oss://path/to/your/project_module.zip",
              "spark.archives" : "oss://path/to/your/environment.tar.gz#environment",
              "spark.sql.shuffle.partitions" : "20"
            }
          }

          參數

          參數類型

          是否必選

          說明

          樣本值

          mainResource

          String

          Python檔案儲存體在OSS或者HDFS的路徑。

          • Python檔案儲存體至OSS:oss://testBucketName/path/spark-examples.py

          • Python檔案儲存體至HDFS:hdfs:///path/spark-examples.py

          args

          Array

          傳入mainClass參數。

          ["arg1", "arg2"]

          configs

          Json

          Spark系統參數配置。如果將作業上傳至OSS,需要在此配置以下參數:

          • spark.hadoop.fs.oss.endpoint:儲存作業的OSS地址。

          • spark.hadoop.fs.oss.accessKeyId:通過阿里雲控制台建立的Access Key ID,擷取方法請參見建立AccessKey

          • spark.hadoop.fs.oss.accessKeySecret:通過阿里雲控制台擷取Access Key Secret,擷取方法請參見建立AccessKey

          • spark.hadoop.fs.oss.impl:訪問OSS的類。固定值為:org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem。

          {"spark.sql.shuffle.partitions": "200"}

        • SQL作業配置模板和自訂參數說明如下:

          {
            "mainResource" : "oss://path/to/your/file.sql",
            "configs" : {
              "spark.hadoop.fs.oss.endpoint" : "",
              "spark.hadoop.fs.oss.accessKeyId" : "",
              "spark.hadoop.fs.oss.accessKeySecret" : "",
              "spark.hadoop.fs.oss.impl" : "org.apache.hadoop.fs.aliyun.oss.AliyunOSSFileSystem",
              "spark.sql.shuffle.partitions" : "20"
            }
          }

          參數

          參數類型

          是否必選

          說明

          樣本

          mainResource

          String

          SQL檔案儲存體在OSS或者HDFS的路徑。

          • SQL檔案儲存體至OSS:oss://testBucketName/path/spark-examples.sql

          • SQL檔案儲存體至HDFS:hdfs:///path/spark-examples.sql

          configs

          Json

          SQL作業的其他相關配置。

          { "spark.executor.memory" : "8g"}

    3. 完成以上配置後,單擊頁面左上方的試運行,檢查作業運行效果是否符合預期。

  7. 發布任務流。所有的任務節點配置完成後,單擊任務流名稱頁面左上方的發布

    發布任務流

查看任務流的發布記錄和日誌

  1. 任務編排頁面單擊目標任務流名稱。

  2. 單擊任務流名稱頁面右上方的前往營運

    查看發布記錄

  3. 查看任務流的發布記錄和日誌。

    • 查看任務流的發布記錄。在任務流資訊頁面,單擊發布列表頁簽可以查看任務流的發布記錄。發布記錄

    • 查看任務流的日誌。

      1. 運行記錄頁簽左上方的下拉式清單中選擇定時觸發或者手動觸發,可以查看任務流中所有任務節點的詳細資料。查看任務日誌

      2. 單擊任務節點名稱後面的查看,可以查看Lindorm Spark任務作業的提交日誌,擷取該任務節點的JobID和SparkUI。

        說明

        如果任務提交失敗,請將JobID和SparkUI提供給工單處理人員並提交工單

任務流進階配置

說明

通過Data Management控制台對Lindorm Spark任務流進行相關配置,配置完成後需要重新發布任務流。

調度配置

根據業務需求配置相應的調度策略,Lindorm Spark任務流會根據該調度策略自動執行。配置方法如下:

  1. 任務編排頁面單擊目標任務流名稱。

  2. 單擊任務流名稱頁面左下角的任務流資訊

    任務流資訊

  3. 在右側調度配置地區,開啟開啟調度開關,配置調度策略,配置項說明如下表。

    配置項

    說明

    調度類型

    選擇調度類型:

    • 周期調度:周期性調度任務,例如一周執行一次任務。

    • 調度一次:在指定時間執行一次任務,僅需要配置執行任務的具體時間。

    生效時間

    選擇調度周期生效的區間,預設1970-01-01~9999-01-01,表示一直生效。

    調度周期

    選擇調度任務的周期:

    • 小時:按設定的小時執行任務調度,需要配置定時調度。

    • :按每日一次的頻率執行任務調度,需要配置每日調度的具體時間。

    • :以周為周期,每個指定天執行一次任務調度,需要配置指定時間和具體時間。

    • :以月為周期,每個指定天執行一次任務調度,需要配置指定時間和具體時間。

    定時調度

    提供了2種定時調度的方式:

    • 固定間隔時間調度:

      • 開始時間:執行任務的開始時間。

      • 間隔時間:執行任務的間隔時間,單位為小時。

      • 結束時間:執行任務的結束時間。

      例如,配置開始時間為00:00、間隔時間為6小時、結束時間為20:59,系統將在0點、6點、12點、18點執行任務。

    • 指定時間調度:選擇執行任務的目標時間點。

      例如選擇和0小時和5小時,系統將在0點和5點執行任務。

    指定時間

    • 如果調度周期為周,選擇星期幾執行任務,支援多選。

    • 如果調度周期為月,選擇每月幾號執行任務,支援多選。

    具體時間

    設定執行任務流的具體時間。

    例如配置02:55,系統將在指定天的02時55分執行任務。

    cron運算式

    不需要手動設定,系統會根據您配置的周期、具體時間自動展現。

    調度配置樣本:如果需要配置任務流在每天0點和12點進行調度,調度策略配置如下。

    • 調度類型選擇周期調度。

    • 調度周期選擇小時。

    • 定時調度選擇指定時間,同時在指定時間列表中選擇0小時和12小時。

變數配置

對於周期調度的任務流,可以將調度時間作為參數傳遞給要執行的任務。例如:將業務時間bizdate(已耗用時間的前一天)傳遞給任務節點,按照如下步驟配置時間變數。

  1. 在任務流名稱頁面,雙擊Lindorm Spark任務節點或者Lindorm Spark任務節點並選擇配置節點

  2. 在右側功能表列選擇變數設定

  3. 節點變數或者任務流變數頁簽中添加變數名。

  4. 作業配置地區中使用變數。更多變數請參見變數

    使用變數

通知配置

如果開啟通知開關,系統會根據任務流執行的結果發送相應的通知訊息。開啟通知方法如下:

  1. 單擊任務流名稱頁面左下角的通知配置

  2. 根據業務需求開啟對應的通知開關。

    • 基本通知

      • 成功通知:任務流執行成功發送通知資訊。

      • 失敗通知:任務流執行失敗發送通知資訊。

    • 逾時通知:任務流執行逾時發送通知資訊。

    • 預警通知:任務即將開始時發送通知資訊。

  3. 可選:配置訊息接收人,請參見訊息通知管理

互動式SQL

  1. 登入Data Management 5.0

  2. 單擊首頁頁簽。

  3. 在左側導覽列,單擊image.png建立執行個體。

  4. 新增執行個體對話方塊中,選擇NoSQL資料庫分類中的Lindorm_Compute

    image.png

  5. 填寫Lindorm執行個體的執行個體地區執行個體ID資料庫帳號資料庫密碼,並單擊提交

  6. 在彈出的對話方塊中單擊確定,進入SQL編輯視窗。

  7. SQLConsole輸入SQL語句,單擊執行

相關文檔

有關Data Management的任務編排功能,詳情請參見概述