System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及數據處理,尤其涉及一種數據處理系統、方法及相關設備。
技術介紹
1、遠程洗牌服務(remote?shuffle?service,rss),是一種分布式計算的架構設計,旨在采用單獨的存儲型節點來提供洗牌服務(shuffle?service),實現將洗牌(shuffle)操作從計算任務中獨立出來,也即實現計算與存儲的解耦。其中,shuffle操作,是指在計算過程中將數據在存儲型節點中進行分區和排序,并供計算節點后續對經過shuffle操作后的數據進行規約(reduce)。
2、目前,在rss架構下,計算節點通常會先將數據發送至存儲型節點進行分區和保存,并在所有數據均在該存儲型節點保存后,再由計算節點對屬于同一分區內的數據執行規約操作。但是,這種處理數據的方式,不僅效率較低,而且存儲型節點的網絡資源浪費情況比較嚴重。
技術實現思路
1、本申請提供了一種數據處理系統,以提高處理數據的效率、緩解網絡資源浪費問題。此外,本申請還提供了對應的數據處理方法、計算設備、計算機可讀存儲介質以及計算機程序產品。
2、第一方面,本申請提供一種數據處理系統,包括多個計算節點以及多個存儲節點,示例性地,計算節點例如可以是通過服務器等具有計算能力的節點,存儲節點可以是存儲服務器等具有存儲能力的節點,該多個計算節點中包括執行map(映射)任務的第一計算節點以及執行規約reduce操作的第二計算節點。其中,第一計算節點是指一個或者多個計算節點,每個第一計算節點執行至少一個map任務
3、由于第一計算節點會在將map任務的數據存儲至存儲節點前(即執行shufflewrite之間)就生成記錄map任務的數據對應的分區信息及分區所在的存儲節點的信息的第一元數據,,這使得在第一計算節點向多個存儲節點寫入數據的過程(即執行shufflewrite的過程)中,,執行reduce操作第二計算節點可以獲取所述第一元數據,并根據所述第一元數據從相應的存儲節點中讀取已經保存的、與reduce操作對應的分區的數據(即執行shuffle?read操作),以便第二計算節點對讀取的分區數據執行相應的reduce操作。如此,在第一計算節點向多個存儲節點寫入數據的過程中,執行reduce操作的第二計算節點可以并行執行讀取分區的數據的過程,即第二計算節點可以在map任務的數據沒有完全寫入所述存儲節點之前,即可啟動reduce操作,不僅提高了數據處理的效率,也可以并行利用多個存儲節點的上行帶寬資源以及下行帶寬資源,提高該多個存儲節點的網絡資源的利用率。
4、在一種可能的實施方式中,第一計算節點,還用于在第一計算節點向多個存儲節點寫入每個map任務對應的數據的過程中,在第一計算節點保存全部map任務對應的第一元數據后,指示第二計算節點從多個存儲節點中獲取reduce操作對應的分區的數據。如此,第一計算節點能夠存儲有全部map任務對應的數據所對應的第一元數據,也即能夠保存有完整的第一元數據。這樣,第二計算節點在執行reduce任務時,基于完整的第一元數據實現訪問相應分區的數據,從而能夠提高第二計算節點執行reduce任務的可靠性。
5、在一種可能的實施方式中,第一計算節點,在存儲第一元數據時,以存儲多個map任務中的目標map任務對應的第一元數據為例,第一計算節點具體是在將多個map任務中的目標map任務對應的目標數據寫入第一計算節點中的發送緩存區后,存儲目標數據對應的第一元數據;則,第一計算節點在第一計算節點保存全部map任務對應的第一元數據后,指示第二計算節點從多個存儲節點中獲取reduce操作對應的分區的數據時,具體可以是增加第一計算節點中的發送緩存區的數量,并將多個map任務對應的數據中未被發送至多個存儲節點中存儲的剩余數據全部寫入發送緩存區,并保存剩余數據對應的第一元數據,從而第一計算節點指示第二計算節點從多個存儲節點中獲取reduce操作對應的分區的數據。如此,第一計算節點通過增加發送緩存區的數量,能夠實現將全部map任務對應的數據能夠完成被寫入發送緩存區的過程,這使得第一計算節點能夠存儲有全部map任務對應的數據所對應的第一元數據,也即能夠保存有完整的第一元數據。此時,第一計算節點觸發第二計算節點執行reduce任務,能夠使得第二計算節點基于完整的第一元數據實現訪問相應分區的數據,保證第二計算節點執行reduce任務的可靠性。
6、在一種可能的實施方式中,第一計算節點在增加第一計算節點中的發送緩存區的數量時,具體可以是預估第一時長,該第一時長為多個存儲節點中已經保存的map任務對應的數據傳輸至第二計算節點的時長。并且,第一計算節點還用于獲取第二時長,該第二時長為第二計算節點將全部map任務對應的數據保存至多個存儲節點的剩余時長。從而,第一計算節點,還用于當第一時長大于或者等于第二時長,增加第一計算節點中的發送緩存區的數量。如此,第一計算節點可以通過預估剩余數據傳輸至多個存儲節點進行保存的時長與第二計算節點從存儲節點中讀取已保存數據的時長,可以觸發增加發送緩存區的數量,以便于在全部map任務對應的數據均緩存至發送緩存區的情況下,自動觸發第二計算節點提前執行reduce任務,以此不僅能夠提高第二計算節點針對數據進行reduce處理的整體效率,而且,也能盡可能利用多個存儲節點的上行帶寬資源以及下行帶寬資源。
7、在一種可能的實施方式中,第一計算節點在預估第一時長時,具體用于:確定多個map任務對應的數據中已經保存至多個存儲節點的數據的數量;根據數量、以及第一計算節點向多個存儲節點寫入數據的帶寬,預估第一時長。
8、在一種可能的實施方式中,第一計算節點還用于:獲取第二計算節點的可用資源;則,第一計算節點在指示第二計算節點從多個本文檔來自技高網...
【技術保護點】
1.一種數據處理系統,其特征在于,所述數據處理系統包括多個計算節點以及多個存儲節點,所述多個計算節點中包括執行映射Map任務的第一計算節點以及執行規約reduce操作的第二計算節點,每個第一計算節點執行至少一個Map任務;
2.根據權利要求1所述的系統,其特征在于,所述第一計算節點,還用于:
3.根據權利要求2所述的系統,其特征在于,所述第一計算節點在存儲第一元數據時,具體用于:
4.根據權利要求3所述的系統,其特征在于,所述第一計算節點在增加所述第一計算節點中的發送緩存區的數量時,具體用于:
5.根據權利要求4所述的系統,其特征在于,所述第一計算節點在預估第一時長時,具體用于:
6.根據權利要求4或5所述的系統,其特征在于,所述第一計算節點還用于:
7.根據權利要求1至6任一項所述的系統,其特征在于,所述第二計算節點在根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據時,具體用于:
8.根據權利要求1至7任一項所述的系統,其特征在于,所述第二計算節點在根據所述第一元數
9.根據權利要求1至7任一項所述的系統,其特征在于,所述第二計算節點在根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據時,具體用于:
10.根據權利要求1至9任一項所述的系統,其特征在于,所述多個存儲節點中存儲的數據包括壓縮數據,所述壓縮數據通過對所述多個Map任務對應的數據進行壓縮得到。
11.一種數據處理方法,其特征在于,所述方法應用于數據處理系統,所述數據處理系統包括多個計算節點以及多個存儲節點,所述多個計算節點中包括執行映射Map任務的第一計算節點以及執行規約reduce操作的第二計算節點,每個第一計算節點執行至少一個Map任務;
12.根據權利要求11所述的方法,其特征在于,所述方法還包括:
13.根據權利要求12所述的方法,其特征在于,所述存儲第一元數據,包括:
14.根據權利要求13所述的方法,其特征在于,所述第一計算節點增加所述第一計算節點中的發送緩存區的數量,包括:
15.根據權利要求14所述的方法,其特征在于,所述第一計算節點預估第一時長,包括:
16.根據權利要求14或15所述的方法,其特征在于,所述方法還包括:
17.根據權利要求11至16任一項所述的方法,其特征在于,所述第二計算節點根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據,包括:
18.根據權利要求11至17任一項所述的方法,其特征在于,所述第二計算節點根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據,包括:
19.根據權利要求11至17任一項所述的方法,其特征在于,所述第二計算節點根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據,包括:
20.根據權利要求11至19任一項所述的方法,其特征在于,所述多個存儲節點中存儲的數據包括壓縮數據,所述壓縮數據通過對所述多個Map任務對應的數據進行壓縮得到。
21.一種計算機可讀存儲介質,其特征在于,包括指令,當其在至少一個計算設備上運行時,使得所述至少一個計算設備執行如權利要求11至20中任一項所述方法的步驟。
22.一種包含指令的計算機程序產品,其特征在于,當其在至少一個計算設備上運行時,使得所述至少一個計算設備執行如權利要求11至20中任一項所述的方法。
...【技術特征摘要】
1.一種數據處理系統,其特征在于,所述數據處理系統包括多個計算節點以及多個存儲節點,所述多個計算節點中包括執行映射map任務的第一計算節點以及執行規約reduce操作的第二計算節點,每個第一計算節點執行至少一個map任務;
2.根據權利要求1所述的系統,其特征在于,所述第一計算節點,還用于:
3.根據權利要求2所述的系統,其特征在于,所述第一計算節點在存儲第一元數據時,具體用于:
4.根據權利要求3所述的系統,其特征在于,所述第一計算節點在增加所述第一計算節點中的發送緩存區的數量時,具體用于:
5.根據權利要求4所述的系統,其特征在于,所述第一計算節點在預估第一時長時,具體用于:
6.根據權利要求4或5所述的系統,其特征在于,所述第一計算節點還用于:
7.根據權利要求1至6任一項所述的系統,其特征在于,所述第二計算節點在根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據時,具體用于:
8.根據權利要求1至7任一項所述的系統,其特征在于,所述第二計算節點在根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據時,具體用于:
9.根據權利要求1至7任一項所述的系統,其特征在于,所述第二計算節點在根據所述第一元數據從所述多個存儲節點中獲取所述reduce操作對應的分區的數據時,具體用于:
10.根據權利要求1至9任一項所述的系統,其特征在于,所述多個存儲節點中存儲的數據包括壓縮數據,所述壓縮數據通過對所述多個map任務對應的數據進行壓縮得到。
11.一種數據處理方法,其特征在于,所述方法應用于數據處理系統,所述數據處理系統包括多個計算節點以及多個存儲節點,所述多個計算節點中包括執行映射map任務的第...
【專利技術屬性】
技術研發人員:劉偉,馮犇,包小明,張景芳,
申請(專利權)人:華為技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。