• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      作業(yè)管理系統(tǒng)中數據放置子系統(tǒng)設計

      2017-01-21 15:01胡元元
      軟件導刊 2016年12期
      關鍵詞:作業(yè)管理分布式調度

      胡元元

      摘 要:JobManager作業(yè)管理系統(tǒng)是眾多作業(yè)管理系統(tǒng)中的一員。隨著計算機應用的增加和巨大的數據需求,JobManager作業(yè)管理系統(tǒng)對數據的放置也提出了更高的要求。提出了JobManager作業(yè)管理系統(tǒng)的數據放置問題,并為該問題設計了詳細的數據放置子系統(tǒng)體系結構。

      關鍵詞:作業(yè)管理;數據放置;調度;分布式

      DOIDOI:10.11907/rjdk.162492

      中圖分類號:TP319

      文獻標識碼:A文章編號:1672-7800(2016)012-0048-03

      0 引言

      JobManager作業(yè)管理系統(tǒng)中的數據密集應用對大塊I/O的需求越來越大,在廣域網中處理和復制大量數據,帶來數據放置的可靠性和效率問題。查找、傳輸、使用和復制數據,數據管理器要在需要的時候對數據進行分配和釋放,并在用戶使用完數據之后清空所有使用痕跡。

      數據放置活動是整個JobManager作業(yè)管理系統(tǒng)中的關鍵因素,對數據的訪問通常是數據密集應用中的瓶頸[1]。

      1 數據放置子系統(tǒng)結構

      JobManager作業(yè)管理系統(tǒng)提供了一個數據放置子系統(tǒng)來解決數據放置問題,這個子系統(tǒng)包括數據放置的專業(yè)調度程序,一個用于了解數據放置的作業(yè)分析器,一個從記錄中提取有用信息并給予解釋的知識庫,以及一些實時優(yōu)化工具[2]。這種數據放置子系統(tǒng)提供完整的可靠性、用戶的抽象能力、在存儲服務器上的平衡負載能力和控制網絡中的交換能力。

      在遠程作業(yè)執(zhí)行過程中,數據放置是整個作業(yè)執(zhí)行的重要環(huán)節(jié)。當前解決這個問題的方法是手工或者使用簡單腳本,沒有任何自動化和容錯能力,不適應分布式計算環(huán)境的劇烈變化。它們對作業(yè)沒有權限,作業(yè)在整個過程中沒有調度。

      為了解決這些問題,數據放置作業(yè)在分布式計算環(huán)境中必須像計算作業(yè)一樣成為第一類作業(yè),它們需要排隊、調度、監(jiān)控和檢查。更加重要的是,必須在沒有人為干預的情況下成功執(zhí)行。

      因此,可為JobManager作業(yè)管理系統(tǒng)設計一個數據放置子系統(tǒng)來專門處理數據放置問題。數據放置子系統(tǒng)結構如圖1所示。下面對數據放置子系統(tǒng)各模塊進行介紹。

      2 數據放置子系統(tǒng)模塊

      2.1 作業(yè)描述

      在介紹數據放置子系統(tǒng)作業(yè)描述之前,有必要介紹JobManager作業(yè)管理系統(tǒng)中的作業(yè)和作業(yè)流,在此基礎上,對數據放置作業(yè)和計算作業(yè)使用不同的作業(yè)描述。

      2.1.1 單元作業(yè)(UnitJob)

      在作業(yè)管理系統(tǒng)中,單元作業(yè)是可被執(zhí)行的基本單位。

      在作業(yè)管理系統(tǒng)中,通常需要自動執(zhí)行一系列作業(yè),如果這些作業(yè)滿足一定的執(zhí)行邏輯或者稱之為作業(yè)依賴關系,那么將這些作業(yè)按照一定的依賴關系定制成一個作業(yè)流是一種很好的解決方式。

      作業(yè)流在作業(yè)管理系統(tǒng)中也稱為作業(yè)網絡,是相互關聯(lián)的作業(yè)形成的一個作業(yè)序列。它的基本工作單元是作業(yè)。每個作業(yè)流都有一個虛擬的開始點和結束點。不含任何作業(yè)的作業(yè)流叫空作業(yè)流[3]。作業(yè)流是作業(yè)管理系統(tǒng)管理和調度的基本單元,作業(yè)不能脫離作業(yè)流而單獨提交給系統(tǒng)。

      2.1.2 作業(yè)網絡圖

      作業(yè)流程圖又稱為作業(yè)網絡圖,是按照一定的邏輯關系將用戶定義的作業(yè)組織成一個網狀圖,是作業(yè)流的圖形表現形式。在作業(yè)管理系統(tǒng)中,一個作業(yè)流中既包含了多個傳統(tǒng)意義上可執(zhí)行的作業(yè),又包含了作業(yè)之間的依賴關系,還有一種關系是作業(yè)流之間的依賴關系。作業(yè)之間的依賴關系以及作業(yè)流之間的依賴關系是作業(yè)流參考模型的顯著特點,能夠大大提升作業(yè)流的表達能力和執(zhí)行能力。

      2.1.3 結構化作業(yè)流

      在基于作業(yè)流的作業(yè)管理系統(tǒng)中,可以構造出各種復雜的作業(yè)網絡,以更好地控制作業(yè)的執(zhí)行順序。本文所研究的作業(yè)管理系統(tǒng)中,可以使用相關作業(yè)表示出順序、條件/分支、循環(huán)3種基本的執(zhí)行結構,形成結構化作業(yè)流。

      (1)順序。作業(yè)執(zhí)行順序是前后關系,前一作業(yè)執(zhí)行完畢,后一作業(yè)再開始執(zhí)行,見圖2。

      (2)條件/分支。條件/分支根據執(zhí)行條件決定作業(yè)網絡的執(zhí)行走向,見圖3。

      (3)循環(huán)。循環(huán)執(zhí)行類似于程序語言中的do-while。利用跳轉作業(yè)來指定要循環(huán)執(zhí)行的目標作業(yè)及重復次數,見圖4。

      obManager作業(yè)管理系統(tǒng)中的數據密集應用需要從遠程站點到執(zhí)行站點移動輸入數據,執(zhí)行作業(yè),然后將輸出數據從執(zhí)行站點移動到原來或者是另一個遠程站點。如果不希望在執(zhí)行站點出現用盡磁盤空間情況,就需要在傳輸數據前分配空間,并且在移動輸出數據后釋放空間。

      作業(yè)描述模塊需要將這些計算和數據放置步驟使用不同的作業(yè)描述。將原來一個單元作業(yè)分解為計算作業(yè)和數據放置作業(yè)的集合,以便對數據放置作業(yè)進行下一步操作。

      2.2 作業(yè)分析器

      作業(yè)分析器獲得用戶定義的作業(yè)描述后,將作業(yè)描述分解為數據放置作業(yè)描述和計算作業(yè)描述,作業(yè)分析器將這兩類作業(yè)區(qū)別開來。作業(yè)分析器建立了具體的圖,數據放置作業(yè)是其中的節(jié)點,它們之間的依賴關系作為圖中的弧,如圖5所示,作業(yè)分析器將具體的圖提交給作業(yè)流管理器。

      從圖5可以看出,原本的單元作業(yè)被分解為數據放置作業(yè)和計算作業(yè)。其中數據放置作業(yè)種類包括:

      (1)傳輸:這種類型的作業(yè)是從一個物理位置轉移一個完整的或部分的文件到另一個物理位置,包括輸入操作、輸出操作和第三方傳輸。

      (2)分配空間:這類作業(yè)是在目的節(jié)點上分配存儲空間、網絡帶寬并在來源/目的地之間建立一條通路,在數據放置前為需要放置的數據分配需要的資源。

      (3)釋放:這類作業(yè)是分配前釋放相應資源。

      (4)刪除:這類作業(yè)是從遠程或者本地存儲服務器、磁帶或磁盤進行物理刪除。

      2.3 作業(yè)流管理器

      作業(yè)流管理器收到作業(yè)分析器轉送的作業(yè)圖后,將計算作業(yè)提交到計算作業(yè)隊列[4],數據放置作業(yè)提交給數據放置作業(yè)隊列[5]。不同隊列中的作業(yè)由其對應的調度程序調度。

      2.4 資源代理/策略實施器

      資源代理為作業(yè)匹配資源,并且?guī)椭鷶祿ㄎ缓蜎Q定數據移動方向,每當需要時就會進行一次作業(yè)到資源的映射服務。策略實施器幫助申請具體的資源或具體的作業(yè)策略,就像一個存儲服務器可以允許多少并行連接一樣。

      2.5 數據放置調度程序

      數據放置調度程序分別在JobManager作業(yè)管理系統(tǒng)的輸入/輸出控制系統(tǒng)和輸入/輸出調度程序中。每個協(xié)議和數據存儲系統(tǒng)都有不同的用戶接口和不同的訪問協(xié)議庫。當作業(yè)執(zhí)行時,用戶需要處理所有不同協(xié)議庫的復雜連接,并且在數據傳輸協(xié)議和存儲系統(tǒng)中使用不同的接口[6]。數據放置調度程序為所有不同的協(xié)議和存儲服務器提供一個統(tǒng)一的接口,并且在用戶間提供抽象的能力。數據放置調度程序根據實施信息來調度隊列中的作業(yè)。系統(tǒng)最重要的組成部分是數據放置調度程序,它根據數據放置作業(yè)特征作出正確的調度決定。

      2.6 網絡監(jiān)視工具

      網絡監(jiān)視工具收集并統(tǒng)計最大可利用端對端帶寬、實際利用帶寬、潛在的因素和傳輸的數量,并對調度程序和資源代理/策略實施器進行反饋。

      2.7 知識庫

      JobManager作業(yè)管理系統(tǒng)使用過程中有這種情況:主機接受了作業(yè),但是長時間沒有做任何事情。調度程序只能不斷嘗試與主機對話,需要幾小時甚至幾天。同時還有特定主機在特定的作業(yè)等級上存在問題,但它卻成功地執(zhí)行了其它等級作業(yè)。查出上述問題的原因非常困難,而且受影響的只是部分作業(yè)。所以,簡單的方法是讓這些作業(yè)盡量避免使用資源。

      為此提出了知識庫觀念,用來收集不同作業(yè)經驗。知識庫從批調度系統(tǒng)產生的作業(yè)記錄文件中收集信息[7]。數據放置子系統(tǒng)從記錄文件中提出信息并將它們加入知識庫。知識庫解析這些日志并且提出有用的信息,比如不同的事件、時間戳、錯誤信息和利用統(tǒng)計[8],然后將這些信息輸入到數據庫。知識庫在數據庫中詢問、解釋,然后返回結果給調度程序和資源代理/策略實施器,調度程序利用這些信息作出更好的調度決定。

      2.8 失敗代理

      失敗代理是從收集的信息或者知識庫的反饋中盡快查出失敗原因,并且使用“重試”機制和“最大允許時間”來判斷和解決失敗問題。調度程序隱藏了網絡、存儲系統(tǒng)、中間件或軟件的失敗。 “重試”機制指在返回一個失敗前,可以重試失敗的數據傳輸作業(yè)任意多次。 “中止并再運行”機制使用戶可以為數據傳輸作業(yè)指定“最大允許運行時間”。當一個作業(yè)的運行時間超過了指定時間時,調度程序會自動終止這個作業(yè)并且重新運行,解決了系統(tǒng)傳輸永遠掛起或者永不返回的問題,用戶可指定重復任意次。

      3 結語

      本文提出了JobManager作業(yè)管理系統(tǒng)數據放置問題,為該問題設計了數據放置子系統(tǒng),并對數據放置子系統(tǒng)體系結構進行了詳細描述,為今后數據放置作業(yè)調度打下了基礎。

      參考文獻:

      [1] KOUZESRT,ANDERSONGA,ELBERTST,et al.The changing paradigm of data-intensive computing [J].Computer,2009,42(1):26-34.

      [2] DEANJ,GHEMAWATS.Map reduce:simplified data processing on large clusters[J].Communications of the ACM,2008,51(1):107-113.

      [3] CHANGF,DEANJ,GHEAMAWATS,et al.Big table:a distributed storage system for structured data[J].ACMTrans on Computer Systems,2008,26(2):1-26.

      [4] DOWDYLW,FOSTERDV.Comparative model soft file assignment problem[J].ACM Computing Surveys (CSUR),1982,14(2):287-313.

      [5] DUZ,HUJ,CHENY.Optimized QoS-aware replica placement heuristics and applications in astronomy data grid[J].Journal of Systems and Software,2011,84(7):1224-1232.

      [6] YUAND,YANGY,LIUX,et al.A data placement strategy in scientific cloud workflows[J].Future Generation Computer Systems,2010,26(8):1200-1214.

      [7] 劉少偉,孔令梅,任開軍,等.云環(huán)境下優(yōu)化科學工作流執(zhí)行性能的兩階段數據放置與任務調度策略[J].計算機學報,2011,34(11):2121-2130.

      [8] TEVFIK KOSAR.Data placement in widely distributed systems [D].University of Wisconsin-Madison,2005.

      (責任編輯:杜能鋼)

      猜你喜歡
      作業(yè)管理分布式調度
      “雙減”背景下初中生作業(yè)管理的實踐探究
      “減負增質”理念下作業(yè)管理的創(chuàng)新策略
      落實各方責任 加強特種作業(yè)管理
      《調度集中系統(tǒng)(CTC)/列車調度指揮系統(tǒng)(TDCS)維護手冊》正式出版
      一種基于負載均衡的Kubernetes調度改進算法
      虛擬機實時遷移調度算法
      客車調車作業(yè)管理的探討
      基于DDS的分布式三維協(xié)同仿真研究
      西門子 分布式I/O Simatic ET 200AL
      SVC的RTP封裝及其在NS2包調度中的應用研究
      阿城市| 托里县| 芜湖县| 明水县| 青川县| 丰都县| 吉水县| 太白县| 兰溪市| 四平市| 深水埗区| 庆安县| 常山县| 蒙自县| 名山县| 旌德县| 金寨县| 大荔县| 丽江市| 河东区| 盐城市| 镶黄旗| 玛沁县| 阳春市| 革吉县| 长汀县| 潼关县| 成都市| 敦煌市| 临清市| 瑞丽市| 马尔康县| 噶尔县| 花莲县| 灌云县| 招远市| 佛山市| 宝清县| 绥滨县| 当雄县| 达孜县|