亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        異構(gòu)Hadoop集群下自適應(yīng)平衡數(shù)據(jù)存儲(chǔ)的大數(shù)據(jù)放置策略

        2016-04-12 00:00:00張少輝張中軍于來行
        現(xiàn)代電子技術(shù) 2016年10期

        摘 要: Hadoop是一種處理和存儲(chǔ)大數(shù)據(jù)的平臺(tái),針對(duì)異構(gòu)Hadoop集群下采用均等數(shù)據(jù)分配方法易降低系統(tǒng)計(jì)算性能的問題,提出一種自適應(yīng)平衡數(shù)據(jù)存儲(chǔ)的大數(shù)據(jù)放置策略。根據(jù)異構(gòu)集群中各節(jié)點(diǎn)的計(jì)算能力比例,將數(shù)據(jù)分配到節(jié)點(diǎn)中。在任務(wù)處理過程中,根據(jù)反饋的任務(wù)完成時(shí)間信息,動(dòng)態(tài)更新節(jié)點(diǎn)的能力比例,自適應(yīng)調(diào)整數(shù)據(jù)分配,從而使異構(gòu)Hadoop集群中各節(jié)點(diǎn)處理數(shù)據(jù)的時(shí)間大致相同,降低節(jié)點(diǎn)之間的數(shù)據(jù)移動(dòng)量,提高了節(jié)點(diǎn)利用率。實(shí)驗(yàn)結(jié)果表明,該策略能夠有效縮減任務(wù)完成時(shí)間,提高了系統(tǒng)的整體性能。

        關(guān)鍵詞: 異構(gòu)Hadoop集群; 大數(shù)據(jù)放置; 數(shù)據(jù)存儲(chǔ)平臺(tái); 平衡數(shù)據(jù)存儲(chǔ)

        中圖分類號(hào): TN915?34; TP393 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2016)10?0049?05

        A big data placement strategy for adaptive balance data storage in heterogeneous Hadoop cluster

        ZHANG Shaohui1, ZHANG Zhongjun2, YU Laihang3

        (1. College of Network Engineering, Zhoukou Normal University, Zhoukou 466001, China; 2. College of Computer Science and Technology, Zhoukou Normal University, Zhoukou 466001, China;3. College of Computer Science and Technology, Dalian University of Technology, DaLian 116024, China)

        Abstract: Hadoop is a platform for processing and storage of big data. A big data placement strategy for adaptive balance data storage in heterogeneous Hadoop cluster is proposed to solve the issue that equal data placement in heterogeneous Hadoop cluster will debase the calculation performance of the system. The data is placed into nodes according to the computing capacity ratio of each node in heterogeneous cluster. In the process of task processing, the node ratio is updated dynamically according to the feedback information of task completion time, and then the adaptive adjustment of data distribution is conducted, so that the time that every node in heterogeneous Hadoop cluster processes the data is basically same, the amount of data transfer between nodes is reduced, and the utilization of nodes is improved. The experimental results show that the proposed strategy can effectively reduce the task completion time and improve the overall performance of the system.

        Keywords: heterogeneous Hadoop cluster; big data placement; data storage platform; balance data storage

        0 引 言

        Hadoop系統(tǒng)通過分布式文件系統(tǒng)[1?2](Hadoop Distributed File System,HDFS)來解決大數(shù)據(jù)的存儲(chǔ)。HDFS具有橫向擴(kuò)展存儲(chǔ)能力、高可靠性、適合對(duì)數(shù)據(jù)進(jìn)行分布式計(jì)算等優(yōu)點(diǎn)[3?4]。異構(gòu)環(huán)境中,若采用原始HDFS的均等數(shù)據(jù)分配策略,將會(huì)大大增加數(shù)據(jù)傳輸?shù)臅r(shí)間,影響系統(tǒng)整體性能[5?6]。因此,需要開發(fā)一種異構(gòu)環(huán)境中的動(dòng)態(tài)數(shù)據(jù)放置策略,以減少數(shù)據(jù)塊從高能量節(jié)點(diǎn)移動(dòng)至低能量節(jié)點(diǎn)的次數(shù)[7],從而提高Hadoop性能。

        現(xiàn)有針對(duì)異構(gòu)Hadoop中的數(shù)據(jù)放置問題的研究中,文獻(xiàn)[8]提出一種調(diào)度器,通過計(jì)算所有節(jié)點(diǎn)的剩余執(zhí)行時(shí)間,為剩余時(shí)間最長(zhǎng)的節(jié)點(diǎn)啟動(dòng)備份任務(wù);其雖然能提高M(jìn)apRaduce的計(jì)算性能,卻需要較多的等待時(shí)間。文獻(xiàn)[9]提出一種數(shù)據(jù)放置策略,依據(jù)每個(gè)節(jié)點(diǎn)的計(jì)算能力值來分配數(shù)據(jù),主要解決計(jì)算階段的數(shù)據(jù)傾斜問題,然而,該策略只在開始階段進(jìn)行數(shù)據(jù)放置,沒有考慮任務(wù)執(zhí)行過程中的節(jié)點(diǎn)計(jì)算能力的動(dòng)態(tài)變化,且節(jié)點(diǎn)能量值的計(jì)算也不夠精確。

        本文提出一種異構(gòu)Hadoop集群下的自適應(yīng)大數(shù)據(jù)放置策略,根據(jù)節(jié)點(diǎn)的計(jì)算能力放置數(shù)據(jù),并在任務(wù)執(zhí)行過程中自適應(yīng)調(diào)整放置比例。實(shí)驗(yàn)結(jié)果表明,本文策略能夠有效減少數(shù)據(jù)的移動(dòng)量,從而縮短了任務(wù)完成時(shí)間,提高了Hadoop系統(tǒng)的性能。

        1 Hadoop介紹

        Hadoop包括兩個(gè)主要部分:MapReduce和HDFS,其中MapReduce負(fù)責(zé)并行計(jì)算,HDFS負(fù)責(zé)數(shù)據(jù)管理[10]。Hadoop系統(tǒng)中,Hadoop劃分任務(wù)和數(shù)據(jù)為子任務(wù)和數(shù)據(jù)塊,并分配到集群中的節(jié)點(diǎn)[11]。

        HDFS 文件系統(tǒng)通常包括一個(gè)NameNode 和多個(gè)DataNode,HDFS 總體結(jié)構(gòu)示意圖如圖1 所示。NameNode只負(fù)責(zé)存儲(chǔ)節(jié)點(diǎn)元數(shù)據(jù),并且DataNode通過周期性的心跳信號(hào)與NameNode通信,這樣一來,減輕了NameNode 的負(fù)載壓力,不會(huì)出現(xiàn)大量的數(shù)據(jù)流造成擁堵[12]。

        2 問題描述

        Hadoop假設(shè)集群中每個(gè)節(jié)點(diǎn)的計(jì)算能力相同,并為每個(gè)節(jié)點(diǎn)分配相同的負(fù)載,因此其能充分利用集群中的資源;但是,在現(xiàn)實(shí)應(yīng)用程序中,集群經(jīng)常工作在異構(gòu)環(huán)境下,可能存在不同配置的PC或服務(wù)器,致使節(jié)點(diǎn)能量各不相同。在這種情況下,如果仍然使用原始HDFS策略,平均分配數(shù)據(jù)塊和負(fù)載到每個(gè)節(jié)點(diǎn),這會(huì)使各節(jié)點(diǎn)處理本地?cái)?shù)據(jù)塊的完成時(shí)間不同,從而降低Hadoop策略的整體性能[13]。另外,若此時(shí)主節(jié)點(diǎn)仍然分配非執(zhí)行性的任務(wù)到閑置的較快節(jié)點(diǎn),但該節(jié)點(diǎn)未擁有處理所需的數(shù)據(jù),所需數(shù)據(jù)需從網(wǎng)絡(luò)的另一節(jié)點(diǎn)傳輸。由于等待數(shù)據(jù)傳輸需要時(shí)間,也將導(dǎo)致延長(zhǎng)整個(gè)任務(wù)的執(zhí)行時(shí)間,所以,大量的數(shù)據(jù)移動(dòng)也會(huì)影響整體Hadoop性能[14]。其中,整個(gè)任務(wù)執(zhí)行時(shí)間為從執(zhí)行開始到最后一個(gè)子任務(wù)完成的時(shí)間。

        圖2 顯示了一個(gè)原始HDFS數(shù)據(jù)分配的例子。圖2中,集群中有3個(gè)節(jié)點(diǎn),3個(gè)節(jié)點(diǎn)的計(jì)算能力不同,假設(shè)節(jié)點(diǎn)A的計(jì)算能力是節(jié)點(diǎn)B的2倍,是節(jié)點(diǎn)C的3倍。如圖2(a)所示,處理任務(wù)所需的數(shù)據(jù)塊近似等分配到每個(gè)節(jié)點(diǎn):節(jié)點(diǎn)A有3個(gè)數(shù)據(jù)塊,節(jié)點(diǎn)B有4個(gè),節(jié)點(diǎn)C有4個(gè)。任務(wù)開始執(zhí)行后,節(jié)點(diǎn)A將是最快完成處理存儲(chǔ)在節(jié)點(diǎn)A中數(shù)據(jù)塊的節(jié)點(diǎn),此時(shí),節(jié)點(diǎn)B和節(jié)點(diǎn)C分別完成其中1.5個(gè)和1個(gè)數(shù)據(jù)塊。由于此時(shí)節(jié)點(diǎn)A具有空任務(wù)時(shí)隙,所以NameNode安排未處理任務(wù)給節(jié)點(diǎn)A,則節(jié)點(diǎn)A必須等待處理任務(wù),即需要從節(jié)點(diǎn)B或節(jié)點(diǎn)C轉(zhuǎn)移數(shù)據(jù)(圖2(c)中為從節(jié)點(diǎn)B到節(jié)點(diǎn)A,圖2(d)和圖2(e)中為從節(jié)點(diǎn)C到節(jié)點(diǎn)A),此時(shí)節(jié)點(diǎn)A需要等待,直到數(shù)據(jù)轉(zhuǎn)移結(jié)束再進(jìn)行下一步操作。最后,如圖2(f)所示,節(jié)點(diǎn)A從其他兩個(gè)節(jié)點(diǎn)轉(zhuǎn)移了3個(gè)數(shù)據(jù)塊,以此均衡負(fù)載,但轉(zhuǎn)移等待時(shí)間延長(zhǎng)了整體任務(wù)執(zhí)行時(shí)間,影響了Hadoop性能。

        如果能夠合理分配任務(wù),減少轉(zhuǎn)移數(shù)據(jù)量,就能夠有效減少任務(wù)執(zhí)行時(shí)間,進(jìn)一步提高了Hadoop的性能。正如上所述,如圖3 所示為一個(gè)改進(jìn)后的最佳數(shù)據(jù)分配的例子。

        按照3個(gè)節(jié)點(diǎn)的計(jì)算能力重新分配數(shù)據(jù)塊,假設(shè)節(jié)點(diǎn)A擁有6個(gè)數(shù)據(jù)塊,節(jié)點(diǎn)B擁有3個(gè),而節(jié)點(diǎn)C擁有2個(gè),如圖3所示。當(dāng)執(zhí)行任務(wù)時(shí),節(jié)點(diǎn)A執(zhí)行最快,但節(jié)點(diǎn)A比節(jié)點(diǎn)B和節(jié)點(diǎn)C的數(shù)據(jù)塊多,不需要轉(zhuǎn)移數(shù)據(jù)塊,節(jié)點(diǎn)能夠使用本地?cái)?shù)據(jù)執(zhí)行任務(wù),使各節(jié)點(diǎn)能夠幾乎同時(shí)完成任務(wù),因此,可以減少總體任務(wù)執(zhí)行時(shí)間。

        3 提出的數(shù)據(jù)放置策略

        本文針對(duì)異構(gòu)Hadoop集群,根據(jù)任務(wù)類型提出了一種自適應(yīng)數(shù)據(jù)放置策略,合理調(diào)整數(shù)據(jù)塊的分配。提出的策略主要包括兩個(gè)階段:

        (1) 初始數(shù)據(jù)分配階段,在輸入數(shù)據(jù)寫入HDFS時(shí)執(zhí)行;

        (2) 能力決策和數(shù)據(jù)重分配階段,在處理任務(wù)時(shí)執(zhí)行。

        3.1 創(chuàng)建RatioTable

        當(dāng)Hadoop開始時(shí),在NameNode中創(chuàng)建RatioTable,RatioTable表示各節(jié)點(diǎn)計(jì)算能力的比例。當(dāng)數(shù)據(jù)寫入HDFS時(shí),RatioTable用于確定節(jié)點(diǎn)中數(shù)據(jù)塊的分配比例;在執(zhí)行任務(wù)時(shí),RatioTable用于確定數(shù)據(jù)塊是否需要重新分配。RatioTable記錄任務(wù)類型和每個(gè)節(jié)點(diǎn)能量的比例。NameNode根據(jù)每個(gè)DataNode的心跳消息所返回的任務(wù)執(zhí)行時(shí)間,來計(jì)算每個(gè)節(jié)點(diǎn)的計(jì)算能力比例。表1顯示了一個(gè)RatioTable例子。集群中有3個(gè)節(jié)點(diǎn),其中每個(gè)節(jié)點(diǎn)的計(jì)算能力不相同:節(jié)點(diǎn)A最快,然后是節(jié)點(diǎn)B,節(jié)點(diǎn)C最慢,集群執(zhí)行兩項(xiàng)任務(wù),WordCount和Grep。因此,RatioTable中有兩項(xiàng)任務(wù)記錄,對(duì)于WordCount任務(wù),節(jié)點(diǎn)之間的計(jì)算能力比例為3∶1.5∶1。對(duì)于Grep任務(wù),比例為2.5∶1.5∶1。

        表1 節(jié)點(diǎn)計(jì)算能力的比例

        3.2 初始數(shù)據(jù)分配階段

        當(dāng)數(shù)據(jù)寫入HDFS時(shí),NameNode首先檢查RatioTable,用于確定是否執(zhí)行比例分配。如果RatioTable中具有該項(xiàng)任務(wù)的信息記錄,則將依據(jù)記錄在RatioTable中的節(jié)點(diǎn)計(jì)算能力比例,將最新寫入數(shù)據(jù)分配到每個(gè)節(jié)點(diǎn);如果RatioTable沒有該項(xiàng)任務(wù)的記錄,則將數(shù)據(jù)均勻分配到節(jié)點(diǎn),同時(shí),NameNode將在RatioTable中增加該類任務(wù)的新記錄,并設(shè)置每個(gè)節(jié)點(diǎn)的計(jì)算能力為1。

        根據(jù)表1,如果有數(shù)據(jù)要寫入HDFS,假設(shè)這些數(shù)據(jù)可劃分為11個(gè)數(shù)據(jù)塊,用來執(zhí)行WordCount任務(wù),則根據(jù)RatioTable中記錄的性能比例來分配數(shù)據(jù)。因此,節(jié)點(diǎn)A分配6個(gè)[11×33+1.5+1=6]數(shù)據(jù)塊,節(jié)點(diǎn)B分配3個(gè)[11×1.53+1.5+1=3]數(shù)據(jù)塊,節(jié)點(diǎn)C分配2個(gè)[11×13+1.5+1=2]數(shù)據(jù)塊。如果執(zhí)行的任務(wù)為一個(gè)新任務(wù)TeraSort, NameNode先檢查RatioTable,且沒有尋找到TeraSort記錄,這種情況下,則設(shè)定計(jì)算節(jié)點(diǎn)A、節(jié)點(diǎn)B和節(jié)點(diǎn)C執(zhí)行TeraSort的能力比例為1∶1∶1,并將數(shù)據(jù)均勻分配到3個(gè)節(jié)點(diǎn),然后在RatioTable創(chuàng)建TeraSort的記錄。初始數(shù)據(jù)分配流程圖見圖4,過程如算法1所示。

        算法1 初始數(shù)據(jù)分配:

        當(dāng)數(shù)據(jù)寫入HDFS時(shí):

        JobType[←]將執(zhí)行的數(shù)據(jù)的任務(wù)類型;

        DataSize[←]從數(shù)據(jù)信息獲得;

        BlockSize[←]用戶設(shè)置;

        [TotalBlockNumber=DataSizeBlockSize];

        設(shè)置Same=0;

        for RatioTable中的每條記錄 do

        if JobType與記錄相同 then

        Same=1;

        ComputerCapacityRatio[←]從記錄獲得;

        for 集群中每個(gè)DataNode do

        NodeCapacity[←]從ComputerCapacityRatio獲得;

        [BlockNumber=TotalBlockNumber*NodeCapacityeach node capacity ;]

        分配BlockNumber數(shù)據(jù)塊到DataNode;

        if Same=0 then

        ComputerCapacityRatio[←]設(shè)置每個(gè)節(jié)點(diǎn)的能力為1;

        添加ComputerCapacityRatio的JobType記錄到RatioTable;

        for 集群中每個(gè)節(jié)點(diǎn) do

        NodeCapacity=1;

        [BlockNumber=TotalBlockNumber*NodeCapacityeach node capacity; ]

        分配BlockNumber數(shù)據(jù)塊到DataNode

        3.3 數(shù)據(jù)重分配階段

        初始分配結(jié)束后,開始執(zhí)行任務(wù),并進(jìn)入數(shù)據(jù)重分配階段。該階段分為2個(gè)部分:

        (1) 計(jì)算節(jié)點(diǎn)的計(jì)算能力比例;

        (2) 根據(jù)該比例進(jìn)行數(shù)據(jù)重新分配。

        一旦任務(wù)開始執(zhí)行,每個(gè)節(jié)點(diǎn)將接收首批任務(wù),當(dāng)每個(gè)DataNode執(zhí)行完成該任務(wù)后,將返回任務(wù)執(zhí)行時(shí)間給NameNode,NameNode依據(jù)這些執(zhí)行時(shí)間來計(jì)算節(jié)點(diǎn)的能力比例。但是,每個(gè)節(jié)點(diǎn)具有不同任務(wù)時(shí)隙數(shù),可使多個(gè)任務(wù)并行處理。為了獲得準(zhǔn)確的計(jì)算能力比例,本文采用完成一組任務(wù)所需的平均時(shí)間除以時(shí)隙數(shù)來計(jì)算。例如,有兩個(gè)節(jié)點(diǎn):節(jié)點(diǎn)A和節(jié)點(diǎn)B,其中節(jié)點(diǎn)A的速度是節(jié)點(diǎn)B的2倍,假設(shè)節(jié)點(diǎn)A的任務(wù)時(shí)隙數(shù)為4,節(jié)點(diǎn)B的為2。節(jié)點(diǎn)A可同時(shí)執(zhí)行4個(gè)任務(wù),假設(shè)這4個(gè)任務(wù)所需的時(shí)間分別為45 s,43 s,43 s和46 s,取平均為44.25 s。節(jié)點(diǎn)B同時(shí)執(zhí)行2個(gè)任務(wù)所需的時(shí)間分別為39 s和40 s,取平均為39.5 s。因此,節(jié)點(diǎn)A和節(jié)點(diǎn)B的計(jì)算能力比為[39.52∶44.254。]用數(shù)學(xué)公式表示以上分析,令[Tavg(X)]表示節(jié)點(diǎn)[X]中完成一批任務(wù)的平均執(zhí)行時(shí)間;令[S(X)]表示[X]的任務(wù)時(shí)隙數(shù);[Tt(X)]表示[X]完成一項(xiàng)任務(wù)的計(jì)算能力,即,[Tt(X)=[Tavg(X)S(X)]]。

        NameNode使用[Tt(X)]來計(jì)算每個(gè)節(jié)點(diǎn)的計(jì)算能力比例,然后,將該比例與RatioTable中的記錄相比較,如果與現(xiàn)有記錄相同,則將不轉(zhuǎn)移任何數(shù)據(jù)塊;如果不同,則將根據(jù)該新比例轉(zhuǎn)移數(shù)據(jù)塊,同時(shí),NameNode將修改RatioTable中的記錄。另外,轉(zhuǎn)移數(shù)據(jù)塊在后臺(tái)處理,Hadoop任務(wù)不需要等待數(shù)據(jù)轉(zhuǎn)移完成。數(shù)據(jù)重分配過程流程圖如圖5所示,如算法2所示。

        圖5 數(shù)據(jù)重分配階段的流程圖

        算法2 數(shù)據(jù)重分配:

        當(dāng)一項(xiàng)任務(wù)開始時(shí):

        NodeNumber[←]從NameNode獲得;

        CurrentNumber[NodeNumber][←]所有項(xiàng)均設(shè)為0;

        //記錄從每個(gè)節(jié)點(diǎn)接收的任務(wù)執(zhí)行時(shí)間

        TotalExecutionTime[NodeNumber][←]所有項(xiàng)均設(shè)為0;

        While 從DataNode[i]接收到任務(wù)執(zhí)行時(shí)間 do

        SlotNumber[←]從DataNode[i]獲得;

        ExecutionTime[←]任務(wù)執(zhí)行時(shí)間;

        [TotalExecutionTimei=TotalExecutionTimei+ExecutionTime ;]

        [CurrentNumberi=CurrentNumberi+1];

        if CurrentNumber[i]= SlotNumber then

        [Tavg=TotalExecutionTimeiSlotNumber];

        [Tt=TavgSlotNumber];

        [CurrentNumberi=0];

        [TotalExecutionTimei=0];

        if 獲得每個(gè)節(jié)點(diǎn)的[Tt] then

        PerformanceRatio[←] PerformanceRatio和[Tt]成反比;

        for RatioTable中的記錄 do

        if PerformanceRatio與記錄不同 then

        根據(jù)PerformanceRatio重新分配數(shù)據(jù)塊;

        根據(jù)PerformanceRatio修改記錄

        4 實(shí)驗(yàn)及分析

        4.1 實(shí)驗(yàn)環(huán)境

        實(shí)驗(yàn)中,本文使用了2個(gè)HP ProLiant DL380 G6服務(wù)器,每個(gè)擁有16個(gè)CPU,20 GB內(nèi)存和500 GB硬盤,本文使用虛擬機(jī)軟件VirtualBox來創(chuàng)建計(jì)算節(jié)點(diǎn)。為了實(shí)現(xiàn)異構(gòu)環(huán)境,設(shè)置每個(gè)節(jié)點(diǎn)上的CPU和內(nèi)存不同。本文創(chuàng)建了5個(gè)虛擬機(jī):1個(gè)主機(jī)和4個(gè)從機(jī),各節(jié)點(diǎn)配置如表2所示。另外,所有虛擬機(jī)都采用Ubuntu操作系統(tǒng)。

        表2 每個(gè)節(jié)點(diǎn)的配置

        4.2 實(shí)驗(yàn)結(jié)果

        執(zhí)行WordCount和Grep兩種類型的任務(wù),以評(píng)估本文策略的性能。WordCount是用于統(tǒng)計(jì)輸入文本中字?jǐn)?shù)的應(yīng)用;Grep是一種使用正則表達(dá)式搜索文本的應(yīng)用[15]。

        首先,本文測(cè)量每個(gè)節(jié)點(diǎn)的計(jì)算性能,設(shè)定所有輸入數(shù)據(jù)的大小為1 GB和2 GB時(shí),在每個(gè)節(jié)點(diǎn)上分別執(zhí)行WordCount和Grep兩種任務(wù),共運(yùn)行10輪,取時(shí)間平均值,結(jié)果如圖6所示,具體數(shù)據(jù)如表3所示。

        表3 每個(gè)節(jié)點(diǎn)執(zhí)行WordCount和Grep任務(wù)的時(shí)間 s

        從圖6可看出,所執(zhí)行數(shù)據(jù)大小不影響節(jié)點(diǎn)之間的運(yùn)算能力比例,對(duì)于某一特定的應(yīng)用程序,雖然輸入文件的大小不同,但是節(jié)點(diǎn)在執(zhí)行時(shí)的速率基本上是一致的,每個(gè)節(jié)點(diǎn)的執(zhí)行時(shí)間與數(shù)據(jù)大小成正比。由表3的數(shù)據(jù)可知集群中各節(jié)點(diǎn)的工作計(jì)算能力比例見表4。

        表4 每個(gè)節(jié)點(diǎn)計(jì)算能力的比例

        將本文策略與傳統(tǒng)HDFS策略、兩種改進(jìn)HDFS策略(見文獻(xiàn)[8?9])進(jìn)行比較。實(shí)驗(yàn)中每個(gè)數(shù)據(jù)為2 GB,數(shù)據(jù)塊的為64 MB。在具有4個(gè)節(jié)點(diǎn)的集群上分別執(zhí)行WordCount和Grep兩種任務(wù),每一輪同時(shí)執(zhí)行10個(gè)任務(wù),共執(zhí)行5輪,其中每個(gè)任務(wù)處理不同的數(shù)據(jù)文件。最后獲得各種策略的任務(wù)平均執(zhí)行時(shí)間見圖7。從圖7可看出,傳統(tǒng)HDFS策略的執(zhí)行時(shí)間最長(zhǎng),因其沒有考慮節(jié)點(diǎn)異構(gòu)性,平均分配數(shù)據(jù)到各個(gè)節(jié)點(diǎn),致使在執(zhí)行任務(wù)過程中,要大量移動(dòng)數(shù)據(jù),延長(zhǎng)執(zhí)行時(shí)間。文獻(xiàn)[8?9]的改進(jìn)方法一定程度上改善了數(shù)據(jù)放置性能,但其只在開始階段進(jìn)行數(shù)據(jù)放置,不能自適應(yīng)的調(diào)整。本文策略獲得最短的執(zhí)行時(shí)間,因?yàn)槠涓鶕?jù)節(jié)點(diǎn)異構(gòu)性在放置數(shù)據(jù),并在執(zhí)行任務(wù)過程中根據(jù)該任務(wù)類型下的節(jié)點(diǎn)計(jì)算能力比例變化,自適應(yīng)調(diào)整數(shù)據(jù)放置,使數(shù)據(jù)的移動(dòng)量最小,從而獲得最小執(zhí)行時(shí)間,相比于傳統(tǒng)HDFS策略縮短了約27%。

        5 結(jié) 語(yǔ)

        本文針對(duì)異構(gòu)Hadoop集群,提出一種大數(shù)據(jù)放置策略,根據(jù)異構(gòu)集群中各節(jié)點(diǎn)的計(jì)算能力比例,將數(shù)據(jù)分配到節(jié)點(diǎn)中,并根據(jù)任務(wù)處理階段反饋的任務(wù)完成時(shí)間信息,動(dòng)態(tài)更新節(jié)點(diǎn)的能力比例,降低節(jié)點(diǎn)之間數(shù)據(jù)的移動(dòng)量,提高節(jié)點(diǎn)的利用率。將本文策略與傳統(tǒng)HDFS和兩種改進(jìn)策略進(jìn)行比較,結(jié)果表明,本文策略能夠有效縮減任務(wù)完成時(shí)間,提高系統(tǒng)的整體性能。將來工作中,將進(jìn)行大量數(shù)據(jù)來驗(yàn)證本文策略的有效性。另外,考慮不同密集型任務(wù),如I/O和CPU密集型等,研究本文策略對(duì)于處理這些任務(wù)所需數(shù)據(jù)的分配性能。

        參考文獻(xiàn)

        [1] 翟巖龍,羅壯,楊凱,等.基于Hadoop的高性能海量數(shù)據(jù)處理平臺(tái)研究[J].計(jì)算機(jī)科學(xué),2013,40(3):100?103.

        [2] 宮婧,王文君.大數(shù)據(jù)存儲(chǔ)中的容錯(cuò)關(guān)鍵技術(shù)綜述[J].南京郵電大學(xué)學(xué)報(bào)(自然科學(xué)版),2014,34(4):20?25.

        [3] 周江,王偉平,孟丹,等.面向大數(shù)據(jù)分析的分布式文件系統(tǒng)關(guān)鍵技術(shù)[J].計(jì)算機(jī)研究與發(fā)展,2014,51(2):382?394.

        [4] KALA K A, CHITHARANJAN K. Locality sensitive hashing based incremental clustering for creating affinity groups in Hadoop — HDFS: An infrastructure extension [C]// 2013 International Conference on Circuits, Power and Computing Technologies (ICCPCT). [S.l.]: IEEE, 2013: 1243?1249.

        [5] 羅鵬,龔勛.HDFS數(shù)據(jù)存放策略的研究與改進(jìn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2014,35(4):1127?1131.

        [6] MPATEL N, M PATEL N, I HASAN M, et al. Improving data transfer rate and throughput of HDFS using efficient replica placement [J]. International journal of computer applications, 2014, 86(2): 4?7.

        [7] 林偉偉.一種改進(jìn)的Hadoop數(shù)據(jù)放置策略[J].華南理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,40(1):152?158.

        [8] RAO B T, SRIDEVI N V, REDDY V K, et al. Performance issues of heterogeneous Hadoop clusters in cloud computing [J]. Global journal of computer science technology, 2012, 32(6): 55?63.

        [9] ARASANAL R M, RUMANI D U. Improving MapReduce performance through complexity and performance based data placement in heterogeneous Hadoop clusters [M]. Berlin Heidelberg: Distributed Computing and Internet Technology Springer, 2013: 115?125.

        [10] 崔杰,李陶深,蘭紅星.基于Hadoop的海量數(shù)據(jù)存儲(chǔ)平臺(tái)設(shè)計(jì)與開發(fā)[J].計(jì)算機(jī)研究與發(fā)展,2012,49(z1):12?18.

        [11] RASOOLI A, DOWN D G. COSHH: A classification and optimization based scheduler for heterogeneous Hadoop systems [J]. Future generation computer systems, 2014, 36(3): 1?15.

        [12] LIN W, LIU J. Performance analysis of mapreduce program in heterogeneous cloud computing [J]. Journal of networks, 2013, 8(8): 14?22.

        [13] KIM M, LEE Y, PARK H H, et al. Computational fluid dynamics simulation based on Hadoop Ecosystem and heterogeneous computing [J]. Computers fluids, 2015, 115(8): 1?10.

        [14] 代棟,周學(xué)海,楊峰,等.一種基于模糊推理的Hadoop異構(gòu)機(jī)群自動(dòng)配置工具[J].中國(guó)科學(xué)院研究生院學(xué)報(bào),2011,28(6):793?800.

        [15] LIU Z, MU D. Analysis of resource usage profile for MapReduce applications using Hadoop on cloud[C]// 2012 International Conference on Quality, Reliability, Risk, Maintenance, and Safety Engineering (ICQR2MSE). [S.l.]: IEEE, 2012: 1500?1504.

        国产亚洲精品第一综合另类| 精选二区在线观看视频| 视频在线亚洲视频在线| 少妇激情av一区二区三区| 久久久久女人精品毛片| 伊人色综合久久天天人手人停| 国产一区二区三区资源在线观看 | 免费国产一区二区视频| 乱中年女人伦av三区| 少妇被粗大的猛进69视频| h动漫尤物视频| 久久一区二区三区老熟女| 未满十八勿入av网免费| 在线视频精品免费| 久久高潮少妇视频免费| 久久狼精品一区二区三区| 亚洲看片lutube在线观看| 亚洲伊人久久大香线蕉影院| 国产一区二区三区涩涩| 欧美激情视频一区二区三区免费 | 免费可以在线看A∨网站| 日本一区二区高清视频在线播放| 青青草免费手机视频在线观看| 最新国产激情视频在线观看| av无码国产在线看免费网站| 亚洲女人被黑人巨大进入| 精品人妻av一区二区三区不卡| 日韩国产一区二区三区在线观看 | 天码av无码一区二区三区四区| 精品少妇大屁股白浆无码 | 国产一区二区黄色的网站| 48久久国产精品性色aⅴ人妻| 久久精品国产丝袜| 国产美女冒白浆视频免费| 国产自产二区三区精品| 粉嫩被粗大进进出出视频| 久久久亚洲欧洲日产国产成人无码| 免费在线观看草逼视频| 国产激情视频在线观看的| 精品国产成人亚洲午夜福利| 日本骚色老妇视频网站|