国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

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

2017-01-21 15:01:54胡元元
軟件導(dǎo)刊 2016年12期
關(guān)鍵詞:作業(yè)管理分布式調(diào)度

胡元元

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

關(guān)鍵詞:作業(yè)管理;數(shù)據(jù)放置;調(diào)度;分布式

DOIDOI:10.11907/rjdk.162492

中圖分類號(hào):TP319

文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1672-7800(2016)012-0048-03

0 引言

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

數(shù)據(jù)放置活動(dòng)是整個(gè)JobManager作業(yè)管理系統(tǒng)中的關(guān)鍵因素,對(duì)數(shù)據(jù)的訪問通常是數(shù)據(jù)密集應(yīng)用中的瓶頸[1]。

1 數(shù)據(jù)放置子系統(tǒng)結(jié)構(gòu)

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

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

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

因此,可為JobManager作業(yè)管理系統(tǒng)設(shè)計(jì)一個(gè)數(shù)據(jù)放置子系統(tǒng)來(lái)專門處理數(shù)據(jù)放置問題。數(shù)據(jù)放置子系統(tǒng)結(jié)構(gòu)如圖1所示。下面對(duì)數(shù)據(jù)放置子系統(tǒng)各模塊進(jìn)行介紹。

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

2.1 作業(yè)描述

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

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

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

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

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

2.1.2 作業(yè)網(wǎng)絡(luò)圖

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

2.1.3 結(jié)構(gòu)化作業(yè)流

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

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

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

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

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

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

2.2 作業(yè)分析器

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

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

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

(2)分配空間:這類作業(yè)是在目的節(jié)點(diǎn)上分配存儲(chǔ)空間、網(wǎng)絡(luò)帶寬并在來(lái)源/目的地之間建立一條通路,在數(shù)據(jù)放置前為需要放置的數(shù)據(jù)分配需要的資源。

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

(4)刪除:這類作業(yè)是從遠(yuǎn)程或者本地存儲(chǔ)服務(wù)器、磁帶或磁盤進(jìn)行物理刪除。

2.3 作業(yè)流管理器

作業(yè)流管理器收到作業(yè)分析器轉(zhuǎn)送的作業(yè)圖后,將計(jì)算作業(yè)提交到計(jì)算作業(yè)隊(duì)列[4],數(shù)據(jù)放置作業(yè)提交給數(shù)據(jù)放置作業(yè)隊(duì)列[5]。不同隊(duì)列中的作業(yè)由其對(duì)應(yīng)的調(diào)度程序調(diào)度。

2.4 資源代理/策略實(shí)施器

資源代理為作業(yè)匹配資源,并且?guī)椭鷶?shù)據(jù)定位和決定數(shù)據(jù)移動(dòng)方向,每當(dāng)需要時(shí)就會(huì)進(jìn)行一次作業(yè)到資源的映射服務(wù)。策略實(shí)施器幫助申請(qǐng)具體的資源或具體的作業(yè)策略,就像一個(gè)存儲(chǔ)服務(wù)器可以允許多少并行連接一樣。

2.5 數(shù)據(jù)放置調(diào)度程序

數(shù)據(jù)放置調(diào)度程序分別在JobManager作業(yè)管理系統(tǒng)的輸入/輸出控制系統(tǒng)和輸入/輸出調(diào)度程序中。每個(gè)協(xié)議和數(shù)據(jù)存儲(chǔ)系統(tǒng)都有不同的用戶接口和不同的訪問協(xié)議庫(kù)。當(dāng)作業(yè)執(zhí)行時(shí),用戶需要處理所有不同協(xié)議庫(kù)的復(fù)雜連接,并且在數(shù)據(jù)傳輸協(xié)議和存儲(chǔ)系統(tǒng)中使用不同的接口[6]。數(shù)據(jù)放置調(diào)度程序?yàn)樗胁煌膮f(xié)議和存儲(chǔ)服務(wù)器提供一個(gè)統(tǒng)一的接口,并且在用戶間提供抽象的能力。數(shù)據(jù)放置調(diào)度程序根據(jù)實(shí)施信息來(lái)調(diào)度隊(duì)列中的作業(yè)。系統(tǒng)最重要的組成部分是數(shù)據(jù)放置調(diào)度程序,它根據(jù)數(shù)據(jù)放置作業(yè)特征作出正確的調(diào)度決定。

2.6 網(wǎng)絡(luò)監(jiān)視工具

網(wǎng)絡(luò)監(jiān)視工具收集并統(tǒng)計(jì)最大可利用端對(duì)端帶寬、實(shí)際利用帶寬、潛在的因素和傳輸?shù)臄?shù)量,并對(duì)調(diào)度程序和資源代理/策略實(shí)施器進(jìn)行反饋。

2.7 知識(shí)庫(kù)

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

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

2.8 失敗代理

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

3 結(jié)語(yǔ)

本文提出了JobManager作業(yè)管理系統(tǒng)數(shù)據(jù)放置問題,為該問題設(shè)計(jì)了數(shù)據(jù)放置子系統(tǒng),并對(duì)數(shù)據(jù)放置子系統(tǒng)體系結(jié)構(gòu)進(jìn)行了詳細(xì)描述,為今后數(shù)據(jù)放置作業(yè)調(diào)度打下了基礎(chǔ)。

參考文獻(xiàn):

[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,F(xiàn)OSTERDV.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)化科學(xué)工作流執(zhí)行性能的兩階段數(shù)據(jù)放置與任務(wù)調(diào)度策略[J].計(jì)算機(jī)學(xué)報(bào),2011,34(11):2121-2130.

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

(責(zé)任編輯:杜能鋼)

猜你喜歡
作業(yè)管理分布式調(diào)度
“雙減”背景下初中生作業(yè)管理的實(shí)踐探究
“減負(fù)增質(zhì)”理念下作業(yè)管理的創(chuàng)新策略
落實(shí)各方責(zé)任 加強(qiáng)特種作業(yè)管理
《調(diào)度集中系統(tǒng)(CTC)/列車調(diào)度指揮系統(tǒng)(TDCS)維護(hù)手冊(cè)》正式出版
一種基于負(fù)載均衡的Kubernetes調(diào)度改進(jìn)算法
虛擬機(jī)實(shí)時(shí)遷移調(diào)度算法
客車調(diào)車作業(yè)管理的探討
分布式光伏熱錢洶涌
能源(2017年10期)2017-12-20 05:54:07
分布式光伏:爆發(fā)還是徘徊
能源(2017年5期)2017-07-06 09:25:54
基于DDS的分布式三維協(xié)同仿真研究
资中县| 南充市| 印江| 和林格尔县| 炎陵县| 通榆县| 读书| 大新县| 安平县| 安仁县| 两当县| 静海县| 绥宁县| 盈江县| 五台县| 铜山县| 南川市| 鹤山市| 台山市| 阜康市| 金沙县| 安宁市| 荔浦县| 濮阳市| 台州市| 巩留县| 永昌县| 大埔县| 鄂托克前旗| 容城县| 福泉市| 许昌县| 新营市| 鄂州市| 务川| 榆树市| 蓝山县| 拜城县| 巴彦县| 清徐县| 清原|