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

針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng)和方法

文檔序號:6502868閱讀:191來源:國知局
針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng)和方法
【專利摘要】本發(fā)明涉及一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng),包括交叉比較編程模型、主結點、編程接口和基于異構分布式機群的后端分布式處理框架。該分布式計算系統(tǒng)旨在應用分布式計算環(huán)境高效處理滿足數(shù)據(jù)集交叉比較模式的計算問題。本發(fā)明通過提供用戶直觀的交叉比較編程模型,幫助用戶將待處理計算過程進行抽象簡化,實現(xiàn)了對各種不同交叉比較計算問題的統(tǒng)一支持;提供用戶簡潔的編程接口,幫助用戶開發(fā)串行交叉比較程序,用戶無需掌握并行編程知識;系統(tǒng)隱藏了并行計算的實現(xiàn)細節(jié),用戶無需掌握系統(tǒng)內部結構,降低了系統(tǒng)的使用難度。此外,本發(fā)明提出的交叉比較編程模型及接口與硬件無關,可以方便的在不同分布式機群環(huán)境中實現(xiàn)。
【專利說明】針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng)和方法
【技術領域】
[0001]本發(fā)明涉及一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng)和方法,屬于分布式計算【技術領域】。
技術背景
[0002]交叉比較問題又稱為數(shù)據(jù)集交叉連接或笛卡爾乘積問題,計算空間包括兩個數(shù)據(jù)集所有元素的可能組合。針對數(shù)據(jù)集中所有元素進行交叉比較的計算問題廣泛存在于生物計算,數(shù)據(jù)挖掘和模式識別等領域。比如生物計量學中,為處理人臉識別問題需要對數(shù)據(jù)庫中海量人臉樣本進行逐一對比得到相似度;生物信息學中,為深入分析物種進化特征需要對海量DNA,RNA等基因序列進行逐條比對從而得到基因序列關系矩陣;數(shù)據(jù)挖掘學中,知識挖掘過程中處理噪聲的重要步驟就是對數(shù)據(jù)集逐項與噪聲進行分析。因此,高效處理此類計算問題具有很重要的科研及商業(yè)價值。
[0003]隨著待處理數(shù)據(jù)規(guī)模的不斷增大,數(shù)據(jù)結構差異化增加,傳統(tǒng)解決方案在應對此類問題時顯出越來越大的局限性。目前的解決方案主要分為兩種,一種設計針對小規(guī)模數(shù)據(jù)集,采用單機處理或在分布式計算平臺中的每個計算結點統(tǒng)一部署全部數(shù)據(jù)的方法,無法解決海量大數(shù)據(jù)集交叉比較的問題;另一種方案采用傳統(tǒng)批處理方式將數(shù)據(jù)集分割打包成任務集由不同的計算結點并行處理完成,此種方案存在計算資源利用率低,總處理能力及擴展能力受限于批處理任務系統(tǒng),同樣無法高效解決海量大數(shù)據(jù)集交叉比較的問題。
[0004]對于大規(guī)模數(shù)據(jù)集交叉比較問題,整個計算問題可以被劃分成不同的計算任務被不同的計算結點并行處理,但不同的計算任務可能使用同一子數(shù)據(jù)集,整個計算問題的描述如圖1所示:
[0005]圖1所示的大規(guī)模數(shù)據(jù)集交叉比較計算問題主要包含兩個計算過程:
[0006]I)數(shù)據(jù)集中的每一項子數(shù)據(jù)作為輸入進行預處理計算,得到預處理后的中間結果;
[0007]2)任意兩個不同子數(shù)據(jù)的預處理后的中間結果作為比較計算的輸入,得到最終比較計算結果。
[0008]在典型的兩數(shù)據(jù)集交叉比較問題中,整個計算空間如圖2所示,每個星號代表兩個數(shù)據(jù)集中的元素進行了一次交叉比較運算,對集合和集合,整個過程需要進行次交叉比較運算。
[0009]數(shù)據(jù)集在進行比較計算之前需要對其中的元素進行預處理計算。相對于比較計算,預處理計算同樣需要大量的計算資源與計算時間。因此數(shù)據(jù)集元素預處理與元素比較運算構成了交叉比較運算中的主要計算過程。同樣對于集合和集合,整個計算過程可以用以下的偽代碼描述:
[0010]For each item i in data set A
[0011]For each item j in data set B
[0012]其中M表示計算結果矩陣,F(xiàn)表示交叉比較運算,P表示預處理運算。[0013]此外,目前解決方案在使用過程中存在著并行程序開發(fā)困難,用戶需要掌握計算平臺內部實現(xiàn)方式,系統(tǒng)只針對解決某一特殊計算問題等缺點。因此,迫切需要研究一種針對海量數(shù)據(jù)集進行交叉比較的分布式計算系統(tǒng),既滿足高效處理大規(guī)模數(shù)據(jù)集的需要,又可以為用戶提供簡潔易用的使用接口,同時面向一般性的數(shù)據(jù)集交叉比較計算問題。

【發(fā)明內容】

[0014] 針對現(xiàn)有技術的局限與不足,本發(fā)明提供一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng)。
[0015]本發(fā)明還提供一種利用上述分布式計算系統(tǒng)處理數(shù)據(jù)的方法。
[0016]本發(fā)明的技術方案在于:
[0017]一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng),包括交叉比較編程模型、主結點、編程接口和基于異構分布式機群的后端分布式處理框架。該分布式計算系統(tǒng)旨在應用分布式計算環(huán)境高效處理滿足數(shù)據(jù)集交叉比較模式的計算問題。本發(fā)明通過提供用戶直觀的交叉比較編程模型,幫助用戶將待處理計算過程進行抽象簡化,實現(xiàn)了對各種不同交叉比較計算問題的統(tǒng)一支持;提供用戶簡潔的編程接口,幫助用戶開發(fā)串行交叉比較程序,用戶無需掌握并行編程知識;系統(tǒng)隱藏了并行計算的實現(xiàn)細節(jié),用戶無需掌握系統(tǒng)內部結構,降低了系統(tǒng)的使用難度。
[0018]根據(jù)本發(fā)明優(yōu)選的,所述的交叉比較編程模型包括四個獨立的計算模塊:數(shù)據(jù)讀取模塊、數(shù)據(jù)預處理模塊、數(shù)據(jù)比較模塊和數(shù)據(jù)輸出模塊;所述數(shù)據(jù)讀取模塊為根據(jù)計算任務的需要讀取不同的輸入數(shù)據(jù);所述數(shù)據(jù)預處理模塊為預處理輸入數(shù)據(jù),生成預處理后的中間計算結果,其中預處理是用戶自定義的處理方法;所述數(shù)據(jù)比較模塊對兩個不同的預處理后中間計算結果進行比較計算,得到最終計算結果,其中比較計算處理是用戶自定義的比較計算處理方法;所述數(shù)據(jù)輸出模塊收集生成的最終計算結果,以用戶定義的方式將最終計算結果生成輸出文件。在本發(fā)明所述分布式計算系統(tǒng)中的主結點調度下,四個獨立計算模塊在不同子結點協(xié)同運行,構成了一個具體的交叉比較計算任務。
[0019]為指導用戶編程,本發(fā)明所述分布式系統(tǒng)還提供了 4個編程接口,所述的4個編程接口的使用方法包括步驟(i)-(iv):
[0020](i)用戶創(chuàng)建自定義類并實現(xiàn)此編程接口 ;
[0021](ii)用戶根據(jù)具體計算問題定義INDEX(索引),CRUDEDATA(初始內容),INTERMEDIATEDATA(預處理后內容)及RESULTDATA(比較結果)的數(shù)據(jù)類型;
[0022]其中索引值一般為原始輸入數(shù)據(jù)文件名;初始內容為原始輸入數(shù)據(jù);預處理后內容為輸入數(shù)據(jù)在預處理過程后得到的計算結果;比較結果為輸入數(shù)據(jù)在進行比較運算后得到的最終計算結果。
[0023](iii)用戶根據(jù)具體計算問題編寫算法;
[0024](iv)用戶將編寫完成的類文件提交后端分布式計算處理框架,執(zhí)行計算任務;
[0025]編程接口如下所示(以JAVA語言示例):
[0026]
public interface ComputingSystem<INDEX, CRUDEDATA, INTERMEDIATEDATA, RESULTDATA>


{[0027]
【權利要求】
1.一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng),其特征在于,該分布式計算系統(tǒng)包括交叉比較編程模型、主結點、編程接口和基于異構分布式機群的后端分布式處理框架。該分布式計算系統(tǒng)旨在應用分布式計算環(huán)境高效處理滿足數(shù)據(jù)集交叉比較模式的計算問題。本發(fā)明通過提供用戶直觀的交叉比較編程模型,幫助用戶將待處理計算過程進行抽象簡化,實現(xiàn)了對各種不同交叉比較計算問題的統(tǒng)一支持;提供用戶簡潔的編程接口,幫助用戶開發(fā)串行交叉比較程序,用戶無需掌握并行編程知識;系統(tǒng)隱藏了并行計算的實現(xiàn)細節(jié),用戶無需掌握系統(tǒng)內部結構,降低了系統(tǒng)的使用難度。
2.根據(jù)權利要求1所述的一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng),其特征在于,所述的交叉比較編程模型包括四個獨立的計算模塊:數(shù)據(jù)讀取模塊、數(shù)據(jù)預處理模塊、數(shù)據(jù)比較模塊和數(shù)據(jù)輸出模塊;所述數(shù)據(jù)讀取模塊為根據(jù)計算任務的需要讀取不同的輸入數(shù)據(jù);所述數(shù)據(jù)預處理模塊為預處理輸入數(shù)據(jù),生成預處理后的中間計算結果,其中預處理是用戶自定義的處理方法;所述數(shù)據(jù)比較模塊對兩個不同的預處理后中間計算結果進行比較計算,得到最終計算結果,其中比較計算處理是用戶自定義的比較計算處理方法;所述數(shù)據(jù)輸出模塊收集生成的最終計算結果,以用戶定義的方式將最終計算結果生成輸出文件。
3.根據(jù)權利要求1所述的一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng),其特征在于,所述的編程接口分別為Reader編程接口、Preprocess編程接口、Compare編程接口和Writer編程接口: 其中所述Reader編程接口對應數(shù)據(jù)讀取模塊,用戶自定義讀入數(shù)據(jù)的INDEX(索引)及CRUDEDATA(初始內容)類型,并且自定義讀入數(shù)據(jù)的讀入方式及數(shù)據(jù)類型; 所述PrepiOcess編程接口對應數(shù)據(jù)預處理模塊,用戶只需關注讀入數(shù)據(jù)內容的預處理過程,定義INTERMEDIATEDATA(預處理后內容)類型; 所述Compare編程接口對應數(shù)據(jù)比較模塊,用戶只需關注兩個不同預處理后數(shù)據(jù)的比較過程,定義RESULTDATA(比較結果); 所述Writer編程接口對應數(shù)據(jù)輸出模塊,用戶自定義輸出數(shù)據(jù)的格式及形式。
4.根據(jù)權利要求1所述的一種針對大規(guī)模數(shù)據(jù)集交叉比較的分布式計算系統(tǒng),其特征在于,所述基于異構分布式機群的后端分布式處理框架,包括作業(yè)調度器、任務執(zhí)行器、分布式機群資源管理系統(tǒng)和分布式文件系統(tǒng): 其中作業(yè)調度器運行于分布式機群主結點(Master結點),用戶在提交計算作業(yè)后,作業(yè)調試器根據(jù)整個分布式機群中空閑資源情況,作業(yè)對資源的需求及待處理數(shù)據(jù)集的存儲情況生成計算任務隊列,依據(jù)任務分配策略將不同任務發(fā)布到各個從結點中; 其中任務執(zhí)行器運行于分布式機群從結點(Slaves結點),任務執(zhí)行器在接收到相應任務之后啟動子任務處理過程,依照用戶編寫的方法進行數(shù)據(jù)的讀入,預處理,比較和輸出操作; 其中分布式機群資源管理系統(tǒng)運行于分布式機群所有結點,起到管理分布式機群中所有結點計算機,監(jiān)控資源利用情況,控制結點之間通信及數(shù)據(jù)傳輸,及處理結點故障的作用; 其中分布式文件系統(tǒng)運行于分布式機群所有結點,用于存儲輸入數(shù)據(jù)集及最終輸出結果O
5.一種利用如權利要求1所述分布式計算系統(tǒng)處理數(shù)據(jù)的方法,其特征該方法包括步驟如下: (1)用戶分析具體計算問題; (2)用戶應用本發(fā)明所述分布式計算系統(tǒng)所提供的編程接口,分別實現(xiàn)四個獨立的計算模塊:數(shù)據(jù)讀取模塊、數(shù)據(jù)預處理模塊、數(shù)據(jù)比較模塊和數(shù)據(jù)輸出模塊的具體處理方法,包括步驟(a)-(d): (a)數(shù)據(jù)讀入階段:在此階段,子任務執(zhí)行所需要的子數(shù)據(jù)集從分布式文件系統(tǒng)中被讀入,數(shù)據(jù)集中的每一項輸入文件在本發(fā)明所述的分布式計算系統(tǒng)中以索引A、初始內容的方式存儲; (b)數(shù)據(jù)預處理階段:在此階段,步驟(1)中讀入的數(shù)據(jù)按照用戶自定義的處理方法進行預處理,得中間計算結果在本發(fā)明所述的分布式計算系統(tǒng)中以索引A、預處理后內容的方式存儲; (C)數(shù)據(jù)比較階段:在此階段,用戶自定義的比較計算處理方法從步驟(2)的中間計算結果中取出兩個不同數(shù)據(jù)進行比較計算,得最終計算結果在本發(fā)明所述的分布式計算系統(tǒng)中以索引A、索引B和比較結果的方式存儲;其中索引A,B分別對應兩個不同的輸入文件的索引; (d)數(shù)據(jù)輸出階段:在此階段,所述數(shù)據(jù)輸出模塊收集生成的最終計算結果,以用戶定義的方式將最終計算 結果生成輸出文件; (3)用戶編寫包括以上四個獨立的計算模塊的類文件、確定輸入數(shù)據(jù)集大小、分布式系統(tǒng)結點數(shù)量和各結點空閑資源情況,在后端分布式處理框架中進行設置; (4)將應用前端編程接口定義的處理方法及待處理數(shù)據(jù)上傳至后端分布式處理框架,其中數(shù)據(jù)存儲至分布式文件系統(tǒng)中; (5)后端分布式處理框架在主結點啟動作業(yè)調度器,分析用戶計算問題,自動生成相互獨立的子任務集并將任務分配至不同從結點;在各個從結點啟動任務執(zhí)行器,從分布式文件系統(tǒng)中讀取相應數(shù)據(jù),執(zhí)行具體子任務;當所有子任務執(zhí)行完成后,后端分布式處理框架結束計算任務,輸出最終結果并存入分布式文件系統(tǒng)中。
【文檔編號】G06F9/44GK103942235SQ201310178513
【公開日】2014年7月23日 申請日期:2013年5月15日 優(yōu)先權日:2013年5月15日
【發(fā)明者】張一凡 申請人:張一凡
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1