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

?

基于聚類的非中心化工作流的適應(yīng)性切片方法

2015-12-23 01:07梁繼偉尹智剛
計算機工程與設(shè)計 2015年10期
關(guān)鍵詞:偏序實例切片

葉 鑫,李 佳,梁繼偉,尹智剛

(大連理工大學(xué) 信息與決策技術(shù)研究所,遼寧 大連116024)

0 引 言

非中心化工作流如何進行切片,以實現(xiàn)工作流片段在多個服務(wù)器間的調(diào)度問題已成為理論研究與實踐中的熱點問題[1]。非中心化的工作流根據(jù)其特點主要可分為計算和數(shù)據(jù)密集型[2-5]和實例密集型[6-9]兩類。區(qū)別于計算和數(shù)據(jù)密集型工作流,實例密集型工作流的最大特點是實例中活動所需的計算能力較低、數(shù)據(jù)量較小,但存在大量需要運行的工作流實例,對響應(yīng)時間和執(zhí)行效率提出了嚴(yán)峻的挑戰(zhàn)。文獻 [10]指出該類工作流廣泛存在于連鎖經(jīng)營、在線零售、電子政務(wù)和醫(yī)療保險等行業(yè)中,由大量分散在不同服務(wù)器上的服務(wù)集之間復(fù)雜的交互來組成,最終將被數(shù)以萬計的工作流實例來實現(xiàn)。

當(dāng)前,一些學(xué)者為提升非中心化工作流的響應(yīng)時間和執(zhí)行效率,提出了相應(yīng)工作流的切片方法,主要可以分為靜態(tài)和動態(tài)的工作流切片方法兩類。

靜態(tài)工作流切片方法是在設(shè)計時而非工作流執(zhí)行時進行切片的[11,12],雖然可相對提高工作流執(zhí)行效率,但是由于其主觀性較強,而且沒有考慮工作流的執(zhí)行環(huán)境,因此無法根據(jù)執(zhí)行環(huán)境的改變做出動態(tài)調(diào)整,而動態(tài)工作流切片方法可彌補這些不足[7,13]。如文獻 [13]提出一種基于流程挖掘的工作流分布方法,該方法根據(jù)流程日志,利用apriori算法挖據(jù)工作流中最相關(guān)的活動,并將這些活動封裝在同一個代理上去執(zhí)行;文獻 [14]提到了另外一種針對客戶行為的工作流中頻繁路徑的挖據(jù)方法-GSP算法,以提升挖據(jù)效率;文獻 [8]在文獻 [13]的基礎(chǔ)之上提出了HIPD (分層智能流程非中心化)方法,該方法將工作流的頻繁路徑挖掘和流程樹分層結(jié)合起來進行工作流片段的切分,最后將頻繁交互的活動封裝為一個工作流片段,并分配在相同的代理中執(zhí)行,從而減少活動間的通信時間,并使得工作流切片更具靈活性,以適應(yīng)工作流執(zhí)行環(huán)境的變化。

綜上所述,動態(tài)的工作流切片方法為本文的研究提供了良好的基礎(chǔ)與借鑒,但還主要存在以下問題:①部分方法主要考慮了活動的執(zhí)行頻次,忽視了活動間的依賴關(guān)系;②考慮因素不全面,缺少對工作流活動間的通信量的關(guān)注;③不能很好適應(yīng)工作流的執(zhí)行環(huán)境。這些問題的存在將會影響到工作流執(zhí)行的響應(yīng)時間和吞吐量。因此,本文針對這些問題的改進進行研究,旨在減少工作流的響應(yīng)時間,提高工作流的執(zhí)行效率。

1 基于層次聚類法的非中心化工作流的切片方法

為減少實例密集型非中心化工作流的響應(yīng)時間并提升其執(zhí)行效率,應(yīng)在綜合考慮活動執(zhí)行頻次等因素的前提下,盡可能的將通信頻繁且通信量大的活動分配在同一臺服務(wù)器上執(zhí)行,亦即將這些活動劃分到一個工作流片段中。而聚類分析是數(shù)據(jù)挖掘中的一種數(shù)據(jù)劃分或分組處理的重要手段和方法。如果將通信頻繁且通信量大的活動看作為相似,則可將聚類分析中的類別看作為工作流片段。因此,可應(yīng)用聚類分析對工作流進行切片,但須對其類間距離的定義進行修訂。另外,由于執(zhí)行環(huán)境的不確定性等因素,因此借鑒凝聚層次聚類法的思路對工作流進行切片,以提高切片結(jié)果對執(zhí)行環(huán)境的適應(yīng)性。

1.1 基本定義

基于BPMN 規(guī)范,一個工作流模型可被抽象為一個有向無環(huán)圖 (DAG)。圖中的節(jié)點可分為活動和網(wǎng)關(guān)兩類。相關(guān)的基本定義如下。

定義1 活動 (或任務(wù))?;顒邮枪ぷ髁髦械淖罨镜脑兀彩枪ぷ髁髑衅幕締卧?,令ai表示工作流中的第i個活動,則A={ai|i=1,2…,n}表示工作流中所有活動的集合。

定義2 工作流片段 (或類)。工作流片段表示切片過程中所產(chǎn)生的活動集合,亦可看作為聚類分析中的類。令ci表示第i 個工作流片段,則ciA。特別的,當(dāng)某工作流片段只包含1 個活動時,該工作流片段等價與活動。令clusterk= {ci|i=1,2…,l},k=1,2…m 表示第k次聚類時的所有工作流片段的集合。

定義3 活動間的偏序關(guān)系與工作流片段間的偏序關(guān)系。其中,如果在DAG 圖中存在一條從ai指向aj的路,且除ai和aj外,路上無其它節(jié)點或只包含網(wǎng)關(guān)類型的節(jié)點,則稱ai和aj之間存在偏序關(guān)系<ai,aj>。類似的,如果工作流片段ci中的活動和工作流片段cj中的活動存在偏序關(guān)系,則ci和cj之間存在偏序關(guān)系<ci,cj>。

定義4 活動間的依賴概率?;诠ぷ髁鞯慕Y(jié)構(gòu)和歷史日志數(shù)據(jù),如果ai和aj之間存在偏序關(guān)系<ai,aj>,則paiaj表示ai和aj之間的依賴概率,即ai被執(zhí)行后aj被執(zhí)行的概率,其計算公式如式 (1)所示

式中:countai、countaj——工作流歷史日志信息中ai、aj的執(zhí)行次數(shù)合計。

定義5 活動的預(yù)計執(zhí)行頻次。若令fai表示活動ai的預(yù)計執(zhí)行頻次,給定時間段內(nèi)工作流實例的數(shù)量記為instanceNumber,則工作流中第一個活動 (即初始活動)的預(yù)計執(zhí)行頻次fa1=instanceNumber,其余活動的預(yù)計執(zhí)行頻次的計算公式如式 (2)所示,并可通過遍歷DAG 圖計算得到

定義6 活動間的依賴頻次。令faiaj表示活動ai和aj之間的依賴頻次,即ai被執(zhí)行后aj被執(zhí)行的頻次,其計算公式如式 (3)所示

定義7 活動間的距離和類間的距離。若令commaiaj表示活動ai和aj之間的通信量,daiaj表示活動ai和aj之間的距離,則daiaj可由式 (4)計算得到。即活動ai和aj之間的依賴頻次越大,通信量越大,則二者之間的距離越小

若令dcicj表示類ci到cj之間的距離,可由式 (5)計算得到。若令Dcicj表示類ci和cj之間的距離,則可由式(6)計算得到

1.2 基于聚類的工作流切片算法

基于聚類的工作流切片算法如下:

輸入:DAG,instanceNumber,Paiaj,comaiaj

輸出:每次聚類的最小距離min(diatance)和相應(yīng)的聚類結(jié)果clusterk

首先基于工作流的歷史日志信息,根據(jù)式 (1)計算得到活動間的依賴概率,并基于工作流執(zhí)行環(huán)境如instanceNumber等信息,執(zhí)行上述算法。該算法的主要步驟解釋如下:

步驟1 數(shù)據(jù)預(yù)處理。根據(jù)給定時間段內(nèi)的工作流實例數(shù)量instanceNumber與式 (2)計算每個活動的預(yù)計執(zhí)行頻次,根據(jù)式 (3)計算活動間的依賴頻次。

步驟2 聚類初始化。令每個活動自成一類,初始化clusterk且k=1。

步驟3 根據(jù)式 (5)和式 (6)計算clusterk中兩兩類間距離,找出類間距離的最小值,然后將類間距離最小的類聚合在同一個類中,k遞增,更新clusterk后執(zhí)行步驟4。

步驟4 判斷所有活動是否在同一個類中,如是,則聚類 (即切片)過程結(jié)束;否則,執(zhí)行步驟3。

1.3 算例

以圖1 所示的工作流為例,說明并驗證算法。其中,活動間的關(guān)系包括:a1與a2、a2與a3構(gòu)成順序關(guān)系,a3與a4、a5、a6之間為Xor-split關(guān)系,a4、a5、a6與a7之間為Xor-join關(guān)系。假設(shè)從工作流的歷史日志信息中計算得到活動間的依賴概率,如圖1中各邊上的權(quán)數(shù)所示。

圖1 工作流

另假設(shè)已知即將要到達(dá)的工作流實例數(shù)目為10000,各活動間的通信量見表1。具體的切片過程如下:

步驟1 基于活動間的依賴概率、式(2)和式(3),可計算活動間的依賴頻次見表1,如:fa1a2=fa1×pa1a2=10000。

步驟2 初始化:令k=1,則cluster1= {ci|i=1,2,…7}。其中,c1= {a1},c2= {a2},c3= {a3},c4={a4},c5= {a5},c6= {a6},c7= {a7}。

步驟4 重復(fù)步驟3直至所有活動都聚合在一個類中。

表1 活動間的依賴頻次和通信量

最終的切片結(jié)果見表2。

2 模擬實驗與分析

2.1 實驗設(shè)計

為了體現(xiàn)切片方法的適應(yīng)性,考慮了工作流執(zhí)行環(huán)境的兩個維度:①單位時間內(nèi)實例的到達(dá)數(shù)目;②可執(zhí)行資源 (服務(wù)器)的數(shù)目。由于篇幅有限,設(shè)計了2 組實驗,見表3。其中,每一組實驗均考慮HIPD 方法和本文所提出的方法,實驗所使用的工作流如圖1所示。

為了便于和HIPD 方法比較,效果指標(biāo)包括響應(yīng)時間和吞吐量。文獻 [8]中定義的響應(yīng)時間是指從第一個工作流實例到達(dá)直到最后一個工作流實例獲得響應(yīng)的時間;吞吐量是指單位時間內(nèi),已執(zhí)行結(jié)束的工作流實例數(shù)目占所請求執(zhí)行的工作流實例數(shù)目的百分比。

表2 聚類過程與結(jié)果

表3 分組實驗設(shè)計

另外,在所有的實驗中,為使方法對比效果更加明顯,假定每個服務(wù)器的執(zhí)行能力相同,每個活動在服務(wù)器上的執(zhí)行時間為0.005s,同一時間一個服務(wù)器只能執(zhí)行一個活動,且單位時間內(nèi)工作流實例均勻到達(dá),服務(wù)器之間的網(wǎng)絡(luò)帶寬為10Mb/s,則根據(jù)相應(yīng)公式可得活動間的通信時間見表4。

表4 活動間通信時間

2.2 工作流切片與服務(wù)器分配

針對圖1所示的工作流,基于本文所提出的切片方法所得到的切片結(jié)果如1.3 節(jié)中的表2 所示。為了便于與HIPD 方法比較,令min_support=4000,則基于HIPD 對圖1所示的工作流的切片結(jié)果見表5。

表5 基于HIPD 的工作流算例的切片結(jié)果

在模擬實驗進行之前,仍需基于切片結(jié)果,將工作流片段分配到相應(yīng)的服務(wù)器上。針對基于HIPD 所得到的切片結(jié)果,利用文獻 [8]中所使用的Round Robin算法將工作流片段分配到相應(yīng)的服務(wù)器上。針對基于本文所提出的切片方法所得到的切片結(jié)果,在進行服務(wù)器的分配時,盡可能地將在后續(xù)聚類步驟中先被聚合的工作流片段分配在同一個服務(wù)器上,并同時考慮服務(wù)器的負(fù)載均衡等因素。例如,將表2中k=2時所得聚類結(jié)果分配在2臺服務(wù)器上時,因為首先 {a3}和 {a4}被聚合在一個類中,所以將片段 {a3,a4}分配在同一臺服務(wù)器上。然后針對剩余的工作流片段 {a1}、{a2}、{a5}、{a6}、{a7},考慮k=3時{a2}、{a3}和 {a4}被聚合在一個類中,所以將 {a2}和{a3,a4}分配在同一臺服務(wù)器上。進一步的,考慮到服務(wù)器的負(fù)載均衡因素,將剩余的 {a1}、{a5}、{a6}、{a7}分配在另一臺服務(wù)器上。這種分配方式既考慮了活動間的通信時間和偏序關(guān)系,也同時考慮了服務(wù)器的負(fù)載均衡。針對兩組實驗的工作流片段的分配結(jié)果,見表6和表7。

表6 實驗組一的工作流片段分配

表7 實驗組二的工作流片段分配

2.3 實驗執(zhí)行與結(jié)果分析

實驗的軟件環(huán)境為AnyLogic Professional 7.0.0。Any-Logic是一款應(yīng)用廣泛的,對離散,連續(xù)和混合系統(tǒng)建模和仿真的工具[15],圖1 所示的工作流在AnyLogic流程模型庫中建模結(jié)果界面如圖2所示。

實驗結(jié)果如圖3、圖4所示。

基于以上兩組實驗結(jié)果,從以下幾個方面進行比較分析:

(1)本文所提出的切片方法在響應(yīng)時間和吞吐量兩方面均優(yōu)于HIPD 方法。

(2)當(dāng)服務(wù)器數(shù)目為2時,由圖3 可以看出,本文提出的切片方法明顯優(yōu)于HIPD 方法。并且當(dāng)單位時間內(nèi)工作流實例到達(dá)數(shù)目為600時,聚類2-6-2 (基于本文所提出的切片方法的最優(yōu)方案)的響應(yīng)時間為9.79s,相比于HIPD2-7-2 (基于HIPD 方法的最優(yōu)方案)的響應(yīng)時間13.77s,減少了31%。由此可見,在工作流切片時,考慮活動間的通信量比不考慮活動間的通信量更能減少工作流執(zhí)行的響應(yīng)時間。

圖2 基于AnyLogic的圖1所示的工作流算例的建模界面

圖3 實驗組一的實驗結(jié)果

圖4 實驗組二的實驗結(jié)果

(3)當(dāng)服務(wù)器數(shù)目增加時,由圖3和圖4可以看出,本文所提出的切片方法和HIPD 方法在響應(yīng)時間上均減少,在吞吐量上均提高。這是因為當(dāng)服務(wù)器數(shù)目增加時,提高了工作流執(zhí)行的并發(fā)性,減少了等待時間。但是本文所提出的切片方法在響應(yīng)時間和吞吐量方面的改善程度均優(yōu)于HIPD。

(4)縱觀所有實驗,隨著單位時間內(nèi)工作流實例數(shù)目的增加,本文提出的方法較之HIPD 方法在響應(yīng)時間方面的優(yōu)勢越來越大,由此可以說明當(dāng)實例數(shù)目越多時,通信量越大,本文提出的方法較HIPD 更能較少通信時間,從而減少響應(yīng)時間。

綜上,本文所提出的方法更能適應(yīng)工作流執(zhí)行環(huán)境。

3 結(jié)束語

本文針對當(dāng)前非中心化工作流的切片方法中存在的問題,提出一種基于聚類的非中心化工作流的適應(yīng)性切片方法。該方法是對經(jīng)典的凝聚層次聚類法的改進,雖然思路上與經(jīng)典方法相似,但是在類間距離的計算上區(qū)別于傳統(tǒng)聚類方法。而且,該方法不僅考慮了工作流中活動間的偏序關(guān)系與依賴頻次,還充分考慮了活動間的通信量與通信時間。通過模擬實驗,與當(dāng)前最好的動態(tài)流程切片方法HIPD 相比,所提出的方法在不同的工作流執(zhí)行環(huán)境下,響應(yīng)時間與吞吐量均有不同程度的優(yōu)勢,且更能適應(yīng)工作流執(zhí)行環(huán)境的動態(tài)變化。

該方法尚有不足,如切片結(jié)果與服務(wù)器的分配方面,尚未形成完整的方法體系;又如實驗時做了若干假設(shè),不能完全體現(xiàn)實際工作流執(zhí)行環(huán)境的各種場景等。上述局限性將有待在未來的研究工作進一步完善。

[1]WANG Wenli.Event-based distributed workflow technology in cloud environment[D].Harbin:Harbin Institute of Technology,2013 (in Chinese).[王文莉.云環(huán)境下基于事件的分布式工作流技術(shù) [D].哈爾濱:哈爾濱工業(yè)大學(xué),2013.]

[2]Wan Cong,Wang Cuirong,Pei Jianxun.A QoS-awared scientific workflow scheduling schema in cloud computing [C]//IEEE International Conference on Information Science and Technology,2012:634-639.

[3]Tram Truong Huu,Guilherme Koslovski,F(xiàn)abienne Anhalt,et al.Joint elastic cloud and virtual network framework for application performance-cost optimization [J].Journal of Grid Computing,2011,9 (1):27-47.

[4]Eun-Kyu Byun,Yang-Suk Kee,Jin-Soo Kim,et al.BTS:Resource capacity estimate for time-targeted science workflows[J].Journal of Parallel and Distributed Computing,2011,71(6):848-862.

[5]Simon Ostermann,Radu Prodan.Impact of variable priced cloud resources on scientific workflow scheduling [G].LNCS 7484:Euro-Par 2012Parallel Processing,2012:350-362.

[6]LI Wenhao.The study on instance-intensive workflow schedule in algorithms in community cloud [D].Jinan:Shandong University,2010 (in Chinese).[李文浩.面向社區(qū)云的實例密集型工作流調(diào)度方法研究 [D].濟南:山東大學(xué),2010.]

[7]Liu K,Jin H,Chen J,et al.A compromised-time-cost scheduling algorithm in SwinDeW-C for instance-intensive cost-constrained workflows on a cloud computing platform [J].International Journal of High Performance Computing Applications,2010,24 (4):445-456.

[8]Faramarz Safi Esfahani,Masrah Azrifah Azmi Murad,Md Nasir B Sulaimanb,et al.Adaptable decentralized service oriented architecture[J].Journal of Systems and Software,2011,84(10):1591-1617.

[9]YANG Chengwei,MENG Xiangxu.Research on issues of dynamic process optimization scheduling under cloud computing environment [D].Jinan:Shandong University,2012 (in Chinese).[楊成偉,孟祥旭.云計算環(huán)境下動態(tài)流程優(yōu)化調(diào)度問題研究 [D].濟南:山東大學(xué),2012.]

[10]Li G,Muthusamy V,Jacobsen HA.A distributed service oriented architecture for business process execution [J].ACM Transactions on the Web,2010,4 (1):1-33.

[11]Muthusamy V,Jacobsen HA,Chau T,et al.SLA-driven business process management in SOA [C]//Conference of the Center for Advanced Studies on Collaborative Research,2009:86-100.

[12]Daniel Wutke,F(xiàn)rank Leymann,Daniel Martin.A method for partitioning BPEL processes for decentralized execution [C]//Erster Zentraleurop ischer Workshop,2009:109-114.

[13]Faramarz Safi Esfahani,Masrah Azrifah Azmi Murad,Md Nasir Sulaiman,et al.Using process mining to business process distribution [C]//ACM Symposium on Applied Computing,2009:2140-2145.

[14]Alex Seret,Seppe KLM vanden Broucke,Bart Baesens,et al.A dynamic understanding of customer behavior processes based on clustering and sequence mining [J].Expert Systems with Applications,2014,41 (10):4648-4657.

[15]Zhang Debin.Teaching case:Implementation of discrete event simulation using anylogic[C]//Proceedings of International Symposium on Modeling and Simulation of Complex Management Systems,2013:98-101.

猜你喜歡
偏序實例切片
基于有限辛空間的一致偏序集和Leonard對
相對連續(xù)偏序集及其應(yīng)用
基于SDN與NFV的網(wǎng)絡(luò)切片架構(gòu)
可消偏序半群的可消偏序擴張與商序同態(tài)
腎穿刺組織冷凍切片技術(shù)的改進方法
冰凍切片、快速石蠟切片在中樞神經(jīng)系統(tǒng)腫瘤診斷中的應(yīng)用價值比較
偏序群S上S-偏序系的內(nèi)射包*
完形填空Ⅱ
完形填空Ⅰ
墨汁染色在組織切片中的應(yīng)用
临城县| 静海县| 安吉县| 长沙县| 德庆县| 筠连县| 昭觉县| 利辛县| 长汀县| 房山区| 泰安市| 龙井市| 体育| 罗源县| 浮山县| 霞浦县| 石渠县| 宕昌县| 山西省| 新乡县| 武鸣县| 洞口县| 海晏县| 金秀| 沿河| 贡嘎县| 临高县| 邓州市| 土默特左旗| 鸡泽县| 皮山县| 新闻| 都匀市| 长沙县| 太仆寺旗| 甘泉县| 资源县| 玉屏| 安达市| 全州县| 晋宁县|