W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
在HBase中,使用“Get”或者“Scan”獲取數(shù)據(jù),而在RDBMS中使用SQL查詢。為了僅獲取相關(guān)數(shù)據(jù),您可以使用HBase Filter過濾它 ,而在RDBMS中使用WHERE謂詞。
獲取數(shù)據(jù)后,您可以對(duì)其執(zhí)行計(jì)算。這種范例適用于具有幾千行和幾列的“小數(shù)據(jù)”。但是,當(dāng)您擴(kuò)展到數(shù)十億行和數(shù)百萬列時(shí),在網(wǎng)絡(luò)中移動(dòng)大量數(shù)據(jù)將在網(wǎng)絡(luò)層產(chǎn)生瓶頸,客戶端需要足夠強(qiáng)大并且有足夠的內(nèi)存來處理大量數(shù)據(jù)和計(jì)算。此外,客戶端代碼可能變得龐大而復(fù)雜。
在這種情況下,協(xié)處理器可能有意義。您可以將業(yè)務(wù)計(jì)算代碼放入在RegionServer上運(yùn)行的協(xié)處理器中,與數(shù)據(jù)位于同一位置,并將結(jié)果返回給客戶端。
這只是使用協(xié)處理器可以帶來好處的一種情況。以下是一些類比,可能有助于解釋協(xié)處理器的一些好處。
Observer協(xié)處理器類似于RDBMS中的觸發(fā)器,因?yàn)樗谔囟ㄊ录ɡ纾?code>Get或Put
)發(fā)生之前或之后執(zhí)行代碼。端點(diǎn)協(xié)處理器類似于RDBMS中的存儲(chǔ)過程,因?yàn)樗试S您對(duì)RegionServer本身上的數(shù)據(jù)而不是客戶端上的數(shù)據(jù)執(zhí)行自定義計(jì)算。
MapReduce的工作原理是將計(jì)算移動(dòng)到數(shù)據(jù)位置。協(xié)處理器在相同的主體上運(yùn)行。
如果您熟悉面向方面編程(AOP),則可以將協(xié)處理器視為通過攔截請(qǐng)求然后運(yùn)行某些自定義代碼來應(yīng)用建議,然后將請(qǐng)求傳遞到其最終目標(biāo)(甚至更改目標(biāo))。
使用HBase Shell靜態(tài)或動(dòng)態(tài)地加載協(xié)處理器。
框架API在協(xié)處理器包中提供。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: