[發(fā)明專利]在分布式系統(tǒng)中選取節(jié)點(diǎn)的方法和裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201510016624.7 | 申請(qǐng)日: | 2015-01-13 |
| 公開(公告)號(hào): | CN104580476B | 公開(公告)日: | 2018-09-14 |
| 發(fā)明(設(shè)計(jì))人: | 呂信;郭李明 | 申請(qǐng)(專利權(quán))人: | 北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司 |
| 主分類號(hào): | H04L29/08 | 分類號(hào): | H04L29/08 |
| 代理公司: | 中原信達(dá)知識(shí)產(chǎn)權(quán)代理有限責(zé)任公司 11219 | 代理人: | 姜?jiǎng)?金潔 |
| 地址: | 100080 北京市海淀區(qū)杏石口路6*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 分布式 系統(tǒng) 選取 節(jié)點(diǎn) 方法 裝置 | ||
本發(fā)明提供一種在分布式系統(tǒng)中選取節(jié)點(diǎn)的方法和裝置,有助于在比較低的工作量和成本下通過(guò)提高None節(jié)點(diǎn)的內(nèi)存容量,從而提高整個(gè)PrestoDB集群的性能。該方法包括:在所述分布式系統(tǒng)中,將指定的一部分節(jié)點(diǎn)作為候選的None節(jié)點(diǎn);在需要將多個(gè)Source節(jié)點(diǎn)的數(shù)據(jù)片匯聚到一個(gè)節(jié)點(diǎn)的情況下,在所述候選的None節(jié)點(diǎn)中選擇一個(gè)節(jié)點(diǎn),然后將所述多個(gè)Source節(jié)點(diǎn)的數(shù)據(jù)片匯聚到選擇的節(jié)點(diǎn)。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別地涉及一種在分布式系統(tǒng)中選取節(jié)點(diǎn)的方法和裝置。
背景技術(shù)
伴隨著大數(shù)據(jù)的興起,互聯(lián)網(wǎng)公司的業(yè)務(wù)數(shù)據(jù)量逐年上升,因此各大互聯(lián)網(wǎng)公司都在內(nèi)部推行大數(shù)據(jù)技術(shù),并且針對(duì)于核心業(yè)務(wù)系統(tǒng)建設(shè)數(shù)據(jù)倉(cāng)庫(kù),目前數(shù)據(jù)倉(cāng)庫(kù)分為兩種類型:離線數(shù)據(jù)倉(cāng)庫(kù)和實(shí)時(shí)數(shù)據(jù)倉(cāng)庫(kù)。
離線數(shù)據(jù)倉(cāng)庫(kù)的代表產(chǎn)品就是hive,該產(chǎn)品由于底層計(jì)算框架是MapReduce,因此其適合于超大數(shù)據(jù)集的離線分析和計(jì)算,對(duì)于實(shí)時(shí)性要求比較高的數(shù)據(jù)分析和計(jì)算并不適合。
實(shí)時(shí)數(shù)據(jù)倉(cāng)庫(kù)的代表產(chǎn)品是PrestoDB,該產(chǎn)品由FaceBook開發(fā),采用了PipeLine的分布式數(shù)據(jù)計(jì)算和傳輸模式,對(duì)于大數(shù)據(jù)的分析和計(jì)算能夠滿足在100ms-20m之內(nèi),滿足了實(shí)時(shí)數(shù)據(jù)分析和計(jì)算的要求。
由于PrestoDB是一個(gè)基于內(nèi)存的分布式計(jì)算框架,在進(jìn)行數(shù)據(jù)分析和計(jì)算的時(shí)候,PrestoDB首先將需要分析和計(jì)算的數(shù)據(jù)分為數(shù)據(jù)片并將每個(gè)數(shù)據(jù)片讀取到PrestoDB的Source節(jié)點(diǎn)中的內(nèi)存中,然后將每個(gè)Source節(jié)點(diǎn)內(nèi)存中的數(shù)據(jù)通過(guò)網(wǎng)絡(luò)匯聚到一個(gè)None節(jié)點(diǎn)或者多個(gè)Fixed節(jié)點(diǎn)中,具體是匯聚到None節(jié)點(diǎn)還是Fixed節(jié)點(diǎn)與聚合函數(shù)的類型相關(guān),例如:如果查詢中包含有order by語(yǔ)句,那么就需要對(duì)所有的結(jié)果進(jìn)行整體排序,因此各個(gè)Source節(jié)點(diǎn)內(nèi)存中的數(shù)據(jù)就需要匯聚到一個(gè)None節(jié)點(diǎn)中,然后進(jìn)行整體排序;如果查詢中包含有g(shù)roup by語(yǔ)句,那么就需要對(duì)所有的結(jié)果進(jìn)行分組,因此各個(gè)Source節(jié)點(diǎn)內(nèi)存中的數(shù)據(jù)就需要匯聚到多個(gè)Fixed節(jié)點(diǎn)中,從而進(jìn)行分組。
目前PrestoDB是從整個(gè)集群中隨機(jī)選取一個(gè)節(jié)點(diǎn)作為None節(jié)點(diǎn)的,具體PrestoDB各種節(jié)點(diǎn)的選取算法如圖1所示,圖1是根據(jù)現(xiàn)有技術(shù)中的在PrestoDB集群中選取節(jié)點(diǎn)的流程的示意圖。如圖1所示,首先判斷需要選取的節(jié)點(diǎn)的類型,如需選取None節(jié)點(diǎn)或Fixed節(jié)點(diǎn),則在集群中隨機(jī)選取;如需選取Source節(jié)點(diǎn),先判斷是否需要采用硬件感知的方式,若是,則根據(jù)數(shù)據(jù)本地性來(lái)選取,否則隨機(jī)選取多個(gè)節(jié)點(diǎn)作為Source節(jié)點(diǎn)。這里的硬件感知是指感知需要處理的數(shù)據(jù)所在的位置,本地性是指優(yōu)先選擇數(shù)據(jù)所在的節(jié)點(diǎn)作為工作節(jié)點(diǎn)。因?yàn)槿绻峙涞墓ぷ鞴?jié)點(diǎn),剛好就是需要處理的數(shù)據(jù)所在的節(jié)點(diǎn),就能減少數(shù)據(jù)進(jìn)行網(wǎng)絡(luò)傳輸所需要的時(shí)間,能夠減少計(jì)算任務(wù)所需要的時(shí)間。所以在一些情況下可采用硬件感知方式,按本地性原則選取節(jié)點(diǎn)。
因此可以看出,如果一個(gè)節(jié)點(diǎn)被選擇作為None節(jié)點(diǎn),那么對(duì)其內(nèi)存容量的要求就比較大。要想保證PrestoDB大數(shù)據(jù)量分析與計(jì)算的順利進(jìn)行,就必須對(duì)集群中的所有節(jié)點(diǎn)進(jìn)行內(nèi)存升級(jí),使各個(gè)節(jié)點(diǎn)在被選擇為None節(jié)點(diǎn)時(shí)都能勝任計(jì)算要求,這種升級(jí)工作量和成本都比較大。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種在分布式系統(tǒng)中選取節(jié)點(diǎn)的方法和裝置,通過(guò)只提高None節(jié)點(diǎn)的內(nèi)存容量,從而在比較低的工作量和成本下提高整個(gè)PrestoDB集群的性能。
為實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的一個(gè)方面,提供了一種在分布式系統(tǒng)中選取節(jié)點(diǎn)的方法。
本發(fā)明的在分布式系統(tǒng)中選取節(jié)點(diǎn)的方法中,分布式系統(tǒng)為PrestoDB集群,該方法包括:在所述分布式系統(tǒng)中,將指定的一部分節(jié)點(diǎn)作為候選的None節(jié)點(diǎn);在需要將多個(gè)Source節(jié)點(diǎn)的數(shù)據(jù)片匯聚到一個(gè)節(jié)點(diǎn)的情況下,在所述候選的None節(jié)點(diǎn)中選擇一個(gè)節(jié)點(diǎn),然后將所述多個(gè)Source節(jié)點(diǎn)的數(shù)據(jù)片匯聚到選擇的節(jié)點(diǎn)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司,未經(jīng)北京京東尚科信息技術(shù)有限公司;北京京東世紀(jì)貿(mào)易有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510016624.7/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 節(jié)點(diǎn)查詢方法、節(jié)點(diǎn)、移動(dòng)通訊系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品
- 一種根據(jù)節(jié)點(diǎn)集合構(gòu)造節(jié)點(diǎn)關(guān)系樹的方法、裝置及系統(tǒng)
- 一種DHT網(wǎng)絡(luò)負(fù)載均衡裝置及虛節(jié)點(diǎn)劃分的方法
- 一種無(wú)線傳感網(wǎng)地理位置路由空洞處理方法
- 節(jié)點(diǎn)鎖定部件、節(jié)點(diǎn)滑軌、節(jié)點(diǎn)和機(jī)箱
- 一種待推薦節(jié)點(diǎn)線路的確定方法及裝置
- 流控方法、目標(biāo)節(jié)點(diǎn)、節(jié)點(diǎn)及施主節(jié)點(diǎn)
- 節(jié)點(diǎn)布局確定方法以及裝置
- 一種具有分布式柔度的全柔順微位移放大機(jī)構(gòu)
- 節(jié)點(diǎn)掛載方法、裝置、網(wǎng)絡(luò)節(jié)點(diǎn)及存儲(chǔ)介質(zhì)





