[發明專利]一種基于airflow和yarn的任務調度方法、裝置及介質有效
| 申請號: | 201910900859.0 | 申請日: | 2019-09-23 |
| 公開(公告)號: | CN110673939B | 公開(公告)日: | 2021-12-28 |
| 發明(設計)人: | 洪嘉凱;巫朝星;陳旺明;林智輝;鄭旭 | 申請(專利權)人: | 漢納森(廈門)數據股份有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48 |
| 代理公司: | 廈門福貝知識產權代理事務所(普通合伙) 35235 | 代理人: | 陳遠洋 |
| 地址: | 361000 福建省廈門市廈*** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 airflow yarn 任務 調度 方法 裝置 介質 | ||
本發明提供了一種基于airflow和yarn的任務調度方法、裝置及介質。本發明確定一組任務中任務之間的依賴關系、該項任務最早能執行的時間和每個任務必須結束的截止時間,并動態設置每個任務的允許運行的時間范圍,并生成該任務的python文件,利用爬蟲爬取該組任務的所有任務的運行情況,并生成資源疊加圖和網絡甘特圖,基于資源疊加圖和網絡甘特圖調整任務的執行順序。本發明通過統計任務的執行時間和計算資源內存占用,結合關鍵路徑分析法和系統計算資源的實際使用情況,使用資源疊加圖和網絡甘特圖對任務的執行順序進行自動優化,從而使得任務總的執行時間自動優化,降低忙時資源搶占,提高閑時資源利用率,并提出了任務移動的具體條件。
技術領域
本發明涉及計算機任務調度技術領域,特別是一種基于airflow和yarn的任務調度方法、裝置及存儲介質。
背景技術
當前,一組有依賴關系的大數據相關作業運行時,由于作業采用網絡圖的形式進行規劃執行,作業間存在并行執行的情況,由于計算資源利用的波動較大,并行作業在高峰時發生資源搶占,導致整組任務的整體運行時間變長。
現有技術中,在任務調度時限制yarn任務運行的使用資源量,而沒有考慮到峰谷的情況,單純的限制資源使用量也不利于任務更快執行完。但是任務之間的資源搶占還是存在的,這會整組任務執行時間變長。
因此,現有技術中,存在如下缺陷:無法基于任務之間的依賴關系解決任務搶占的問題,或者解決了搶占問題后執行時長沒有縮短或者變長,即執行效率更低了,即沒有充分利用計算資源。
發明內容
本發明針對上述現有技術中的缺陷,提出了如下技術方案。
一種基于airflow和yarn的任務調度方法,該方法包括:
確定步驟,確定一組任務中的一項任務taski與其他任務之間的依賴關系Di、該項任務最早能執行的時間TZi和每個任務必須結束的截止時間TDi,并動態設置每個任務的允許運行的時間范圍TPi,然后將taski、Di、TZi、TDi和TPi組成一條數據記錄(taski、Di、TZi、TDi、TPi)存在數據庫中,其中一組任務中包括N項任務,1≦i≦N;
Airflow配置生成步驟,根據數據庫中存儲的一組任務中的每一任務的數據記錄(taski、Di、TZi、TDi、TPi)生成該任務的python文件,當所有任務都生成python文件后提交Airflow服務器進行任務的執行;
任務運行記錄步驟,利用爬蟲訪問yarn的管理界面獲取該組任務的所有任務的運行情況并存入數據庫,所述運行情況包括每一項任務的占用資源情況和每一項任務的實際開始結束時間,并基于所述運行情況生成資源疊加圖;
任務調整步驟,使用爬蟲基于該組任務的組標識dag_id訪問Airflow服務器獲取該組任務中每一任務的實際運行時間、消耗內存與依賴關系,并基于每一任務的實際運行時間、消耗內存與依賴關系生成網絡甘特圖,基于所述資源疊加圖和網絡甘特圖調整任務的執行順序。
更進一步地,所述占用資源情況為占用內存或處理器情況。
更進一步地,所述資源疊加圖的橫坐標為時間,縱坐標為各個時間點對應的所有任務占用的資源的和,所述網絡甘特圖中的每個矩形表示一項任務,矩形的長度為該任務的運行時間,開始結束時間與時間軸上的時間相對應,矩形框高度表示該任務所消耗的資源量。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于漢納森(廈門)數據股份有限公司,未經漢納森(廈門)數據股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910900859.0/2.html,轉載請聲明來源鉆瓜專利網。





