TWI594131B - Cloud batch scheduling system and batch management server computer program products - Google Patents

Cloud batch scheduling system and batch management server computer program products Download PDF

Info

Publication number
TWI594131B
TWI594131B TW105109135A TW105109135A TWI594131B TW I594131 B TWI594131 B TW I594131B TW 105109135 A TW105109135 A TW 105109135A TW 105109135 A TW105109135 A TW 105109135A TW I594131 B TWI594131 B TW I594131B
Authority
TW
Taiwan
Prior art keywords
work
batch
execution
blueprint
management server
Prior art date
Application number
TW105109135A
Other languages
English (en)
Other versions
TW201734827A (zh
Inventor
sheng-xiang Hong
Original Assignee
Chunghwa Telecom Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chunghwa Telecom Co Ltd filed Critical Chunghwa Telecom Co Ltd
Priority to TW105109135A priority Critical patent/TWI594131B/zh
Application granted granted Critical
Publication of TWI594131B publication Critical patent/TWI594131B/zh
Publication of TW201734827A publication Critical patent/TW201734827A/zh

Links

Description

雲端批次排程系統及其批次管理伺服器電腦程式產品
本發明係一種雲端批次排程系統及其批次管理伺服器電腦程式產品,尤指一種使用藍圖分派技術之端批次排程系統及其批次管理伺服器電腦程式產品。
現行之企業為節省建置電腦設備以及管理人員之開銷,多選擇向雲端服務商租用伺服機房,並將需進行運算之工作或所需提供之線上服務架設於伺服機房上。
而當工作內容為批次作業時,傳統的批次排程系統在運作上多透過呼叫遠端執行主機來執行排程工作,並將執行結果整合至排程伺服器供管理者檢視。由於現今雲端商業運算需求日益複雜,例如:雲端系統需支援複雜的執行工作流程、排程工作間的高複用性、以及多種執行環境(各種類型的程式開發語言、作業系統),使得過去僅提供單一種批次程式類型之批次排程系統已無法滿足現行之需求。
綜上所述,如何提供一種可解上述技術問題之手段乃本領域亟需解決之技術問題。
為解決前揭之問題,本發明之目的係提供一種藉由藍圖分派技術來分派伺服器工作之技術手段。
為達上述目的,本發明提出一種雲端批次排程系統。該系統包含至少一個執行伺服器以及管理伺服器,前述之執行伺服器用於執行複數個工作,而管理伺服器用於連線並配置執行伺服器之工作。前述之管理伺服器更包含通訊埠、記憶體以及處理器,通訊埠用以通訊連接執行伺服器,處理器連接通訊埠以及記憶體,並於執行工作分配下則呼叫及執行批次記憶體內的管理伺服器軟體模組,前述之批次管理伺服器軟體模組包含資源監控及量測模組、藍圖式工作執行流程引擎、批次群組分類模組、以及動態分派批次工作模組。資源監控及量測模組用於存取並分析執行伺服器之執行資訊後並提供量測數據。藍圖式工作執行流程引擎用於派送藍圖工作,前述之藍圖工作係由藍圖定義檔進行分派之工作,而藍圖定義檔係為工作間之執行順序構成之節點集合所形成之藍圖結構。批次群組分類模組則對藍圖工作進行批次群組分類,以提供群組分類設定檔。動態分派批次工作模組在接收藍圖工作後會依據量測數據、藍圖工作、群組分類設定檔,以計算執行伺服器之負載量,來動態批次分配工作。
為達上述目的,本發明更提出一種用於雲端批次排程系統之批次管理伺服器電腦程式產品,此電腦程式產品應用並執行於管理伺服器,前述之管理伺服器係用於連線並配置至少一個執行伺服器執行複數個工作。批次管理伺服器電腦程式產品包含資源監控及量測模組、藍圖式工作執行流程引擎、批次群組分類模組、以及動態分派批次工作模組。資源監控及量測模組用於存取並分析執行伺服器之執行資訊以提供量測數據。藍圖式工作執行流程引擎用於派送藍圖工作,前述之藍圖工作係由藍圖定義檔進行分派之工作,而藍圖定義檔係為工作間之執行順序構成之節點集 合所形成之藍圖結構。批次群組分類模組則對藍圖工作進行批次群組分類,以提供群組分類設定檔。動態分派批次工作模組在接收藍圖工作後會依據量測數據、藍圖工作、群組分類設定檔,以計算執行伺服器之負載量,來動態批次分配工作。
綜上所述,本發明之雲端批次排程系統及其批次管理伺服器電腦程式產品透過藍圖分派技術得以有效率的將工作進行較佳之分派,以提昇雲端伺服器之處理效能。
100‧‧‧執行伺服器端
110‧‧‧批次執行代理程式模組
111‧‧‧執行結果收集模組
120‧‧‧自動擴展批次伺服器模組
200‧‧‧管理伺服器端
210‧‧‧批次管理伺服器軟體模組
211‧‧‧資源監控及量測模組
212‧‧‧藍圖式工作執行流程引擎
213‧‧‧批次群組分類模組
214‧‧‧動態分派批次工作模組
圖1係為本發明雲端批次排程系統之系統平台示意圖。
圖2係為本發明藍圖結構之示意圖。
圖3係為本發明分散式工作執行流程之流程圖。
圖4係為本發明動態擴展批次伺服器流程之流程圖。
以下將描述具體之實施例以說明本發明之實施態樣,惟其並非用以限制本發明所欲保護之範疇。
請參閱圖1,其為本發明雲端批次排程系統之系統平台示意圖。前述之系統包含執行伺服器端100以及管理伺服器端200,前述之執行伺服器端100包含了至少一個執行伺服器,而管理伺服器端200亦包含了至少一個管理伺服器,伺服器端可依工作負載量來調整工作伺服器之數量。
執行伺服器包含批次執行代理程式模組110(代理程式:Agent),以及自動擴展批次伺服器模組120等軟體模組,批次執行代理程式 模組110內部設有執行結果收集模組111。執行伺服器包含通訊埠、記憶體、處理器等硬體元件,通訊埠用以通訊連接前述之管理伺服器,記憶體包含一個或多個軟體模組,而處理器連接通訊埠以及記憶體,並於執行時則呼叫及執行記憶體內之軟體模組。前述之批次執行代理程式模組110用於執行由管理伺服器分配過來的工作,而執行結果收集模組111則是定期將批次程式執行資訊以及系統資源資訊同步給管理伺服器。前述之執行資訊包含記憶體使用率、硬碟耗用量以及批次程式執行個數。自動擴展批次伺服器模組120在每次批次程式被分配執行的代理程式前,先行檢查資源是否不足,不足時則會擴展代理程式之數量。
管理伺服器包含通訊埠、記憶體、處理器等硬體元件,通訊埠用以通訊連接前述之執行伺服器,記憶體包含批次管理伺服器軟體模組210,而處理器連接通訊埠以及記憶體,並於執行工作分配下則呼叫及執行批次管理伺服器軟體模組210。前述之批次管理伺服器軟體模組210包含了下列之軟體模組:資源監控及量測模組211、藍圖式工作執行流程引擎212、批次群組分類模組213,以及動態分派批次工作模組214。批次管理伺服器軟體模組210用於分派及分類工作、收集執行資訊並分析、工作流程控制,並提供使用端工作管理介面以設定工作定義檔、藍圖定義檔、群組分類設定檔、排程設定檔,前述之定義檔以及設定檔可為實體的文件檔案(txt檔),或資料庫檔案(DB檔)。
於另一實施例中,前述之批次管理伺服器軟體模組210係為批次管理伺服器電腦程式產品,批次管理伺服器電腦程式產品可由C、C++、Java、等程式語言所撰寫,惟程式語言之類型不在此限。
前述之工作定義檔用於定義所需執行之工作,定義範圍包含了工作撰寫的程式語言、工作的中文描述、設定參數是否有預設值、參數個數等,前述之定義內容係作為排程工作時參考的初始化資料。
藍圖定義檔係為工作間之執行順序構成之節點集合所形成之藍圖結構。請參閱圖2之說明,前述工作間的執行順序構成節點1透過參數1連結節點2,節點(n-1)透過參數(n-1)連結節點n的藍圖結構,前述之藍圖結構包含定期、不定期執行時間。
群組分類設定檔係針對藍圖工作進行分類,限定工作執行於特定的分配資源。而排程設定檔則是針對藍圖進行排程,排程資訊包含預計執行時間、使用端輸入的參數值、是否執行完後寄發通知、執行的程式語言等。
資源監控及量測模組211存取並分析執行伺服器之執行資訊,以提供量測數據。藍圖式工作執行流程引擎212用於派送藍圖工作,前述之藍圖工作係由藍圖定義檔進行分派之工作,而藍圖定義檔係為工作間之執行順序構成之節點集合所形成之藍圖結構;批次群組分類模組213對藍圖工作進行批次群組分類,以提供群組分類設定檔;動態分派批次工作模組214係接收藍圖工作,並依據量測數據、藍圖工作、群組分類設定檔,以計算執行伺服器之負載量,來動態批次分配工作至對應之執行伺服器(例如將工作分配給負載量最輕之該執行伺服器)。
請共同參閱圖1、3、4之說明,其為本發明之一實施態樣。使用端透過批次管理伺服器模組提供的工作管理介面新增工作設定,工作新增後產生相對應的工作設定檔(如下表所示),例如:使用端新增JOB1、 JOB2、JOB3三個不同的批次工作,並分別相對應的產生三份不同的工作設定檔,工作設定檔包含了撰寫的程式語言、中文描述、參數是否有預設值、參數個數等基本的工作資訊,其中JOB1需要兩個參數,而第二個參數並未設定預設值。
工作設定後,使用端再透過工作管理介面新增藍圖工作設定,並且輸入藍圖工作執行時會使用到的參數值,最後排程預定的執行時間,也相應產生藍圖設定檔和排程設定檔。例如:使用端設定了兩個藍圖,藍圖BPT1設定為JOB1→JOB2,代表執行順序分別為JOB1執行成功後執行JOB2,最後設定藍圖BPT001定期性的於每月10點30分執行。藍圖BPT2設定為單一個JOB3,並且設定藍圖BPT2不定期單一次執行2015年2月3號9點30分執行,執行完後發送通知。
使用端亦可選擇性的設定批次群組分類模組213,設定完後會產生相對應的群組分類設定檔,例如:目前有JOB1、JOB2、JOB3三支批次程式,JOB1和JOB2被使用分類模組歸為同一群組GROUP1,GROUP1被加入限定規則,只能被執行在名為AGENT1的機器上,並且當系統記憶體使用率達到80%就會被強制暫停,暫停至使用率低於80%,而JOB3就沒有任何群組沒有任何限制。
圖3為本發明之分散式工作執行流程之流程圖,伺服器在藍圖BPT1 2015年2月3號9點30分執行時間一到後,則會觸發開始程序,藍圖式執行工作執行流程引擎啟動使用端設定的藍圖工作流程(S101),首先判斷是否還有藍圖工作等待執行(S102),JOB1首先被執行,接著取得使用端當初排程的設定資訊(S103),包含參數值。每台Agent上的執行結果收集模組 111會定期將批次程式執行資訊以及系統資源資訊同步給監控及量測模組,伺服器透過監控及量測模組取得批次相關資訊(S104),根據系統記憶體使用率、硬碟耗用量以及批次程式執行個數,進行分析得出量測數據,使用端如果有使用批次群組分類模組213,系統除了量測數據還會再抓取批次群組分類檔(S105),分配目前適合該批次工作負載最輕的Agent給該批次程式執行(S106),JOB1的群組分類設定檔決定了執行的AGENT1後,伺服器會將工作設定檔、批次分類設定檔一併傳送到Agent(S107),工作設定檔包含工作執行時所需的資料,JOB1是Java的程式語言,執行時輸入的參值值分別為1和2,群組分類設定檔設定了該批次工作所能存取或被限制的系統資源,JOB1批次程式將會被設定當系統記憶體使用率達到80%就會被強制暫停。最後批次程式就會順利在分配的AGENT1上執行(S108),工作執行開始時,工作會先讀取排程設定檔,以達成執行在被限制分配的資源上(S109),執行成功後會再判斷有沒有下一筆工作,直到全部的藍圖工作被執行完畢,JOB2接繼續執行,JOB2執行完畢後(S110),結束此藍圖裡的工作執行流程。
前述之參數值是指批次程式在執行時需要的資料,並由使用端輸入,參數值的用意在於成為使用端與批次程式間溝通的橋梁,其用意在於讓使用端可以透過參數值決定批次程式處理的資料範圍及方式。
圖4所示為動態擴展批次伺服器流程,動態擴展批次伺服器模組在每次批次被分配代理程式前,先行檢查資源是否不足(S201),不足立即擴展代理程式(S202),擴展代理程式的動作包含新增虛擬機器(VM)、佈署代理程式,擴展完啟動代理程式(S203),代理程式再向伺服器註冊(S204),流程完成,伺服器於下次即可分配批次於此代理程式上執行。
上列詳細說明係針對本發明之一可行實施例之具體說明,惟該實施例並非用以限制本發明之專利範圍,凡未脫離本發明技藝精神所為之等效實施或變更,均應包含於本案之專利範圍中。
100‧‧‧執行伺服器端
110‧‧‧批次執行代理程式模組
111‧‧‧執行結果收集模組
120‧‧‧自動擴展批次伺服模組
200‧‧‧管理伺服器端
210‧‧‧批次管理伺服器軟體模組
211‧‧‧資源監控及量測模組
212‧‧‧藍圖式工作執行流程引擎
213‧‧‧批次群組分類模組
214‧‧‧動態分派批次工作模組

Claims (10)

  1. 一種雲端批次排程系統,包含:至少一個執行伺服器,用於執行複數個工作;管理伺服器,用於連線並配置該執行伺服器之該等工作,其中該管理伺服器更包含:通訊埠,用以通訊連接該執行伺服器;記憶體,包含批次管理伺服器軟體模組;處理器,連接該通訊埠以及該記憶體,該處理器於執行工作分配之下則會呼叫及執行該批次管理伺服器軟體模組,其中該批次管理伺服器軟體模組包含:資源監控及量測模組,存取並分析該等執行伺服器之執行資訊,以提供量測數據;藍圖式工作執行流程引擎,用於派送藍圖工作,其中該藍圖工作係由藍圖定義檔進行分派之該等工作,其中該藍圖定義檔係為該等工作間之執行順序構成之節點集合所形成之藍圖結構;批次群組分類模組,對該藍圖工作進行批次群組分類,以提供群組分類設定檔;動態分派批次工作模組,接收該藍圖工作,並依據該量測數據、該藍圖工作、該群組分類設定檔,以計算該等執行伺服器之負載量,來動態批次分配該工作。
  2. 如請求項1所述之雲端批次排程系統,其中該動態分派批次工作模組係分配執行代理程式。
  3. 如請求項2所述之雲端批次排程系統,其中該執行伺服器更於執行資源不足下則擴展用於執行該等工作之該代理程式。
  4. 如請求項1所述之雲端批次排程系統,其中該動態分派批次工作模組係將該工作分配給負載量最輕之該執行伺服器。
  5. 如請求項1所述之雲端批次排程系統,其中該藍圖結構包定期或不定期執行時間。
  6. 一種用於雲端批次排程系統之批次管理伺服器電腦程式產品,應用並執行於管理伺服器,該管理伺服器係用於連線並配置至少一個執行伺服器執行複數個工作,批次管理伺服器電腦程式產品包含:資源監控及量測模組,存取並分析該等執行伺服器之執行資訊,以提供量測數據;藍圖式工作執行流程引擎,用於派送藍圖工作,其中該藍圖工作係由藍圖定義檔進行分派之該等工作,其中該藍圖定義檔係為該等工作間之執行順序構成之節點集合所形成之藍圖結構;批次群組分類模組,對該藍圖工作進行批次群組分類,以提供群組分類設定檔;動態分派批次工作模組,接收該藍圖工作,並依據該量測數據、該藍圖工作、該群組分類設定檔,以計算該等執行伺服器之負載量,來動態批次分配該工作。
  7. 如請求項6所述之批次管理伺服器電腦程式產品,其中該動態分派批次工作模組係分配執行代理程式。
  8. 如請求項7所述之批次管理伺服器電腦程式產品,其中該執行伺服器更於 執行資源不足下則擴展用於執行該等工作之該代理程式。
  9. 如請求項6所述之批次管理伺服器電腦程式產品,其中該動態分派批次工作模組係將該工作分配給負載量最輕之該執行伺服器。
  10. 如請求項6所述之批次管理伺服器電腦程式產品,其中該藍圖結構包定期或不定期執行時間。
TW105109135A 2016-03-24 2016-03-24 Cloud batch scheduling system and batch management server computer program products TWI594131B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW105109135A TWI594131B (zh) 2016-03-24 2016-03-24 Cloud batch scheduling system and batch management server computer program products

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105109135A TWI594131B (zh) 2016-03-24 2016-03-24 Cloud batch scheduling system and batch management server computer program products

Publications (2)

Publication Number Publication Date
TWI594131B true TWI594131B (zh) 2017-08-01
TW201734827A TW201734827A (zh) 2017-10-01

Family

ID=60189288

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105109135A TWI594131B (zh) 2016-03-24 2016-03-24 Cloud batch scheduling system and batch management server computer program products

Country Status (1)

Country Link
TW (1) TWI594131B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI738583B (zh) * 2020-12-07 2021-09-01 中華電信股份有限公司 具動態擴展之高可用訊息管理系統、方法及電腦可讀媒介

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI801215B (zh) * 2022-04-22 2023-05-01 宏碁股份有限公司 多服務資料伺服器系統、其控制方法與其入口伺服器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060608A1 (en) * 2002-05-23 2005-03-17 Benoit Marchand Maximizing processor utilization and minimizing network bandwidth requirements in throughput compute clusters
TW200513940A (en) * 2003-05-15 2005-04-16 Ibm System and method for adaptive admission control and resource management for service time guarantees
TW200817925A (en) * 2006-03-31 2008-04-16 Technology Properties Ltd Method and apparatus for operating a computer processor array
US8752055B2 (en) * 2007-05-10 2014-06-10 International Business Machines Corporation Method of managing resources within a set of processes

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050060608A1 (en) * 2002-05-23 2005-03-17 Benoit Marchand Maximizing processor utilization and minimizing network bandwidth requirements in throughput compute clusters
TW200513940A (en) * 2003-05-15 2005-04-16 Ibm System and method for adaptive admission control and resource management for service time guarantees
TW200817925A (en) * 2006-03-31 2008-04-16 Technology Properties Ltd Method and apparatus for operating a computer processor array
US8752055B2 (en) * 2007-05-10 2014-06-10 International Business Machines Corporation Method of managing resources within a set of processes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI738583B (zh) * 2020-12-07 2021-09-01 中華電信股份有限公司 具動態擴展之高可用訊息管理系統、方法及電腦可讀媒介

Also Published As

Publication number Publication date
TW201734827A (zh) 2017-10-01

Similar Documents

Publication Publication Date Title
JP6092718B2 (ja) 運用計画立案支援システム及び方法
CN112486648A (zh) 任务调度方法、装置、系统、电子设备和存储介质
CN108733464B (zh) 一种确定计算任务的调度方案的方法及装置
CN106910004B (zh) 一种基于流程流转的全过程风机制造质量监控系统
US20220164222A1 (en) Execution of Services Concurrently
US20100121904A1 (en) Resource reservations in a multiprocessor computing environment
CN111625331A (zh) 任务调度方法、装置、平台、服务器及存储介质
Imai et al. Accurate resource prediction for hybrid IaaS clouds using workload-tailored elastic compute units
CN112882828A (zh) 基于slurm作业调度系统的昇腾处理器管理和调度方法
TW201426552A (zh) 虛擬機的登錄介面排序系統及方法
TWI594131B (zh) Cloud batch scheduling system and batch management server computer program products
Chandio et al. A comparative study of job scheduling strategies in large-scale parallel computational systems
CN111932099A (zh) 营销业务管理系统及营销业务管理方法
US10853137B2 (en) Efficient resource allocation for concurrent graph workloads
US8977752B2 (en) Event-based dynamic resource provisioning
Alam et al. An NBDMMM algorithm based framework for allocation of resources in cloud
CN109739634A (zh) 一种原子任务执行方法及装置
CN106648871B (zh) 一种资源管理方法及系统
CN112860401A (zh) 任务调度方法、装置、电子设备和存储介质
KR100590764B1 (ko) 멀티프로세서 시스템에서 스케줄러를 이용한 대규모데이터 처리 방법
CN112070452A (zh) 一种分布式工作流管理系统
Cui et al. A scheduling algorithm for multi-tenants instance-intensive workflows
CN115292176A (zh) 一种压力测试方法、装置、设备及存储介质
CN105718297A (zh) 虚拟机建立系统以及方法
CN114745377A (zh) 边缘云集群服务系统及实现方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees