• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于負載感知的數(shù)據(jù)流動態(tài)負載均衡策略

    2017-12-14 05:36:04李梓楊王躍飛
    計算機應用 2017年10期
    關鍵詞:后繼元組流式

    李梓楊,于 炯,,卞 琛,王躍飛,魯 亮

    (1.新疆大學 軟件學院, 烏魯木齊 830008; 2.新疆大學 信息科學與工程學院, 烏魯木齊 830046) (*通信作者電子郵箱yujiong@xju.edu.cn)

    基于負載感知的數(shù)據(jù)流動態(tài)負載均衡策略

    李梓楊1,于 炯1,2*,卞 琛2,王躍飛2,魯 亮2

    (1.新疆大學 軟件學院, 烏魯木齊 830008; 2.新疆大學 信息科學與工程學院, 烏魯木齊 830046) (*通信作者電子郵箱yujiong@xju.edu.cn)

    針對大數(shù)據(jù)流式計算平臺中存在節(jié)點間負載不均衡、節(jié)點性能評估不全面的問題,提出基于負載感知算法的動態(tài)負載均衡策略,并將算法應用于Flink數(shù)據(jù)流計算平臺中。首先通過有向無環(huán)圖的深度優(yōu)先搜索算法獲取節(jié)點的計算延遲時間作為評估節(jié)點性能的依據(jù),并制定負載均衡策略;然后基于數(shù)據(jù)分塊管理策略實現(xiàn)流式數(shù)據(jù)的節(jié)點間負載遷移技術,通過反饋實現(xiàn)全局和局部的負載調優(yōu);最后通過實驗評估時空代價論證算法的可行性,并討論重要參數(shù)對算法執(zhí)行效果的影響。經實驗驗證算法通過優(yōu)化流式計算任務的負載分配提高了任務的執(zhí)行效率,與采用Flink平臺現(xiàn)有的負載均衡策略相比,任務執(zhí)行時間平均縮短6.51%。

    數(shù)據(jù)流;負載均衡;深度優(yōu)先搜索;負載感知; Apache Flink

    0 引言

    隨著云計算、物聯(lián)網、移動互聯(lián)和社交媒體等新技術和新服務模式的不斷興起,全球數(shù)據(jù)量呈爆炸式增長趨勢,人類已經全面進入大數(shù)據(jù)[1]時代。大數(shù)據(jù)蘊含大信息,大信息提煉大知識,大知識創(chuàng)造高價值并從更高的層面為用戶提供更優(yōu)質的服務。同時,數(shù)據(jù)價值的時效性變得越來越明顯,為了更及時地從數(shù)據(jù)中提煉有價值的信息,必須不斷提高數(shù)據(jù)分析的實時性,大數(shù)據(jù)流式計算應運而生。與批處理模式[2]相比,流處理模式[3]具有實時性、易失性、無序性、無限性和突發(fā)性的特征[4],能夠在數(shù)據(jù)產生后即時提煉價值,已在對數(shù)據(jù)分析實時性要求較高的場景中得到廣泛應用。為了滿足這種實時性要求,集群應具備較高的響應能力和較低的計算延遲,同時要求計算結果的準確性和可靠性[5],這對流式計算的技術發(fā)展提出了更高的要求。然而面對高速連續(xù)大規(guī)模的數(shù)據(jù),計算節(jié)點間負載傾斜的問題尤為突出,嚴重影響了集群的性能。但已有的研究成果多面向批處理環(huán)境,無法應用于流式計算平臺,負載不均衡仍是制約流式計算集群響應能力和吞吐量的瓶頸。

    Apache Flink[6-9]是針對流數(shù)據(jù)處理的分布式計算平臺,支持流處理和批處理兩種模式,提供Exactly-Once的可靠性流式計算[10]和豐富的時間窗口[11]機制。憑借低延遲、高吞吐的性能優(yōu)勢[12],Flink在得到學術界廣泛關注的同時,也在產業(yè)界的應用中取得顯著成果:阿里巴巴構建了上千節(jié)點的Blink集群參與在線搜索和實時推薦業(yè)務,Google云平臺宣布對Flink的相關技術支持。但在不斷深入的產業(yè)化進程中Flink也面臨一些挑戰(zhàn),須經過不斷改進和完善以滿足應用需求。本文提出基于Flink的數(shù)據(jù)流動態(tài)負載均衡策略,通過負載感知算法獲取節(jié)點的計算延遲時間作為負載均衡策略的依據(jù)。實驗結果表明,本文算法能通過優(yōu)化負載分配縮短任務的執(zhí)行時間,平均優(yōu)化比達到6.51%。

    1 相關工作

    在大數(shù)據(jù)流式計算中,數(shù)據(jù)由源點(Source)發(fā)出,依次經過不同算子(Operator)的處理,最終計算結果在匯點(Sink)被持久化。在不考慮迭代計算的前提下,計算節(jié)點的拓撲是一個AOV-網(Activity On Vertex Network),其中節(jié)點代表處理數(shù)據(jù)的算子,弧代表數(shù)據(jù)流動的方向。而在分布式數(shù)據(jù)流計算中,同一個算子往往被映射到多個不同的物理節(jié)點上,這樣每個計算節(jié)點都可能有多個前驅和多個后繼。在傳統(tǒng)的流式計算平臺中,數(shù)據(jù)元組大多以〈key,value〉的形式在節(jié)點間被計算和傳輸,節(jié)點根據(jù)元組key的Hash值決定每個元組的路由。但這種方式本身具有一定的隨機性和盲目性,用戶無法干預數(shù)據(jù)元組的路由選擇,節(jié)點也不考慮其后繼的計算負載而是隨機地完成交付。不可避免地,會出現(xiàn)在某一時間段內大多數(shù)元組被發(fā)往相同的目標節(jié)點,而其他節(jié)點沒有得到負載分配,從而導致節(jié)點間負載傾斜。在Flink中,節(jié)點對數(shù)據(jù)元組的路由策略主要有廣播、輪詢和隨機分配三種方式[7],均不考慮節(jié)點的負載情況,會造成與上述同樣的問題。

    為了更好地解決數(shù)據(jù)流負載均衡問題,已有學者提出了基于各種資源評估模型和感知策略的負載均衡算法,但極少應用于Flink平臺:文獻[13]提出一種用靈活算子遷移算法解決內存不足造成的背壓(Backpressure)問題,以理論計算的節(jié)點剩余內存作為性能評估指標,即最大可持續(xù)吞吐量(Maximum Sustainable Throughput, MST)。文獻[14]根據(jù)關鍵路徑上的性能感知和非關鍵路徑上的能耗感知數(shù)據(jù)制定任務調度計劃,達到響應時間與能耗的最低值;但未考慮計算節(jié)點的內存、網絡等其他性能指標的影響。文獻[15]針對Storm平臺分別提出在線和離線的自適應任務調度策略,有效減小了任務調度中的通信開銷,但算法本身復雜度很高。文獻[16]提出的SkewReduce策略建立了用戶定義的代價模型,根據(jù)任務執(zhí)行中收集的元數(shù)據(jù)在鄰近代價閾值時啟動分區(qū)映射過程,實現(xiàn)負載的均勻分配。文獻[17]提出針對用戶定義數(shù)據(jù)流上的延遲評估模型,通過計算資源和任務并行度的彈性變化,在計算資源最小化的同時提供低延遲保障;但資源彈性變化和任務調度過程開銷較大。

    針對上述存在的問題,本文的主要工作有:

    1)針對單一性能評估指標存在的局限性,提出依據(jù)節(jié)點處理元組的延遲時間評估節(jié)點性能的思想。

    2)提出一種基于有向無環(huán)圖(Directed Acyclic Graph, DAG)的深度優(yōu)先搜索的負載感知(load-aware)算法,用于檢測節(jié)點的計算延遲時間,將流式計算模型的AOV-網轉化為AOE-網(Activity On Edge Network),每個計算節(jié)點都能獲取其后繼的負載信息,為路由決策提供支持。

    3)提出一種負載均衡策略,節(jié)點可根據(jù)負載感知的檢測結果重新分配其后繼的計算負載,該策略可同時滿足全局和局部的負載均衡需求。

    4)提出一種流式數(shù)據(jù)分塊管理的思想,通過小頂堆結構管理數(shù)據(jù)塊,提出有狀態(tài)(stateful)流式計算的分塊負載遷移技術。

    2 負載感知技術

    在分布式計算環(huán)境下,負載均衡策略的依據(jù)是計算節(jié)點的資源利用率,通過將資源利用率過高節(jié)點的計算負載遷移到資源利用率較低的節(jié)點中實現(xiàn)節(jié)點間負載的均衡。一個節(jié)點的可用資源包括CPU、內存、磁盤I/O、網絡傳輸?shù)?而現(xiàn)有研究成果多將CPU或內存利用率等單一指標作為性能評估依據(jù),這在實際應用中是存在局限性的。

    事實上,節(jié)點中任何一種資源的匱乏都會成為節(jié)點響應能力的瓶頸,導致數(shù)據(jù)元組在內存中被滯留而計算延遲加長。因此,任何單一的性能評估指標在實際應用中都存在局限性,而計算延遲是反映節(jié)點負載和響應能力的綜合體現(xiàn),延遲越長說明節(jié)點負載越高、響應能力越弱;反之說明節(jié)點有充足的剩余計算資源。負載感知技術通過延遲檢測算法獲取節(jié)點的計算延遲數(shù)據(jù),并將其作為制定負載均衡策略的依據(jù)。

    2.1 延遲檢測算法

    為了獲取數(shù)據(jù)元組經過每個節(jié)點的延遲時間,通過有向無環(huán)圖的深度優(yōu)先搜索算法遍歷整個節(jié)點拓撲,為每個節(jié)點不同的訪問狀態(tài)標記不同的顏色,并記錄每個節(jié)點狀態(tài)改變的時間戳:初始狀態(tài)下所有節(jié)點都標記為白色,表示節(jié)點未被訪問過。當節(jié)點被首次發(fā)現(xiàn)后標記為灰色,并記錄當前時間為節(jié)點的發(fā)現(xiàn)時間(Operator discover time, O.d)。當節(jié)點的所有后繼都被訪問完成且數(shù)據(jù)到達匯點后,該節(jié)點被標記為黑色,表示已完成對該節(jié)點對應所有路由的檢測,同時記錄當前時間為節(jié)點的完成時間(Operator finish time, O.f)。

    由上述可知,發(fā)現(xiàn)時間是節(jié)點收到數(shù)據(jù)元組的時間,完成時間是由該節(jié)點發(fā)出的數(shù)據(jù)元組完成所有計算并到達匯點的時間,是一條路徑的完成時間。特別地,數(shù)據(jù)源點的發(fā)現(xiàn)時間是其發(fā)出數(shù)據(jù)元組的時間,完成時間是集群中每個節(jié)點都完成一次計算的時間;而匯點不對數(shù)據(jù)進行處理且沒有后繼,其發(fā)現(xiàn)時間與完成時間相等,都是其收到數(shù)據(jù)元組的時間,即source.f=sink.f=sink.d。

    集群在算法開始執(zhí)行前根據(jù)其結構拓撲圖執(zhí)行相關初始化操作:將所有節(jié)點的訪問狀態(tài)標記為白色,節(jié)點的發(fā)現(xiàn)和完成時間都記為空(NIL),通過DFS-Visit(G,G.source)調用節(jié)點訪問算法,從源點開始對整個拓撲進行深度優(yōu)先搜索。

    算法1 DAG深度優(yōu)先節(jié)點訪問算法。

    輸入 節(jié)點拓撲DAG:G={V,E};當前待訪問的節(jié)點O。

    輸出 當前節(jié)點發(fā)現(xiàn)時間O.d;當前節(jié)點完成時間O.f;當前節(jié)點及其后繼的延遲檢測表latency。

    1)

    init(latency);

    /*初始化二維表latency用于記錄延遲時間*/

    2)

    O.d← getTimeStamp();

    /*獲取當前系統(tǒng)時間戳作為節(jié)點O的發(fā)現(xiàn)時間*/

    3)

    O.color← GRAY;

    /*將當前節(jié)點標記為灰色,表示該節(jié)點已被發(fā)現(xiàn)*/

    4)

    O.bsl← 0;

    /*bsl為節(jié)點O黑色后繼的延遲時間和,初始值為0*/

    5)

    foreachS∈G.adj[O]

    /*依次遍歷節(jié)點O的所有后繼*/

    6)

    ifS.color=WHITE then

    /*如果后繼節(jié)點為白色,即尚未被訪問過*/

    7) DFS-Visit(G,G.S);

    /*對該后繼節(jié)點進行深度優(yōu)先搜索*/

    8)

    else

    /*由定理1可知,所有非白色的后繼節(jié)點均為黑色*/

    9)

    S.d←S.getDiscoverTime();

    /*獲取上一次搜索得到的發(fā)現(xiàn)時間*/

    10)

    S.d←S.getFinishTime();

    /*獲取上一次搜索得到的完成時間*/

    11)

    O.bsl←O.bsl+(S.f-S.d);

    /*記錄所有黑色后繼的延遲時間和*/

    12)

    latency.add(S,S.d,S.f);

    /*記錄后繼節(jié)點的發(fā)現(xiàn)時間和完成時間*/

    13)

    end if

    14)

    end foreach

    15)

    O.f← getTimeStamp()+O.bsl;

    /*當前系統(tǒng)時間與黑色后繼延遲時間相加作為當前節(jié)點的完成時間*/

    16)

    O.color← BLACK;

    /*將當前節(jié)點標記為黑色,表示該節(jié)點已完成搜索*/

    17)

    latency.add(O,O.d,O.f);

    /*記錄當前節(jié)點的發(fā)現(xiàn)時間和完成時間*/

    18)

    load_ aware (O,latency);

    /*利用2.2節(jié)所述策略,對當前節(jié)點執(zhí)行局部的負載感知*/

    19)

    returnlatency;

    /*返回當前節(jié)點及其后繼的延遲時間表*/

    在DFS-Visit(G,O)第6)~12)行中,算法依次檢查當前待訪問節(jié)點的所有后繼,并從所有白色節(jié)點向后深度優(yōu)先搜索。算法認為所有非白色后繼節(jié)點均為黑色,可直接獲取其上一次搜索中保存的發(fā)現(xiàn)和完成時間,并延長當前節(jié)點的完成時間(第11)行)。定理1保證了推斷的正確性,即保證算法的正確性以及每個節(jié)點有且僅有一組發(fā)現(xiàn)和完成時間。

    定理1 黑白定理。在有向無環(huán)圖的深度優(yōu)先搜索算法中,對于任意節(jié)點On及其任意一個后繼節(jié)點On+k,有On.dgt;On+k.f(On被發(fā)現(xiàn)時其后繼節(jié)點的訪問狀態(tài)為黑色)或On.dlt;On+k.dlt;On+k.f≤On.f(On被發(fā)現(xiàn)時其后繼節(jié)點的訪問狀態(tài)為白色)其中之一必然成立。

    證明 當On.dlt;On+k.d時,即節(jié)點On+k在On被標記為灰色之后才被發(fā)現(xiàn),且On+k是On的后繼,根據(jù)深度優(yōu)先搜索的規(guī)則,只有當On+k被處理完成之后算法才返回On,On+k被標記為黑色的時間應在On之前,即On+k.flt;On.f。當On.dgt;On+k.d時,即On+k在On被發(fā)現(xiàn)之前先被發(fā)現(xiàn),這說明On+k在對其另一個前驅的深度優(yōu)先搜索過程中已經被訪問過,因此在On被發(fā)現(xiàn)之前On+k已經被標記為黑色,即On.dgt;On+k.f。

    定理1說明在On第一次被發(fā)現(xiàn)的時刻,其所有后繼節(jié)點只可能為黑色或白色,不可能為灰色,所以算法的推斷是正確的。這樣保證每個節(jié)點僅被訪問一次,有且僅有一組發(fā)現(xiàn)和完成時間,保證負載感知一致性并減少遞歸調用的次數(shù),降低算法的時間復雜度,提高效率。

    當深度優(yōu)先搜索算法完成后,整個集群完成對節(jié)點計算延遲的檢測并獲得檢測結果,每個節(jié)點On都得到如表1所示的計算延遲檢測表,其中On+k(1≤k≤m)為節(jié)點On的所有后繼,節(jié)點根據(jù)延遲檢測的結果進行負載感知并在需要時啟動負載均衡算法。

    表1 計算延遲檢測表

    2.2 基于AOE-網的負載感知

    通過深度優(yōu)先搜索的延遲檢測算法,獲取了每條路徑的計算延遲,On.f-On.d是節(jié)點On所對應路徑的延遲時間,即On的計算延遲。在流式計算節(jié)點拓撲圖中,如果將On+k的延遲作為弧On→On+k的權值,則可以將流式計算拓撲的AOV-網轉化為對應的AOE-網。

    定義1 數(shù)據(jù)流AOE-網。如圖1所示,在數(shù)據(jù)流AOE-網中,每個節(jié)點代表對應算子的物理映射,弧代表對應的數(shù)據(jù)流向,弧的權值代表對應弧頭節(jié)點的計算延遲,記為:

    w(On,On+k)=On+k.f-On+k.d

    (1)

    其中:On和On+k分別是該弧的弧尾和弧頭;On+k.d和On+k.f分別為節(jié)點On+k的發(fā)現(xiàn)和完成時間。對于指向同一個節(jié)點的兩條弧,由于在深度優(yōu)先搜索算法中對其弧頭節(jié)點訪問了兩次,且第二次訪問時該節(jié)點為黑色,根據(jù)定理1及DFS-Visit算法第9)~12)行的執(zhí)行結果,這兩條弧應具有相同的權值,即對應弧頭節(jié)點在第一次訪問時的計算延遲。

    圖1 流式計算AOE-網拓撲圖

    (2)

    maxn=MAX(w(On,On+1),w(On,On+2),…,

    w(On,On+m))

    (3)

    其中:w(On,Oi)是節(jié)點Oi的計算延遲,也是弧On→Oi的權值。計算延遲的方差為:

    (4)

    3 負載均衡策略

    通過基于DAG的深度優(yōu)先搜索的負載感知算法,獲取了每個節(jié)點的計算延遲。負載均衡策略的目標是通過將計算延遲過長節(jié)點的負載遷移到計算延遲較短的節(jié)點中去,即把負載過高節(jié)點的計算負載遷移到負載較低的節(jié)點中去,從而實現(xiàn)節(jié)點間的負載均衡。為了能夠控制和改變數(shù)據(jù)元組的路由,將節(jié)點的輸出數(shù)據(jù)分為不同的“塊”,并使用堆結構管理這些數(shù)據(jù)塊,實現(xiàn)有狀態(tài)流式計算的負載遷移技術,同時兼容Flink的狀態(tài)管理機制。

    3.1 數(shù)據(jù)分塊與管理機制

    流式數(shù)據(jù)的分塊機制是由計算節(jié)點對每個待輸出的數(shù)據(jù)元組執(zhí)行兩次映射來確定對應的目標節(jié)點:節(jié)點先通過元組key的Hash值確定對應的數(shù)據(jù)塊,再通過數(shù)據(jù)塊的記錄找到對應的目標節(jié)點并輸出元組。

    定義3 流式數(shù)據(jù)塊。設計算節(jié)點On的后繼節(jié)點集合為Sn={On+1,On+2,…,On+m},共包含m個節(jié)點且為同一算子的不同物理映射,該節(jié)點對應數(shù)據(jù)塊的集合為Bn={block1,block2,…,blockk},k?m,且每個block是一個三元組:

    blocki=〈On,dest,size〉

    (5)

    其中:i是該數(shù)據(jù)塊的編號;On是該數(shù)據(jù)塊所屬的節(jié)點;dest是該數(shù)據(jù)塊對應的目標節(jié)點,即blocki.dest=Oj,且nlt;j≤n+m;size是該數(shù)據(jù)塊已經處理的元組數(shù)目,表示該數(shù)據(jù)塊的大小。k?m保證每個后繼節(jié)點對應多個數(shù)據(jù)塊。其中數(shù)據(jù)元組到block的映射采用傳統(tǒng)哈希映射法:

    i=[Hash(key) modk]+1

    (6)

    則該元組對應的數(shù)據(jù)塊為blocki。當節(jié)點需要輸出一個元組時,先根據(jù)key的Hash值找到對應的數(shù)據(jù)塊,再通過blocki.dest記錄的內容找到對應的目標節(jié)點并輸出該元組,同時執(zhí)行一次blocki.size++更新數(shù)據(jù)塊的大小。

    圖2 數(shù)據(jù)塊小頂堆結構

    一般認為,在有狀態(tài)的流式計算中數(shù)據(jù)塊保存的狀態(tài)數(shù)據(jù)大小與處理過的數(shù)據(jù)量正相關,且遷移大數(shù)據(jù)塊產生的開銷較大,因此節(jié)點總是希望遷移數(shù)據(jù)量最小的塊以降低負載遷移的代價。如圖2所示,節(jié)點用堆管理數(shù)據(jù)塊,即所有數(shù)據(jù)塊按照block.size的大小構成小頂堆,堆頂元素為所有數(shù)據(jù)塊中數(shù)據(jù)量最小的。當堆頂元素被遷出或有新元素遷入時,由節(jié)點自動調整堆結構,保證堆頂元素始終是剩余元素中數(shù)據(jù)量最小的。這樣每次發(fā)生負載遷移時都遷出堆頂?shù)臄?shù)據(jù)塊,以降低負載遷移的開銷同時避免發(fā)生遷移抖動。

    3.2 負載均衡與負載遷移策略

    算法2 負載均衡算法。

    1)

    /*當參數(shù)超過設定的閾值時,反復執(zhí)行負載均衡算法*/

    2)

    quicksort(Wn, desc);

    /*對Wn中的元素降序排序*/

    3)

    fori←1 tom/2 do

    /*從延遲最長的后繼節(jié)點向下依次執(zhí)行負載遷移*/

    4)

    t← |Wn[i]-(Wn[i]+Wn[m-i])/2|;

    /*計算待遷移數(shù)據(jù)塊的數(shù)目t*/

    5)

    load-migrate(Wn[i],Wn[m-i],t);

    /*從Wn[i]向Wn[m-i]遷移t個數(shù)據(jù)塊*/

    6)

    end for

    7)

    Wn← DFS-Visit(G,On);

    /*完成負載遷移后,對當前節(jié)點執(zhí)行一次局部負載感知*/

    8)

    maxn← max(Wn);

    /*根據(jù)式(3)計算Wn中計算延遲最長的元素*/

    9)

    /*根據(jù)式(4)計算Wn中所有元素的方差*/

    10)

    end while

    由算法2可知,這是一種啟發(fā)式局部反饋的負載均衡策略,針對需要負載均衡的節(jié)點不斷檢測其后繼的負載情況并在需要時遷移負載,直到均衡為止。特別地,當On為數(shù)據(jù)源點時,是對整個集群進行負載均衡。

    在算法2第5)行中,當需要遷移負載時通過調用遷移函數(shù)實現(xiàn)節(jié)點間的負載遷移,這里分別涉及到遷出節(jié)點On+i,遷入節(jié)點On+m-i及其前驅節(jié)點On。當需要從On+i向On+m-i遷移t個數(shù)據(jù)塊時,負載遷移的執(zhí)行過程如下:

    1)對節(jié)點On執(zhí)行數(shù)據(jù)流靜默:暫停向遷出節(jié)點On+i發(fā)送數(shù)據(jù)元組,并將需要發(fā)送的元組保存在On的緩存中。

    2)從遷出節(jié)點On+i的堆頂取出一個數(shù)據(jù)塊并調整堆結構,將該數(shù)據(jù)塊對應的狀態(tài)數(shù)據(jù)發(fā)送至遷入節(jié)點On+m-i,并調整其堆結構。

    3)修改節(jié)點On記錄的對應數(shù)據(jù)塊路由信息,即block.dest←On+m-i,將該數(shù)據(jù)塊的元組路由到新的目標節(jié)點。

    4)返回執(zhí)行第2)步,將節(jié)點On+i中數(shù)據(jù)量最小的t個數(shù)據(jù)塊全部遷移至On+m-i后,執(zhí)行第5)步。

    5)恢復On被靜默的發(fā)送數(shù)據(jù)流,將其緩存中的數(shù)據(jù)發(fā)往新的目標節(jié)點。

    數(shù)據(jù)流計算中節(jié)點間的高效負載遷移任務通過以上步驟完成。在Flink中,對于有狀態(tài)的流式計算,每個TaskManager的計算狀態(tài)存儲在自身的RocksDB數(shù)據(jù)庫中,并能夠定期將狀態(tài)的快照(Snapshot)信息固化在文件系統(tǒng)或Hadoop分布式文件系統(tǒng)(Hadoop Distributed File System, HDFS)中。這能夠很好地兼容負載均衡和遷移策略:如果將節(jié)點的狀態(tài)數(shù)據(jù)以塊為單位進行組織和存儲,并使用堆管理這些數(shù)據(jù)塊,就可用負載遷移算法實現(xiàn)節(jié)點間有狀態(tài)流式數(shù)據(jù)的負載遷移。

    3.3 參數(shù)影響與代價評估

    實驗結果表明,部分參數(shù)的取值對算法的執(zhí)行效果有影響:θ和ε是由用戶設定的兩個參數(shù)值,也是啟動負載遷移算法的閾值,它們共同決定了負載感知算法的敏感程度,決定了負載感知算法的敏感程度:閾值過小會導致算法過于敏感,負載遷移過于頻繁甚至出現(xiàn)遷移抖動的現(xiàn)象;閾值過大會導致算法過于遲鈍,造成數(shù)據(jù)元組被阻塞,使下一次負載遷移產生較大的時空代價。k是每個節(jié)點數(shù)據(jù)分塊的數(shù)目,它決定了負載遷移的粒度,k的值應遠大于節(jié)點后繼的數(shù)目,這樣保證每個節(jié)點都對應多個block。參數(shù)值過小會導致每個數(shù)據(jù)塊元組數(shù)量過多,負載遷移開銷過高,產生過度遷移和遷移抖動的問題;參數(shù)值過大會影響算法的執(zhí)行效率,需要多次負載感知和遷移才能實現(xiàn)負載均衡。因此參數(shù)的取值對算法的執(zhí)行效果至關重要。

    在空間上,計算延遲檢測表中的數(shù)據(jù)包括節(jié)點名稱和對應的兩個時間戳。在Java中,時間戳占用8 Byte,節(jié)點名稱可用一個整型變量(4 Byte)記錄,而一個節(jié)點的后繼不超過500個節(jié)點,因此延遲檢測表占用內存空間應不超過O(n)=(2×8 Byte+4 Byte)×500=10 000 Byte≈10 KB。在負載遷移策略中,每個節(jié)點存儲的路由信息表的空間復雜度為O(1),小頂堆結構占用內存應不超過O(n)=4 Byte×3×500=6 000 Byte≈6 KB。這對于目前的硬件存儲能力和千兆以太網的傳輸速率而言是不值一提的。實驗結果表明算法在空間復雜度上是可行的。

    4 實驗與分析

    作為一款開源免費的新興分布式數(shù)據(jù)流計算框架,Apache Flink已經得到比較廣泛的應用。實驗以Flink為平臺,分別執(zhí)行WordCount和TeraSort兩個標準Benchmark,分別在相同環(huán)境下對動態(tài)負載均衡算法和現(xiàn)有負載均衡策略進行對比,從而檢驗動態(tài)負載均衡及負載遷移策略的性能。

    4.1 實驗環(huán)境

    實驗搭建的Flink集群運行在10臺普通物理PC上,每個節(jié)點的軟硬件環(huán)境配置參數(shù)如表2所示,其中包括1個JobManager節(jié)點,8個TaskManager節(jié)點和1個HDFS節(jié)點作為數(shù)據(jù)的源點和匯點。同時,作為Flink平臺的奠基性成果,文獻[6]分別采用WordCount和TeraSort兩個標準的Benchmark進行驗證。為了驗證動態(tài)負載均衡算法對Flink平臺的優(yōu)化效果,實驗也采用這兩個Benchmark作為基準測試。通過多次預實驗進行反饋調節(jié),最終確定實驗相關參數(shù)設定:θ=0.13 ms,ε=0.01 ms2,parallelism.default=8,k=100,taskmanager.numberOfTaskSlots=1,這樣每個節(jié)點啟動一個線程,占用單核的CPU資源,從而形成負載傾斜且節(jié)點資源不足造成計算延遲過長的實驗現(xiàn)象,以驗證算法的優(yōu)化效果。其中,WordCount實驗測試數(shù)據(jù)為有100萬個英文單詞的文本數(shù)據(jù),TeraSort實驗的測試數(shù)據(jù)為1 GB待排序的數(shù)值型數(shù)據(jù)。

    表2 工作節(jié)點配置參數(shù)表

    4.2 實驗與分析

    如表3所示,在WordCount實驗中共設立了兩個實驗組和三個對照組分別在對應環(huán)境下執(zhí)行作業(yè),并在作業(yè)執(zhí)行過程的重要時間點記錄時間戳,跟蹤記錄任務執(zhí)行的相關參數(shù)作為對比和分析的依據(jù)。由于動態(tài)負載均衡算法是對現(xiàn)有Flink平臺的優(yōu)化,因此三個對照組分別代表了Flink現(xiàn)有負載均衡策略在不同場景下的執(zhí)行效率,而兩個實驗組是在相同環(huán)境下分別啟用了動態(tài)負載均衡算法與原系統(tǒng)的負載均衡策略形成對比實驗。

    表3 對照實驗信息表

    啟動負載均衡算法的條件之一是maxngt;θ,因此主要關注每組實驗中負載最重、計算時間最長的TaskManager節(jié)點(稱主工作節(jié)點),并記錄以下三個運行參數(shù):任務執(zhí)行時間、主工作節(jié)點處理的數(shù)據(jù)量和平均每處理1萬單詞使用的時間。為了避免個別任務存在的偶然性誤差,實驗將每個對照組的任務分別執(zhí)行10次并計算相關參數(shù)的平均值,得到如圖3所示的實驗結果。從圖3(a)中可以看出:在相同環(huán)境下:實驗組1通過實施動態(tài)負載均衡算法,將對照組1中原本由單節(jié)點處理的100萬條數(shù)據(jù)分配給8個節(jié)點,有效縮短了任務執(zhí)行時間,優(yōu)化比為66.80%。實驗組2通過實施負載均衡算法,優(yōu)化了對照組3中節(jié)點間的負載分配,減少主工作節(jié)點的計算負載,優(yōu)化比為6.51%。這說明動態(tài)負載均衡算法在負載傾斜比較嚴重的情況下優(yōu)化效果更好。對照組2是一種理想情況,其任務執(zhí)行時間最短說明負載均衡算法還有繼續(xù)優(yōu)化和提升的空間。在圖5(b)中,實驗組數(shù)據(jù)的平均處理時間與數(shù)據(jù)量的比值有明顯的上升,其中實驗組1的上升最明顯,這是因為其負載傾斜嚴重導致較大的遷移代價。

    圖3 實驗結果對比

    為了進一步對比分析負載均衡算法對任務執(zhí)行過程的影響,在任務執(zhí)行過程中數(shù)據(jù)匯點每收到10萬條數(shù)據(jù)記錄一個時間戳Ti,通過兩個時間戳之間的差值得到處理這些數(shù)據(jù)的時間延遲,即Pi=Ti-Ti-1。選取每個實驗組中各項參數(shù)距離均值最近的一次任務作為該實驗組的代表,分析其任務執(zhí)行過程中集群響應能力的變化情況。

    如圖4所示,對照組1和實驗組1分別是在相同環(huán)境下原系統(tǒng)和動態(tài)負載均衡策略的任務執(zhí)行情況,實驗組1中集群分別在P2、P4和P6時間段內發(fā)生了3次負載遷移,分別將相同數(shù)據(jù)量的計算時間縮短了484.9 ms、96.8 ms和21.4 ms,其中第一次負載遷移的優(yōu)化效果最明顯,因為原本單節(jié)點的計算負載被分配給8個節(jié)點,顯著提高任務執(zhí)行效率。同時,在P2、P3和P6時間段內的計算時間較上一時間段有上升,這是因為負載遷移過程產生了一定的時間開銷,其中第一次遷移的數(shù)據(jù)量最大,因此P2的上升最明顯,但整個任務的執(zhí)行時間減少,因此這種開銷是值得的。

    圖4 實驗組1的時間變化對比

    如圖5所示,實驗組2和對照組3分別是相同環(huán)境下的任務執(zhí)行情況,實驗組2中集群通過在P2和P5時間段內發(fā)生的兩次負載遷移,分別將相同數(shù)據(jù)量的計算時間縮短了20.6 ms和5.8 ms,且抑制了對照組3中計算時間明顯波動的情況。該組對照實驗的負載傾斜不嚴重,因此算法的優(yōu)化效果并不明顯,且負載遷移產生的開銷較小。

    圖5 實驗組2時間變化對比

    實驗結果表明:在數(shù)據(jù)傾斜度較大且待遷移數(shù)據(jù)量較小的情況下,負載均衡算法的優(yōu)化效果比較顯著。在節(jié)點間負載比較均衡的情況下,算法可抑制計算延遲的劇烈波動,但對性能的優(yōu)化效果沒有前者顯著。負載遷移策略的執(zhí)行會導致少量的計算延遲,但延遲在合理可接受的范圍內,且能有效提高整個任務的執(zhí)行效率。

    為了進一步分析相關參數(shù)對算法的影響,實驗通過控制變量ε=0.01 ms2,k=100不變,分別設定不同的θ值,重復執(zhí)行實驗組1,得到如圖6所示的實驗結果。

    如圖6所示,θ取值過小導致算法過于敏感,頻繁的負載遷移產生過多的開銷。θ取值過大導致算法過于遲鈍,其中當θ=0.2 ms或θ=0.3 ms時執(zhí)行的2次負載遷移未實現(xiàn)最優(yōu)的負載分配,但由于閾值過高而沒有出觸發(fā)新的負載遷移。因此,實驗最終確定參數(shù)θ=0.13 ms,集群會根據(jù)負載傾斜程度的不同執(zhí)行2次或3次負載遷移,且不會發(fā)生遷移抖動,取得比較理想的負載均衡效果。

    圖6 參數(shù)影響分析

    TeraSort是分布式計算平臺中用于對數(shù)據(jù)排序的Benchmark,在不同平臺下對1 GB數(shù)據(jù)排序效率是衡量分布式系統(tǒng)出處理能力的公認標準。為驗證算法對較復雜計算的優(yōu)化效果,實驗采用Hadoop的TeraGen作業(yè)生成1 GB數(shù)據(jù),執(zhí)行開源項目incubator-Flink[18]中提供的TeraSort作業(yè),分別使用平臺原有的負載均衡策略和動態(tài)負載均衡策略進行測試,得到如圖7所示的實驗結果:在相同的執(zhí)行環(huán)節(jié)中,負載均衡算法分別在P2和P4時間段內啟動了兩次負載遷移,通過優(yōu)化節(jié)點間的負載分配降低了主工作節(jié)點的計算負載,提高了任務的執(zhí)行效率,減少了任務執(zhí)行的總時間;但由于需要遷移的數(shù)據(jù)量較大,遷移過程中產生較大的時間開銷,且節(jié)點間的負載傾斜本身不是很明顯,因此沒有其對WordCount作業(yè)的優(yōu)化效果顯著。

    5 結語

    在大數(shù)據(jù)流式計算系統(tǒng)中,節(jié)點間負載不均衡是造成集群性能下降的主要原因,而資源評估不全面是制約負載均衡技術發(fā)展的瓶頸。本文提出基于計算延遲時間的數(shù)據(jù)流負載感知技術,以及動態(tài)負載均衡和負載遷移策略,通過優(yōu)化節(jié)點間的負載分配提高了任務的執(zhí)行效率。但本文算法也存在一定的缺陷:負載遷移技術會造成一定的時間開銷,導致一段時間內的計算延遲加長;另外目前只能通過反饋調節(jié)機制確定算法的相關參數(shù)。

    下一步研究將針對數(shù)據(jù)流速本身波動造成資源分配不均的問題,研究數(shù)據(jù)流彈性資源[17]計算中的負載均衡算法。在計算資源彈性變化的場景中根據(jù)負載感知的結果進行負載調優(yōu),其中節(jié)點加入和離線時如何遷移負載將是下一步研究的重點。

    References)

    [1] 孟小峰, 慈祥.大數(shù)據(jù)管理: 概念、技術與挑戰(zhàn)[J]. 計算機研究與發(fā)展, 2013, 50(1): 146-169. (MENG X F, CI X. Big data management: concepts, techniques and challenges [J]. Journal of Computer Research and Development, 2013, 50(1): 146-169.)

    [2] DEAN J, GHEMAWAT S. MapReduce: simplified data processing on large clusters[J]. Communications of the ACM, 2008, 51(1): 107-113.

    [3] 陳付梅, 韓德志, 畢坤, 等.大數(shù)據(jù)環(huán)境下的分布式數(shù)據(jù)流處理關鍵技術探析[J]. 計算機應用, 2017, 37(3): 620-627. (CHEN F M, HAN D Z, BI K, et al. Key technologies of distributed data stream processing based on big data[J]. Journal of Computer Applications, 2017, 37(3): 620-627.)

    [4] 孫大為, 張廣艷, 鄭緯民.大數(shù)據(jù)流式計算: 關鍵技術及系統(tǒng)實例[J]. 軟件學報, 2014, 25(4): 839-862. (SUN D W, ZHANG G Y, ZHENG W M. Big data stream computing: technologies and instances[J]. Journal of Software, 2014, 25(4): 839-862.)

    [5] QIAN Z, HE Y, SU C, et al. TimeStream: reliable stream computation in the cloud[C]// Proceedings of the 8th ACM European Conference on Computer Systems. New York: ACM, 2013: 1-14.

    [6] ALEXANDROV A, BERGMANN R, EWEN S, et al. The stratosphere platform for big data analytics[J]. The VLDB Journal, 2014, 23(6): 939-964.

    [7] CARBONE P, KATSIFODIMOS A, EWEN S, et al. Apache Flink: stream and batch processing in a single engine[J]. Bulletin of the IEEE Computer Society Technical Committee on Data Engineering, 2015, 36(4):28-38.

    [8] KOSTAS T, ELLEN F. Introduction to Apache Flink[M]. Sebastopol: O’Reilly Media, 2016: 54.

    [9] TANMAY D. Learning Apache Flink[M]. Birmingham: Packt Publishing, 2017: 63.

    [10] CARBONE P, FRA G, EWEN S, et al. Lightweight asynchronous snapshots for distributed data flows[EB/OL]. [2017- 01- 10]. https://arxiv.org/pdf/1506.08603.

    [11] CARBONE P, TRAUB J, KATSIFODIMOS A, et al. Cutty: aggregate sharing for user-defined windows[C]// Proceedings of the 25th ACM International on Conference on Information and Knowledge Management. New York: ACM, 2016: 1201-1210.

    [12] CHINTAPALLI S, DAGIT D, EVANS B, et al. Benchmarking streaming computation engines: Storm, Flink and Spark streaming[C]// Proceedings of the 2016 IEEE International Parallel and Distributed Processing Symposium Workshops. Piscataway, NJ: IEEE, 2016: 1789-1792.

    [13] COLLINS R L, CARLONI L P. Flexible filters: load balancing through backpressure for stream programs[C]// Proceedings of the Seventh ACM International Conference on Embedded Software. New York: ACM, 2009: 205-214.

    [14] SUN D, ZHANG G, YANG S, et al. Re-Stream: real-time and energy-efficient resource scheduling in big data stream computing environments[J]. Information Sciences, 2015, 319: 92-112.

    [15] ANIELLO L, BALDONI R, QUERZONI L. Adaptive online scheduling in Storm [C]// DEBS 2013: Proceedings of the 7th ACM International Conference on Distributed Event-Based Systems. New York: ACM, 2013: 207-218.

    [16] KWON Y C, BALAZINSKA M, HOWE B, et al. Skew-resistant parallel processing of feature-extracting scientific user-defined functions[C]// Proceedings of the 1st ACM Symposium on Cloud Computing. New York: ACM, 2010: 75-86.

    [17] LOHRMANN B, JANACIK P, KAO O. Elastic stream processing with latency guarantees[C]// Proceedings of the 2015 IEEE 35th International Conference on Distributed Computing Systems. Piscataway, NJ: IEEE, 2015: 399-410.

    [18] Fabian Hueske. Incubator-Flink[EB/OL]. [2017- 03- 26]. https://github.com/physikerwelt/incubator-flink.

    Dynamicdatastreamloadbalancingstrategybasedonloadawareness

    LI Ziyang1, YU Jiong1,2*, BIAN Chen2, WANG Yuefei2, LU Liang2

    (1.SchoolofSoftware,XinjiangUniversity,UrumqiXinjiang830008,China;2.SchoolofInformationScienceandEngineering,XinjiangUniversity,UrumqiXinjiang830046,China)

    Concerning the problem of unbalanced load and incomplete comprehensive evaluation of nodes in big data stream processing platform, a dynamic load balancing strategy based on load awareness algorithm was proposed and applied to a data stream processing platform named Apache Flink. Firstly, the computational delay time of the nodes was obtained by using the depth-first search algorithm for the Directed Acyclic Graph (DAG) and regarded as the basis for evaluating the performance of the nodes, and the load balancing strategy was created. Secondly, the load migration technology for data stream was implemented based on the data block management strategy, and both the global and local load optimization was implemented through feedback. Finally, the feasibility of the algorithm was proved by evaluating its time-space complexity, meanwhile the influence of important parameters on the algorithm execution was discussed. The experimental results show that the proposed algorithm increases the efficiency of the task execution by optimizing the load sharing between nodes, and the task execution time is shortened by 6.51% averagely compared with the traditional load balancing strategy of Apache Flink.

    data stream; load balancing; depth-first search; load awareness; Apache Flink

    2017- 04- 25;

    2017- 06- 19。

    國家自然科學基金資助項目(61262088,61462079,61562086,61363083);新疆維吾爾自治區(qū)高校科研計劃項目(XJEDU2016S106)。

    李梓楊(1993—),男,新疆烏魯木齊人,碩士研究生,CCF會員,主要研究方向:云計算、分布式計算; 于炯(1964—),男,北京人,教授,博士生導師,博士,CCF高級會員,主要研究方向:網絡安全、網格計算、分布式計算; 卞琛(1981—),男,江蘇南京人,副教授,博士,CCF會員,主要研究方向:網絡計算、分布式系統(tǒng); 王躍飛(1991—),男,新疆烏魯木齊人,博士研究生,主要研究方向:云計算、分布式計算、數(shù)據(jù)挖掘; 魯亮(1990—),男,新疆烏魯木齊人,博士研究生,CCF會員,主要研究方向:云計算、分布式計算、內存計算。

    1001- 9081(2017)10- 2760- 07

    10.11772/j.issn.1001- 9081.2017.10.2760

    TP393.02

    A

    This work is partially supported by the National Natural Science Foundation of China (61262088, 61462079, 61562086, 61363083), the Educational Research Program of Xinjiang Uygur Autonomous Region (XJEDU2016S106).

    LIZiyang, born in 1993, M. S. candidate. His research interests include cloud computing, distributed computing.

    YUJiong, born in 1964, Ph. D., professor. His research interests include network security, grid computing, distributed computing.

    BIANChen, born in 1981, Ph. D., associate professor. His research interests include network computing, distributed system.

    WANGYuefei, born in 1991, Ph. D. candidate. His research interests include cloud computing, distributed computing, data mining.

    LULiang, born in 1990, Ph. D. candidate. His research interests include cloud computing, distributed computing, in-memory computing.

    猜你喜歡
    后繼元組流式
    Python核心語法
    電腦報(2021年14期)2021-06-28 10:46:22
    輻流式二沉池的結構優(yōu)化研究
    工程與建設(2019年5期)2020-01-19 06:22:38
    海量數(shù)據(jù)上有效的top-kSkyline查詢算法*
    基于減少檢索的負表約束優(yōu)化算法
    皮亞諾公理體系下的自然數(shù)運算(一)
    湖南教育(2017年3期)2017-02-14 03:37:33
    微球測速聚類分析的流式液路穩(wěn)定性評估
    甘岑后繼式演算系統(tǒng)與其自然演繹系統(tǒng)的比較
    濾子與濾子圖
    自調流式噴管型ICD的設計與數(shù)值驗證
    流式在線直播視頻的采集
    河南科技(2015年8期)2015-03-11 16:23:41
    国产xxxxx性猛交| 精品国产超薄肉色丝袜足j| 亚洲情色 制服丝袜| 青春草亚洲视频在线观看| 国产高清国产精品国产三级| 亚洲欧洲精品一区二区精品久久久| 欧美精品av麻豆av| 国产1区2区3区精品| 亚洲精品国产av成人精品| 国产视频一区二区在线看| 丝袜在线中文字幕| 精品人妻在线不人妻| 免费女性裸体啪啪无遮挡网站| 三级毛片av免费| 亚洲欧美日韩高清在线视频 | 国产真人三级小视频在线观看| 人人妻人人澡人人爽人人夜夜| 最新的欧美精品一区二区| 亚洲精品乱久久久久久| 国产老妇伦熟女老妇高清| 国产精品影院久久| 丝袜美腿诱惑在线| 可以免费在线观看a视频的电影网站| 91精品伊人久久大香线蕉| 999精品在线视频| av视频免费观看在线观看| 久久精品国产亚洲av高清一级| 午夜福利视频在线观看免费| 王馨瑶露胸无遮挡在线观看| 少妇 在线观看| 无遮挡黄片免费观看| 黄色视频不卡| 汤姆久久久久久久影院中文字幕| 视频区图区小说| 国产成人欧美在线观看 | 亚洲欧洲日产国产| 国产精品一区二区在线不卡| 啦啦啦视频在线资源免费观看| 一本久久精品| 少妇 在线观看| 亚洲精品国产av蜜桃| 极品少妇高潮喷水抽搐| 他把我摸到了高潮在线观看 | 精品人妻在线不人妻| 国产三级黄色录像| 69av精品久久久久久 | 精品国产乱码久久久久久小说| 9色porny在线观看| 少妇粗大呻吟视频| 国产一区二区三区在线臀色熟女 | 国产淫语在线视频| 亚洲七黄色美女视频| 久久久久视频综合| 777久久人妻少妇嫩草av网站| 精品一区二区三卡| 国产成人精品久久二区二区91| 可以免费在线观看a视频的电影网站| 中文字幕精品免费在线观看视频| 精品一区二区三卡| 国产黄频视频在线观看| 久久人人爽av亚洲精品天堂| 999久久久国产精品视频| 日本黄色日本黄色录像| 亚洲国产av影院在线观看| 精品高清国产在线一区| tube8黄色片| 欧美日韩亚洲综合一区二区三区_| 亚洲国产av新网站| 热99国产精品久久久久久7| 久久国产精品男人的天堂亚洲| 久久人妻熟女aⅴ| 在线av久久热| 水蜜桃什么品种好| 欧美黄色片欧美黄色片| 三级毛片av免费| netflix在线观看网站| 久久精品国产a三级三级三级| 成人亚洲精品一区在线观看| 亚洲第一欧美日韩一区二区三区 | 性色av一级| 深夜精品福利| 午夜老司机福利片| 不卡av一区二区三区| 在线观看一区二区三区激情| 亚洲精品中文字幕一二三四区 | 婷婷色av中文字幕| 在线观看www视频免费| 日韩欧美国产一区二区入口| 久久av网站| 亚洲av日韩在线播放| 18禁黄网站禁片午夜丰满| 成人三级做爰电影| 50天的宝宝边吃奶边哭怎么回事| 一级黄色大片毛片| 美女视频免费永久观看网站| 在线亚洲精品国产二区图片欧美| 国产欧美日韩一区二区三区在线| 男女午夜视频在线观看| 18禁国产床啪视频网站| 成在线人永久免费视频| 两性夫妻黄色片| 亚洲成国产人片在线观看| 中国国产av一级| 国产免费现黄频在线看| 国产精品 国内视频| 日韩人妻精品一区2区三区| tocl精华| 国产精品免费大片| 天天躁日日躁夜夜躁夜夜| 一本综合久久免费| 999精品在线视频| 精品人妻在线不人妻| 国产精品av久久久久免费| 日本av免费视频播放| av又黄又爽大尺度在线免费看| 日日夜夜操网爽| av免费在线观看网站| 国产在线一区二区三区精| 久久av网站| av超薄肉色丝袜交足视频| 性少妇av在线| 亚洲精品av麻豆狂野| 国产精品一二三区在线看| 午夜福利视频在线观看免费| 视频在线观看一区二区三区| 中文字幕高清在线视频| 欧美黑人精品巨大| 欧美日韩视频精品一区| 我要看黄色一级片免费的| 日韩电影二区| 18在线观看网站| 窝窝影院91人妻| 精品人妻一区二区三区麻豆| 丝袜人妻中文字幕| 美国免费a级毛片| 日韩视频在线欧美| 国产欧美日韩一区二区精品| 一本大道久久a久久精品| 久久精品熟女亚洲av麻豆精品| 丝袜人妻中文字幕| 一本久久精品| 亚洲男人天堂网一区| 三级毛片av免费| 亚洲va日本ⅴa欧美va伊人久久 | 亚洲人成电影观看| 高清欧美精品videossex| 国产免费av片在线观看野外av| 91国产中文字幕| 啦啦啦在线免费观看视频4| 欧美+亚洲+日韩+国产| 久久99一区二区三区| 欧美精品av麻豆av| av天堂在线播放| 欧美精品一区二区大全| 男女国产视频网站| 久久久久久久大尺度免费视频| 亚洲成av片中文字幕在线观看| 热99re8久久精品国产| 免费一级毛片在线播放高清视频 | 视频区欧美日本亚洲| 精品久久久久久电影网| 久久国产精品影院| www.av在线官网国产| 老司机午夜十八禁免费视频| a级毛片黄视频| 深夜精品福利| 大片电影免费在线观看免费| 在线亚洲精品国产二区图片欧美| 一级片免费观看大全| 黄色a级毛片大全视频| 丝瓜视频免费看黄片| 最近最新中文字幕大全免费视频| 日日摸夜夜添夜夜添小说| 亚洲成人免费av在线播放| 亚洲av欧美aⅴ国产| 精品一区二区三区av网在线观看 | 精品国产一区二区三区四区第35| 成年人黄色毛片网站| 咕卡用的链子| 深夜精品福利| 亚洲国产中文字幕在线视频| 国产深夜福利视频在线观看| 大香蕉久久成人网| 亚洲午夜精品一区,二区,三区| 人妻一区二区av| 极品人妻少妇av视频| a 毛片基地| 日本黄色日本黄色录像| av一本久久久久| 亚洲av成人不卡在线观看播放网 | 国产一级毛片在线| 亚洲国产欧美一区二区综合| 咕卡用的链子| 亚洲精品粉嫩美女一区| 久久午夜综合久久蜜桃| 欧美精品高潮呻吟av久久| 汤姆久久久久久久影院中文字幕| 老司机亚洲免费影院| 人人妻人人爽人人添夜夜欢视频| 日韩制服骚丝袜av| 激情视频va一区二区三区| 久久女婷五月综合色啪小说| 亚洲欧洲精品一区二区精品久久久| 老熟女久久久| 成人手机av| 欧美 亚洲 国产 日韩一| 国产又色又爽无遮挡免| 夜夜夜夜夜久久久久| 一二三四在线观看免费中文在| 日本黄色日本黄色录像| 精品一区在线观看国产| 日本91视频免费播放| 亚洲一区二区三区欧美精品| 一本综合久久免费| 高清视频免费观看一区二区| 中文精品一卡2卡3卡4更新| 丝袜在线中文字幕| 国产黄色免费在线视频| 一本大道久久a久久精品| 免费在线观看完整版高清| 国产97色在线日韩免费| 91国产中文字幕| 高清欧美精品videossex| 男女床上黄色一级片免费看| 亚洲综合色网址| 免费在线观看影片大全网站| a级毛片在线看网站| 在线观看免费高清a一片| av欧美777| 热99re8久久精品国产| 亚洲欧美日韩另类电影网站| 亚洲精品中文字幕一二三四区 | 好男人电影高清在线观看| 日韩人妻精品一区2区三区| 精品卡一卡二卡四卡免费| 在线永久观看黄色视频| 老司机午夜福利在线观看视频 | 波多野结衣av一区二区av| 国产一区二区三区av在线| 国产成人a∨麻豆精品| 国产又爽黄色视频| 视频在线观看一区二区三区| 亚洲精品国产色婷婷电影| 欧美人与性动交α欧美软件| 黄色毛片三级朝国网站| 亚洲欧美日韩另类电影网站| 青春草视频在线免费观看| 人成视频在线观看免费观看| 熟女少妇亚洲综合色aaa.| 老熟妇乱子伦视频在线观看 | 汤姆久久久久久久影院中文字幕| 9色porny在线观看| 飞空精品影院首页| 国产三级黄色录像| 少妇人妻久久综合中文| 天天躁日日躁夜夜躁夜夜| 日本91视频免费播放| cao死你这个sao货| 久久久久久久久免费视频了| 12—13女人毛片做爰片一| 欧美日韩中文字幕国产精品一区二区三区 | 国产主播在线观看一区二区| 欧美黄色片欧美黄色片| 人人妻,人人澡人人爽秒播| 中文字幕人妻丝袜一区二区| 国产成人av教育| 欧美精品啪啪一区二区三区 | 亚洲av电影在线进入| 精品国产一区二区久久| a 毛片基地| 欧美日本中文国产一区发布| 性少妇av在线| 亚洲三区欧美一区| 人人妻人人澡人人爽人人夜夜| 熟女少妇亚洲综合色aaa.| 欧美日韩黄片免| 亚洲性夜色夜夜综合| 国产男人的电影天堂91| 不卡一级毛片| 国产在线视频一区二区| 爱豆传媒免费全集在线观看| 狂野欧美激情性bbbbbb| 亚洲av日韩精品久久久久久密| 777米奇影视久久| 国产精品久久久久久精品古装| 一个人免费在线观看的高清视频 | 精品国内亚洲2022精品成人 | 最近最新免费中文字幕在线| 丰满少妇做爰视频| 国产精品自产拍在线观看55亚洲 | 正在播放国产对白刺激| 午夜福利一区二区在线看| 桃花免费在线播放| 极品少妇高潮喷水抽搐| 日韩一卡2卡3卡4卡2021年| 12—13女人毛片做爰片一| 最新的欧美精品一区二区| 亚洲精品国产av成人精品| 久久毛片免费看一区二区三区| 午夜福利在线观看吧| 亚洲一卡2卡3卡4卡5卡精品中文| 首页视频小说图片口味搜索| 欧美 亚洲 国产 日韩一| 日韩熟女老妇一区二区性免费视频| 久久综合国产亚洲精品| 亚洲成人国产一区在线观看| 男女国产视频网站| 国产又色又爽无遮挡免| 亚洲第一欧美日韩一区二区三区 | 国产在线观看jvid| 99国产综合亚洲精品| 国产av一区二区精品久久| 狠狠婷婷综合久久久久久88av| 成人国语在线视频| 一边摸一边抽搐一进一出视频| 精品视频人人做人人爽| 十八禁人妻一区二区| 久久久久网色| 交换朋友夫妻互换小说| 97人妻天天添夜夜摸| 成年美女黄网站色视频大全免费| 精品国产国语对白av| 在线天堂中文资源库| 50天的宝宝边吃奶边哭怎么回事| 日本精品一区二区三区蜜桃| 9色porny在线观看| 人人妻人人爽人人添夜夜欢视频| 91老司机精品| 深夜精品福利| 久久久久久久精品精品| 99国产精品免费福利视频| 中国国产av一级| 另类亚洲欧美激情| 久久午夜综合久久蜜桃| 美女高潮喷水抽搐中文字幕| 色视频在线一区二区三区| a级片在线免费高清观看视频| 日本猛色少妇xxxxx猛交久久| 久久国产精品男人的天堂亚洲| 欧美黄色淫秽网站| 亚洲成人免费av在线播放| 精品一区二区三区四区五区乱码| 精品人妻1区二区| 热99re8久久精品国产| 纯流量卡能插随身wifi吗| 国产色视频综合| 日韩中文字幕欧美一区二区| 日本av免费视频播放| 在线观看www视频免费| 超色免费av| 亚洲专区国产一区二区| 十八禁人妻一区二区| 国产亚洲av高清不卡| 亚洲av国产av综合av卡| 国产精品一二三区在线看| a在线观看视频网站| 精品少妇一区二区三区视频日本电影| 色精品久久人妻99蜜桃| 亚洲五月色婷婷综合| 老鸭窝网址在线观看| 9热在线视频观看99| 狠狠狠狠99中文字幕| 在线十欧美十亚洲十日本专区| 成年美女黄网站色视频大全免费| 亚洲午夜精品一区,二区,三区| 99国产精品一区二区蜜桃av | 欧美日韩亚洲综合一区二区三区_| 国产免费一区二区三区四区乱码| 精品少妇黑人巨大在线播放| 亚洲精品av麻豆狂野| 啦啦啦 在线观看视频| 亚洲欧美日韩高清在线视频 | av福利片在线| 亚洲精品国产av蜜桃| 99热国产这里只有精品6| 午夜精品国产一区二区电影| 国产成人av教育| 国产精品影院久久| 少妇的丰满在线观看| 波多野结衣av一区二区av| 日韩制服骚丝袜av| 欧美av亚洲av综合av国产av| 免费久久久久久久精品成人欧美视频| 欧美黑人精品巨大| 精品第一国产精品| 岛国毛片在线播放| 亚洲av片天天在线观看| 少妇裸体淫交视频免费看高清 | 精品久久蜜臀av无| 日本一区二区免费在线视频| 岛国在线观看网站| 男女床上黄色一级片免费看| 久久精品久久久久久噜噜老黄| 久久久久网色| 久久精品人人爽人人爽视色| 夫妻午夜视频| av线在线观看网站| 十八禁人妻一区二区| 我要看黄色一级片免费的| 日韩,欧美,国产一区二区三区| 2018国产大陆天天弄谢| 99久久人妻综合| 日韩大码丰满熟妇| 热99国产精品久久久久久7| 80岁老熟妇乱子伦牲交| 久久久久久亚洲精品国产蜜桃av| 蜜桃国产av成人99| 永久免费av网站大全| 国产成人精品久久二区二区免费| 99精品欧美一区二区三区四区| 爱豆传媒免费全集在线观看| 丝瓜视频免费看黄片| 免费观看a级毛片全部| 手机成人av网站| 91av网站免费观看| 欧美激情久久久久久爽电影 | 美女主播在线视频| 国产日韩欧美亚洲二区| 日韩中文字幕视频在线看片| 国产免费av片在线观看野外av| 成人18禁高潮啪啪吃奶动态图| 欧美黄色片欧美黄色片| 午夜福利视频精品| 天堂中文最新版在线下载| 国产精品久久久久久精品电影小说| 国产有黄有色有爽视频| 色婷婷久久久亚洲欧美| 亚洲一区二区三区欧美精品| 欧美 日韩 精品 国产| 亚洲伊人久久精品综合| 巨乳人妻的诱惑在线观看| 亚洲精品国产一区二区精华液| 国产又色又爽无遮挡免| 窝窝影院91人妻| 亚洲性夜色夜夜综合| 久久久久久亚洲精品国产蜜桃av| 欧美精品高潮呻吟av久久| 免费久久久久久久精品成人欧美视频| 欧美黄色片欧美黄色片| 热re99久久国产66热| 国产亚洲精品久久久久5区| 国产精品久久久久久精品电影小说| 国产黄色免费在线视频| 在线亚洲精品国产二区图片欧美| 爱豆传媒免费全集在线观看| 他把我摸到了高潮在线观看 | 亚洲国产成人一精品久久久| 免费不卡黄色视频| 日韩欧美一区视频在线观看| 欧美久久黑人一区二区| 五月开心婷婷网| 一本大道久久a久久精品| 久久久久久久久久久久大奶| 啦啦啦啦在线视频资源| 少妇人妻久久综合中文| 精品一品国产午夜福利视频| 人人妻人人添人人爽欧美一区卜| 午夜福利免费观看在线| 不卡av一区二区三区| 久久精品成人免费网站| 999久久久国产精品视频| 在线av久久热| 亚洲视频免费观看视频| 日日爽夜夜爽网站| 天堂中文最新版在线下载| 又紧又爽又黄一区二区| 女警被强在线播放| 日韩 欧美 亚洲 中文字幕| 成人18禁高潮啪啪吃奶动态图| 国产精品九九99| 国产精品久久久久成人av| 美女大奶头黄色视频| 超碰97精品在线观看| 人人妻人人澡人人看| 亚洲欧美色中文字幕在线| 欧美少妇被猛烈插入视频| 日本精品一区二区三区蜜桃| 女人爽到高潮嗷嗷叫在线视频| 母亲3免费完整高清在线观看| 欧美日韩黄片免| 色婷婷av一区二区三区视频| 亚洲精品久久成人aⅴ小说| 色视频在线一区二区三区| 最近中文字幕2019免费版| 久久精品亚洲熟妇少妇任你| 国产色视频综合| 精品亚洲乱码少妇综合久久| 久久久精品94久久精品| 啦啦啦 在线观看视频| 高清欧美精品videossex| 日韩大码丰满熟妇| 午夜免费成人在线视频| 国产片内射在线| 亚洲中文av在线| 老司机深夜福利视频在线观看 | 精品人妻1区二区| 国产亚洲午夜精品一区二区久久| 亚洲精品美女久久久久99蜜臀| 精品国产国语对白av| 亚洲国产欧美一区二区综合| 999久久久国产精品视频| 亚洲综合色网址| 亚洲成av片中文字幕在线观看| 91九色精品人成在线观看| 中国美女看黄片| 好男人电影高清在线观看| 高清av免费在线| 一二三四社区在线视频社区8| netflix在线观看网站| 久久天躁狠狠躁夜夜2o2o| 免费在线观看影片大全网站| 自拍欧美九色日韩亚洲蝌蚪91| 高清视频免费观看一区二区| 夜夜骑夜夜射夜夜干| 免费高清在线观看视频在线观看| 97在线人人人人妻| 91大片在线观看| 天天添夜夜摸| 秋霞在线观看毛片| 免费不卡黄色视频| 久久亚洲国产成人精品v| 欧美日韩国产mv在线观看视频| 老鸭窝网址在线观看| 中文字幕制服av| 欧美一级毛片孕妇| 日本黄色日本黄色录像| 成年人午夜在线观看视频| 久久香蕉激情| 成年动漫av网址| 啦啦啦视频在线资源免费观看| 高清黄色对白视频在线免费看| 999精品在线视频| av又黄又爽大尺度在线免费看| 亚洲成av片中文字幕在线观看| 我要看黄色一级片免费的| 欧美精品一区二区免费开放| 精品亚洲成国产av| 青青草视频在线视频观看| 中文字幕人妻丝袜制服| 另类精品久久| 爱豆传媒免费全集在线观看| 十八禁网站免费在线| 久久精品亚洲熟妇少妇任你| 美女主播在线视频| 午夜福利乱码中文字幕| 中文字幕av电影在线播放| 高清黄色对白视频在线免费看| 国产成人欧美| 国产激情久久老熟女| 成人免费观看视频高清| 又紧又爽又黄一区二区| 女人精品久久久久毛片| 亚洲成av片中文字幕在线观看| 亚洲va日本ⅴa欧美va伊人久久 | 黄网站色视频无遮挡免费观看| 日韩一卡2卡3卡4卡2021年| 18禁国产床啪视频网站| 又黄又粗又硬又大视频| 一区在线观看完整版| 国产淫语在线视频| 精品少妇内射三级| 免费高清在线观看视频在线观看| tube8黄色片| 精品少妇久久久久久888优播| 永久免费av网站大全| 午夜激情久久久久久久| 国产欧美日韩精品亚洲av| 少妇熟女aⅴ在线视频| 欧美日韩一级在线毛片| 黄色女人牲交| 国产午夜精品论理片| 国产av又大| 午夜a级毛片| 色综合婷婷激情| 亚洲精品久久国产高清桃花| 亚洲自拍偷在线| 脱女人内裤的视频| 色播亚洲综合网| 好男人电影高清在线观看| 欧美大码av| 亚洲欧美一区二区三区黑人| 国产爱豆传媒在线观看 | 久久久国产精品麻豆| 变态另类成人亚洲欧美熟女| 最新在线观看一区二区三区| 亚洲精品色激情综合| 成人国产综合亚洲| 99热6这里只有精品| 午夜免费观看网址| 久久精品亚洲精品国产色婷小说| 欧美人与性动交α欧美精品济南到| 久久精品aⅴ一区二区三区四区| 欧美日本视频| 麻豆国产av国片精品| 久久99热这里只有精品18| 亚洲一区二区三区不卡视频| 久久香蕉激情| 国产欧美日韩一区二区三| 精品高清国产在线一区| 免费看十八禁软件| 美女大奶头视频| 国产精品电影一区二区三区| 国产精品精品国产色婷婷| 欧美日韩瑟瑟在线播放| 中国美女看黄片| 少妇粗大呻吟视频| 国产精品美女特级片免费视频播放器 | 亚洲av成人一区二区三| 亚洲av熟女| 在线观看66精品国产| 在线观看日韩欧美| 国产成人系列免费观看| 中文在线观看免费www的网站 | 男男h啪啪无遮挡| 两个人视频免费观看高清|