亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種Hadoop集群批處理作業(yè)的方法及系統(tǒng)的制作方法

文檔序號:6622655閱讀:297來源:國知局
一種Hadoop集群批處理作業(yè)的方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種Hadoop集群中批處理作業(yè)的方案,涉及Hadoop集群批處理作業(yè)技術。本發(fā)明公開的方法,包括:構建一個混合異構內存的硬件平臺,在該硬件平臺中部署Hadoop集群,其中,所構建的硬件平臺中混合異構內存采用非易失性存儲介質與動態(tài)隨機存取存儲器(DRAM)的混合;當在硬件平臺上進行Hadoop集群批處理作業(yè)時,將Hadoop集群批處理作業(yè)的內存申請分配到混合異構內存的非易失性存儲介質中;在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所述混合異構內存的非易失性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取中間結果進行處理。本發(fā)明還公開了一種Hadoop集群系統(tǒng)。本申請技術方案提高了Hadoop集群批處理作業(yè)的效率。
【專利說明】一種Hadoop集群批處理作業(yè)的方法及系統(tǒng)

【技術領域】
[0001] 本發(fā)明涉及Hadoop集群批處理作業(yè)技術,特別涉及一種Hadoop集群中批處理作 業(yè)的方案。

【背景技術】
[0002] Hadoop集群批處理作業(yè)是通過MapReduce框架進行任務的批處理,MapReduce處 理任務的流程分為Map階段和Reduce階段。在任務提交時,Map階段是讀取對應的輸入數(shù) 據(jù),然后從輸入數(shù)據(jù)中抽取鍵值對,將每個鍵值對作為參數(shù)傳遞給map函數(shù),經(jīng)過map函數(shù) 處理后將產(chǎn)生的中間鍵值對寫入本地磁盤中。然后在Reduce階段,根據(jù)中間結果的位置將 中間結果從磁盤中讀取,然后對它們進行排序,使得相同鍵的鍵值對聚集在一起,然后對每 個唯一的鍵,將其鍵值對傳遞給reduce函數(shù),然后經(jīng)過reduce處理后產(chǎn)生輸出并添加到輸 出文件中。
[0003] 在Hadoop集群批處理作業(yè)的過程中,由于處理的中間結果會存儲在磁盤上,在 reduce階段會從磁盤中相應的位置讀取數(shù)據(jù),這使得1/0開銷大大增加,是影響MapReduce 處理批處理作業(yè)性能的主要因素。隨著用戶對大數(shù)據(jù)批處理作業(yè)的性能需求不斷提升,力口 速Hadoop集群批處理作業(yè)的方法是至關重要的。


【發(fā)明內容】

[0004] 本發(fā)明所要解決的技術問題是,提供一種Hadoop集群批處理作業(yè)的方法及系統(tǒng), 以解決Hadoop集群批處理作業(yè)效率低的問題。
[0005] 為了解決上述技術問題,本發(fā)明公開了一種Hadoop集群批處理方法,包括:
[0006] 構建一個混合異構內存的硬件平臺,在該硬件平臺中部署Hadoop集群,其中,所 構建的硬件平臺中混合異構內存采用非易失性存儲介質與動態(tài)隨機存取存儲器(DRAM)的 混合;
[0007] 當在所述硬件平臺上進行Hadoop集群批處理作業(yè)時,將所述Hadoop集群批處理 作業(yè)的內存申請分配到混合異構內存的非易失性存儲介質中;
[0008] 在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所述混合異構內存的非 易失性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取中間結果進行處理。 [0009] 可選地,上述方法還包括:
[0010] 當在所述硬件平臺上進行小數(shù)據(jù)操作時,將所述小數(shù)據(jù)操作的內存申請分配到混 合異構內存的dram中;
[0011] 在所述DRAM中進行所述小數(shù)據(jù)操作處理。
[0012] 可選地,上述方法中,所述混合異構內存的非易失性存儲介質采用如下一種或兩 種:
[0013] 閃存(FLASH)、相變存儲裝置(PCM)。
[0014] 可選地,上述方法中,將內存申請分配到混合異構內存的非易失性存儲介質中 指:
[0015] 將所述混合異構內存劃分為相等大小的頁框,為不同存儲介質類型的頁框配置不 同的內存標簽,其中,為非易失性存儲介質類型的頁框配置內存標簽為BIG_FLAG ;
[0016] 若在所述硬件平臺上進行操作時,申請的內存類型為非易失性存儲介質,則為進 程分配連續(xù)多個內存標簽為BIG_FLAG的頁框。
[0017] 可選地,上述方法中,若在所述硬件平臺上進行操作時,申請的內存類型為DRAM, 則為進程分配連續(xù)多個內存標簽為非BIG_FLAG的頁框。
[0018] 本發(fā)明還公開了一種Hadoop集群系統(tǒng),包括:
[0019] 混合異構內存,采用非易失性存儲介質與動態(tài)隨機存取存儲器(DRAM)的混合;
[0020] 內存管理單元,在進行Hadoop集群批處理作業(yè)時,將所述Hadoop集群批處理作業(yè) 的內存申請分配到混合異構內存的非易失性存儲介質中;
[0021] 中央處理單元(CPU),在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所 述混合異構內存的非易失性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取 中間結果進行處理。
[0022] 可選地,上述系統(tǒng)中,所述內存管理單元,在進行小數(shù)據(jù)操作時,將所述小數(shù)據(jù)操 作的內存申請分配到混合異構內存的DRAM中;
[0023] 所述CPU,在所述DRAM中進行所述小數(shù)據(jù)操作處理。
[0024] 可選地,上述系統(tǒng)中,所述混合異構內存的非易失性存儲介質采用如下一種或兩 種:
[0025] 閃存(FLASH)、相變存儲裝置(PCM)。
[0026] 可選地,上述系統(tǒng)中,所述混合異構內存包括多個相同大小的頁框,其中,不同存 儲介質類型的頁框具有不同的內存標簽,非易失性存儲介質類型的頁框的內存標簽為BIG_ FLAG。
[0027] 可選地,上述系統(tǒng)中,所述內存管理單元包括判斷單元、big分配器和slab分配 器,其中:
[0028] 所述判斷單元,判斷當前的內存申請的內存類型,當申請的內存類型為非易失性 存儲介質時,調用所述big分配器進行內存分配,當申請的內存類型為DRAM時,調用slab 分配器進行內存分配;
[0029] 所述big分配器,按照所述判斷單元的調用,為進程分配連續(xù)多個PCM類型的頁 框;
[0030] 所述slab分配器,按照所述判斷單元的調用,為進程分配非PCM類型的框。
[0031] 本申請技術方案基于非易失性存儲介質與DRAM結合構建成混合異構內存硬件架 構平臺,將Hadoop集群中批處理作業(yè)運行在該平臺上,該平臺的混合內存存儲MapReduce 框架處理作業(yè)中產(chǎn)生的中間結果,使得減少1/0開銷,改善MapReduce處理批作業(yè)時1/0開 銷的問題,縮短批處理作業(yè)處理的時間,提高了 Hadoop集群批處理作業(yè)的效率。

【專利附圖】

【附圖說明】
[0032] 圖1為加速Hadoop集群批處理作業(yè)的方法框架圖;
[0033] 圖2為統(tǒng)一內存管理框架圖;
[0034] 圖3為內存分配框圖。

【具體實施方式】
[0035] 為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,下文將結合附圖對本發(fā)明技 術方案作進一步詳細說明。需要說明的是,在不沖突的情況下,本申請的實施例和實施例中 的特征可以任意相互組合。
[0036] 實施例1
[0037] 隨著新型非易失性存儲設備的不斷發(fā)展,它和DRAM相同的工藝尺寸下可以有更 高的容量、低功耗等特點,適用作為面向大數(shù)據(jù)處理的介質。因此,本申請發(fā)明人提出,可 以根據(jù)非易失性存儲介質的特點,將非易失性存儲介質與DRAM構建成異構混合內存架構 的硬件系統(tǒng),然后將MapReduce框架處理作業(yè)的中間結果存儲在非易失性存儲內存中,在 reduce階段讀取中間結果時會比在磁盤中讀取的速率快,從而加速Hadoop集群批處理作 業(yè)的時間效率。
[0038] 基于上述思想,本實施例提供一種Hadoop集群批處理作業(yè)的方法,包括:
[0039] 構建一個混合異構內存的硬件平臺,在該硬件平臺中部署Hadoop集群,其中,所 構建的硬件平臺中混合異構內存采用非易失性存儲介質與DRAM(Dynamic Random Access Memory,動態(tài)隨機存取存儲器)的結合;
[0040] 當在上述硬件平臺上進行Hadoop集群批處理作業(yè)時,將所述Hadoop集群批處理 作業(yè)的內存申請分配到混合異構內存的非易失性存儲介質中;
[0041] 在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所述混合異構內存的非 易失性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取中間結果進行處理。 [0042] 需要說明的是,上述方法在構建混合異構內存的硬件平臺中除了需要找到適合混 合異構內存的非易失性存儲器混合芯片,還需要能在硬件平臺中識別不同介質的內存。具 體地,在Hadoop集群批處理作業(yè)使用內存分配時,重新編寫適合于上述硬件平臺的大數(shù)據(jù) 分配器,將大數(shù)據(jù)作業(yè)(即批處理作業(yè))的內存申請分配到非易失性存儲介質內存的區(qū)域, 這樣,就會將作業(yè)處理的中間結果存儲在非易失性存儲介質內存中,使得在Reduce階段時 讀取數(shù)據(jù)時減少1/0開銷,提高批處理作業(yè)的效率。
[0043] 相應地,針對其他小數(shù)據(jù)操作(如系統(tǒng)的進程)需要保證實時響應的特點,以及數(shù) 據(jù)在DRAM中速度比非易失性內存中進行的更加快速,因此一般將小數(shù)據(jù)操作的內存申請 分配到DRAM區(qū)域,從而滿足不同應用程序的需求。
[0044] 另外,還有一些優(yōu)選方案提出,在所構建的混合異構內存的硬件平臺中可以使用 新型的非易失性存儲介質與DRAM結合,例如通過Flash和PCM (Phase Change Memory,相變 存儲裝置)芯片制作的非易失存儲器混合內存卡。該卡包括存儲陣列,提供對應的標準物 理接口,將該卡的接口協(xié)議轉換為內存接口所采用的內存協(xié)議即可。然后根據(jù)相應的分配 器將批處理任務分配到非易失性存儲的內存區(qū)域,以利用非易失性存儲介質的讀寫性能比 磁盤的讀寫性能快的特點提高MapReduce批處理任務的效率,并且減少數(shù)據(jù)訪問延遲性和 減少1/0開銷。當然,非易失性存儲介質也可以是FLASH和PCM中的任一種,本實施例對此 不作限制。
[0045] 下面參照附圖,對上述方法的具體實現(xiàn)進行詳細說明。
[0046] 首先構建一個混合異構內存的硬件平臺,在此硬件平臺中部署Hadoop集群,將 Hadoop集群中批處理作業(yè)用MapReduce框架處理,該框架處理的中間結果將存儲在混合異 構內存的非易失性存儲介質(即PCM)中,在Reduce階段讀取數(shù)據(jù)時直接從此非易失性存 儲介質(即PCM)內存中讀取,以提高批處理作業(yè)處理的效率,加速Hadoop集群批處理作 業(yè),該過程如圖1所示。
[0047] 在上述構建的混合異構內存的硬件平臺中采用了 PCM和DRAM內存的混合異構。其 中,非易失性存儲介質內存是由PCM芯片制作的內存卡,磁卡上包含了存儲陣列,其接口類 型遵循了主板內存物理接口所采用的內存標準協(xié)議,提供對應的標準物理接口。該芯片卡 可以和DRAM平行存在于內存系統(tǒng)中,即對DRAM與非易失性存儲介質內存統(tǒng)一管理,如圖2 所示。也就是說明,所構建的硬件平臺的操作系統(tǒng)中內存管理模塊,對DRAM與非易失性內 存是統(tǒng)一管理的,但傳統(tǒng)的DRAM與PCM在訪問速率上存在一定的差異,主要表現(xiàn)在PCM內 存訪問速度較DRAM內存低,因此在內存管理方面對這兩種類型的內存區(qū)別對待,當申請較 大內存塊(例如批處理作業(yè))時為之分配PCM內存;而如果申請的內存塊較?。ɡ缧?shù) 據(jù)操作),則通過slab分配器分配DRAM內存。
[0048] 具體地,針對異構的內存,可以將所有內存劃分為相等大小的頁框,對這些頁框進 行不同標記。對于PCM類型的頁框為之標記為BIG_FLAG,這樣在內存管理過程中對內存的 分配便可以根據(jù)頁框的標記進行區(qū)分。對PCM內存的分配需要引入新的內存分配算法,可 以稱為big分配算法。這種分配器算法位于伙伴系統(tǒng)之上與slab分配器處于同一層次。如 圖3所示為內存分配管理框圖。當申請內存時,根據(jù)申請的內存類型及大小選擇不同的分 配器,當申請的內存類型為非易失性存儲介質(內存標簽為BIG_FLAG)時,通過big分配器 進行內存分配,big分配器根據(jù)內存標簽為進程分配連續(xù)多個PCM類型的頁框;當申請的內 存類型為非PCM類型時,通過slab分配器或者通過伙伴算法進行分配,這種分配過程中不 會為進程分配PCM類型的內存。這樣就可以保證系統(tǒng)級進程得到速度較快的DRAM內存進 行數(shù)據(jù)處理,而針對大數(shù)據(jù)處理的進程放在PCM內存中運行,與傳統(tǒng)的大數(shù)據(jù)處理相比速 度大幅提升,這樣便可以區(qū)分對待不同類型的內存進行特定類型的數(shù)據(jù)處理,從而大大降 低了 DRAM和PCM訪存速度差異帶來的影響。
[0049] 另外,在完成構建混合內存異構硬件平臺后,按照官方文檔安裝hadoop組件。然 后將hdf s、mapreduce服務開啟。在提交批處理作業(yè)的時候,MapReduce框架會將其劃分成Μ 個map任務和R個reduce任務,讓它們去完成。被分配了 map任務會讀取并處理相關的輸 入數(shù)據(jù),將分析出的鍵/值(key/value)的中間結果存儲在異構混合內存中,在reduce任 務中,reduce任務會讀取異構混合內存中的中間結果,不會在磁盤中讀取中間結果,因此, 在reduceO函數(shù)處理后得到最終結果。該過程中減少了中間結果引起的1/0開銷,大大提 高了 Hadoop集群中批處理作業(yè)的效率。
[0050] 實施例2
[0051] 發(fā)明人發(fā)現(xiàn),基于非易失性存儲介質與DRAM的特點構建混合異構內存的架構,可 以根據(jù)大內存的特點存儲MapReduce框架處理的中間結果,然后加速Hadoop集群批處理作 業(yè)。在構建混合異構內存硬件架構中是根據(jù)大數(shù)據(jù)內存計算的特點,采用數(shù)據(jù)處理能力、擴 展性及可靠性很好的多路服務器架構即可。因此,本實施例提供一種Hadoop集群系統(tǒng),至 少包括如下各部分。
[0052] 混合異構內存,采用非易失性存儲介質與動態(tài)隨機存取存儲器(DRAM)的混合;
[0053] 優(yōu)選地,上述混合異構內存的非易失性存儲介質可以采用如下一種或兩種:
[0054] 閃存(FLASH)、相變存儲裝置(PCM)。
[0055] 內存管理單元,在進行Hadoop集群批處理作業(yè)時,將所述Hadoop集群批處理作業(yè) 的內存申請分配到混合異構內存的非易失性存儲介質中;
[0056] 另外,內存管理單元,在進行小數(shù)據(jù)操作時,將所述小數(shù)據(jù)操作的內存申請分配到 混合異構內存的DRAM中;
[0057] CPU,在所述DRAM中進行所述小數(shù)據(jù)操作處理。
[0058] 中央處理單元(CPU),在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所 述混合異構內存的非易失性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取 中間結果進行處理。
[0059] 具體地,上述系統(tǒng)中混合異構內存可以包括多個相同大小的頁框,其中,不同存儲 介質類型的頁框具有不同的內存標簽,在本實施例中,非易失性存儲介質類型的頁框的內 存標簽為BIG_FLAG。
[0060] 此時,內存管理單元又可以分為判斷單元、big分配器和slab分配器,其中:
[0061] 判斷單元,判斷當前的內存申請的內存類型,當申請的內存類型為非易失性存儲 介質時,調用big分配器進行內存分配,當申請的內存類型為DRAM時,調用slab分配器進 行內存分配;
[0062] big分配器,按照判斷單元的調用,為進程分配連續(xù)多個PCM類型的頁框;
[0063] slab分配器,按照判斷單元的調用,為進程分配非PCM類型的框。
[0064] 另外,本實施例中,設計的混合異構內存是通過PCM、Flash存儲芯片為基礎,非易 失性存儲器的內存卡包含物理芯片構成的存儲陣列,其接口類型遵從內存標準協(xié)議,提供 對應的標準物理接口,可以通過異構混合內存管理,使得可以按照內存的訪問方式訪問非 易失內存卡,實現(xiàn)基于非易失性存儲和DRAM的異構混合內存硬件。由于內存訪問的接口協(xié) 議與非易失存儲器物理芯片采用的協(xié)議不是一致的,需要在非易失存儲器中實現(xiàn)內存模式 訪問的協(xié)議,在非易失性存儲芯片接口封裝協(xié)議,將芯片中的協(xié)議轉換成硬件架構中內存 接口模塊所采用的內存協(xié)議。在非易失性混合內存硬件卡設計中,內存控制器對這兩者的 結合的異構內存模式的讀寫等命令函數(shù)接口有很好的融合。
[0065] 從上述實施例可以看出,本申請技術方案提供的加速Hadoop集群批處理作業(yè)的 方案,主要是在混合異構內存架構的硬件平臺中,將MapReduce框架處理的中間結果存儲 在非易失性存儲介質內存中,從而提高批處理作業(yè)的效率。針對異構內存中,當批處理作業(yè) 申請內存資源時,需要將申請的內存塊分配到非易失性存儲介質的內存區(qū)域中。優(yōu)選地,針 對異構內存的結構,將所有內存劃分為相等大小的頁框,對這些頁框進行不同的標記,這樣 在內存管理過程中對內存的分配可以根據(jù)頁框的標記進行識別。處理內存申請時,根據(jù)申 請的內存類型及大小選擇不同的分配器,這樣保障了大數(shù)據(jù)處理的進程放在了非易失性存 儲介質內存中,當申請的內存類型為非易失性類型內存時,通過相應的分配器或者通過伙 伴算法進行分配,在這種分配過程中分工很明確。這樣就可以保證系統(tǒng)級進程得到速度較 快的DRAM內存進行數(shù)據(jù)處理,而針對大數(shù)據(jù)處理的進程放在非易失性內存中進行,與傳統(tǒng) 的大數(shù)據(jù)處理相比速度大幅提升,這樣便可以區(qū)分對待不同類型的內存進行特定類型的數(shù) 據(jù)處理,從而大大降低了 DRAM和非易失性存儲介質訪存速度差異帶來的影響。
[0066] 以上所述,僅為本發(fā)明的較佳實例而已,并非用于限定本發(fā)明的保護范圍。凡在本 發(fā)明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范 圍之內。
【權利要求】
1. 一種Hadoop集群批處理方法,其特征在于,包括: 構建一個混合異構內存的硬件平臺,在該硬件平臺中部署Hadoop集群,其中,所構建 的硬件平臺中混合異構內存采用非易失性存儲介質與動態(tài)隨機存取存儲器(DRAM)的混 合; 當在所述硬件平臺上進行Hadoop集群批處理作業(yè)時,將所述Hadoop集群批處理作業(yè) 的內存申請分配到混合異構內存的非易失性存儲介質中; 在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所述混合異構內存的非易失 性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取中間結果進行處理。
2. 如權利要求1所述的方法,其特征在于,該方法還包括: 當在所述硬件平臺上進行小數(shù)據(jù)操作時,將所述小數(shù)據(jù)操作的內存申請分配到混合異 構內存的DRAM中; 在所述DRAM中進行所述小數(shù)據(jù)操作處理。
3. 如權利要求1或2所述的方法,其特征在于,所述混合異構內存的非易失性存儲介質 采用如下一種或兩種: 閃存(FLASH)、相變存儲裝置(PCM)。
4. 如權利要求3所述的方法,其特征在于,將內存申請分配到混合異構內存的非易失 性存儲介質中指: 將所述混合異構內存劃分為相等大小的頁框,為不同存儲介質類型的頁框配置不同的 內存標簽,其中,為非易失性存儲介質類型的頁框配置內存標簽為BIG_FLAG ; 若在所述硬件平臺上進行操作時,申請的內存類型為非易失性存儲介質,則為進程分 配連續(xù)多個內存標簽為BIG_FLAG的頁框。
5. 如權利要求4所述的方法,其特征在于, 若在所述硬件平臺上進行操作時,申請的內存類型為DRAM,則為進程分配連續(xù)多個內 存標簽為非BIG_FLAG的頁框。
6. -種Hadoop集群系統(tǒng),其特征在于,包括: 混合異構內存,采用非易失性存儲介質與動態(tài)隨機存取存儲器(DRAM)的混合; 內存管理單元,在進行Hadoop集群批處理作業(yè)時,將所述Hadoop集群批處理作業(yè)的內 存申請分配到混合異構內存的非易失性存儲介質中; 中央處理單元(CPU),在Map階段,將Hadoop集群批處理作業(yè)的中間結果存儲在所述混 合異構內存的非易失性存儲介質中,在Reduce階段,從所述非易失性存儲介質中讀取中間 結果進行處理。
7. 如權利要求6所述的系統(tǒng),其特征在于, 所述內存管理單元,在進行小數(shù)據(jù)操作時,將所述小數(shù)據(jù)操作的內存申請分配到混合 異構內存的DRAM中; 所述CPU,在所述DRAM中進行所述小數(shù)據(jù)操作處理。
8. 如權利要求6或7所述的系統(tǒng),其特征在于,所述混合異構內存的非易失性存儲介質 采用如下一種或兩種: 閃存(FLASH)、相變存儲裝置(PCM)。
9. 如權利要求8所述的系統(tǒng),其特征在于, 所述混合異構內存包括多個相同大小的頁框,其中,不同存儲介質類型的頁框具有不 同的內存標簽,非易失性存儲介質類型的頁框的內存標簽為BIG_FLAG。
10.如權利要求9所述的系統(tǒng),其特征在于,所述內存管理單元包括判斷單元、big分配 器和slab分配器,其中: 所述判斷單元,判斷當前的內存申請的內存類型,當申請的內存類型為非易失性存儲 介質時,調用所述big分配器進行內存分配,當申請的內存類型為DRAM時,調用slab分配 器進行內存分配; 所述big分配器,按照所述判斷單元的調用,為進程分配連續(xù)多個PCM類型的頁框; 所述slab分配器,按照所述判斷單元的調用,為進程分配非PCM類型的框。
【文檔編號】G06F12/02GK104156316SQ201410384390
【公開日】2014年11月19日 申請日期:2014年8月6日 優(yōu)先權日:2014年8月6日
【發(fā)明者】郭美思, 吳楠 申請人:浪潮(北京)電子信息產(chǎn)業(yè)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1