IT邵年 發(fā)表于:14年02月08日 00:44 [轉(zhuǎn)載] 至頂網(wǎng)
隨著Hadoop應(yīng)用的不斷拓展,使很多人陷入了對它的盲目崇拜中,認(rèn)為它能解決一切問題。雖然Hadoop是一個(gè)偉大的分布式大型數(shù)據(jù)計(jì)算的框架,但Hadoop不是萬能的。比如在下面這幾種場景就不適合使用Hadoop:
1、低延遲的數(shù)據(jù)訪問
Hadoop并不適用于需要實(shí)時(shí)查詢和低延遲的數(shù)據(jù)訪問。數(shù)據(jù)庫通過索引記錄可以降低延遲和快速響應(yīng),這一點(diǎn)單純的用Hadoop是沒有辦法代替的。但是如果你真的想要取代一個(gè)實(shí)時(shí)數(shù)據(jù)庫,可以嘗試一下HBase來實(shí)現(xiàn)數(shù)據(jù)庫實(shí)時(shí)讀寫。
2、結(jié)構(gòu)化數(shù)據(jù)
Hadoop不適用于結(jié)構(gòu)化數(shù)據(jù),卻非常適用于半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。Hadoop和RDBMS不同,一般采用分布式存儲(chǔ),因此在查詢處理的時(shí)候?qū)?huì)面臨延遲問題。
3、數(shù)據(jù)量并不大的時(shí)候
Hadoop一般適用于多大的數(shù)據(jù)量呢?答案是:TB 或者PB。當(dāng)你的數(shù)據(jù)只有幾十GB時(shí),使用Hadoop是沒有任何好處的。按照企業(yè)的需求有選擇性的的使用Hadoop,不要盲目追隨潮流。Hadoop很強(qiáng)大。但企業(yè)在使用Hadoop或者大數(shù)據(jù)之前,首先要明確自己的目標(biāo),再確定是否選對了工具。
4、大量的小文件
小文件指的是那些size比HDFS的block size(默認(rèn)64M)小得多的文件。如果在HDFS中存儲(chǔ)大量的小文件,每一個(gè)個(gè)文件對應(yīng)一個(gè)block,那么就將要消耗namenode大量的內(nèi)存來保存這些block的信息。如果小文件規(guī)模再大一些,那么將會(huì)超出現(xiàn)階段計(jì)算機(jī)硬件所能滿足的極限。
5、太多的寫入和文件更新
HDFS是采用的一些多讀方式。當(dāng)有太多文件更新需求,Hadoop沒有辦法支持。
6、MapReduce可能不是最好的選擇
MapReduce是一個(gè)簡單的并行編程模型。是大數(shù)據(jù)并行計(jì)算的利器,但很多的計(jì)算任務(wù)、工作及算法從本質(zhì)上來說就是不適合使用MapReduce框架的。
如果你讓數(shù)據(jù)共享在MapReduce,你可以這樣做:
迭代:運(yùn)行多個(gè) MapReduce jobs ,前一個(gè) MapReduce 的輸出結(jié)果,作為下一個(gè) MapReduce 的輸入。
共享狀態(tài)信息:但不要分享信息在內(nèi)存中,由于每個(gè)MapReduce的工作是在單個(gè)JVM上運(yùn)行。
公司簡介 | 媒體優(yōu)勢 | 廣告服務(wù) | 客戶寄語 | DOIT歷程 | 誠聘英才 | 聯(lián)系我們 | 會(huì)員注冊 | 訂閱中心
Copyright © 2013 DOIT Media, All rights Reserved. 北京楚科信息技術(shù)有限公司 版權(quán)所有.