ios中block的底層原理 有知道HBase使用場景有哪些的嗎?
有知道HBase使用場景有哪些的嗎?HBase簡介HBase(Hadoopdatabase)是一個分布式、可擴展、再朝列的NoSQL數(shù)據(jù)庫,本質(zhì)上是一個Key-Value系統(tǒng),底層存儲設(shè)計和實現(xiàn)HDF
有知道HBase使用場景有哪些的嗎?
HBase簡介HBase(Hadoopdatabase)是一個分布式、可擴展、再朝列的NoSQL數(shù)據(jù)庫,本質(zhì)上是一個Key-Value系統(tǒng),底層存儲設(shè)計和實現(xiàn)HDFS,原生意見MapReduce計算框架,本身高吞吐、低延時的讀寫特點。
HBase主要注意特性
HBase乾坤二卦很多重要的特性,追加:
強一致性讀寫:HBase并不是最終一致性,只不過是強一致性的系統(tǒng),這讓HBase太更適合做西下高速的吸聚操作。
自動sharding:HBase的表在水平方向上以region為單位分布式存儲在各個節(jié)點上,當region都沒有達到是有大小時,變會手動split恢復(fù)分布數(shù)據(jù)。
自動出現(xiàn)故障轉(zhuǎn)移:這是HBase高可用的體現(xiàn),當某一個節(jié)點故障下線時,節(jié)點上的region也會登陸游戲并會自動啟動撤回到狀態(tài)良好的節(jié)點上不了線。
再朝列的存儲:HBase是向大列的存儲系統(tǒng),相同特征(列族同一)的數(shù)據(jù)會被注意扔到一起,這能夠提高增加數(shù)據(jù)讀取數(shù)據(jù)的效率。
完美貼合增強Hadoop:HBase被定義法為Hadoopdatabase,那就是基于組件HDFS做的數(shù)據(jù)存儲,而原生的支持MapReduce計算引擎。
相當敵視的API操作:HBase需要提供了簡單易用的JavaAPI,而且提供了Thrift與REST的API供非Java環(huán)境在用。
BlockCache與BloomFilter:查詢優(yōu)化軟件方面HBase接受BlockCache與BloomFilter,也讓HBase能對海量數(shù)據(jù)做高效查詢。
什么時候建議使用HBaseHBase才是一款NoSQL數(shù)據(jù)庫,并不能不能可以解決所有問題。關(guān)于我們在實際中生產(chǎn)過程中滿足的條件哪些條件的時候是可以中,選擇HBase作為底層存儲,這里能提供幾點建議:
1、數(shù)據(jù)量規(guī)模相當浩大
一般情形,單表數(shù)據(jù)量如果不是僅有百萬級的或更少,不是非常建議您建議使用HBase而估計判斷關(guān)系型數(shù)據(jù)庫是否能夠滿足用戶的需求;單表數(shù)據(jù)量遠遠超過千萬或則十億百億的時候,而且伴有較高并發(fā),也可以考慮使用HBase。這比較多是利用現(xiàn)有分布式存儲系統(tǒng)的優(yōu)勢,假如數(shù)據(jù)量比較好小,單個節(jié)點就能管用存儲的話則其他節(jié)點的資源就會存在浪費。
2、要求是實時地的點查詢
HBase是一個Key-Value數(shù)據(jù)庫,默認對Rowkey即行鍵做了索引優(yōu)化,因此就算是數(shù)據(jù)量非常龐大,依據(jù)什么行鍵的查詢效率始終會很高,這以至于HBase太更適合依據(jù)行鍵做單條記錄的查詢。真心只能說明的是,不能據(jù)行鍵的一部分做范圍去查詢,這里不屬于到Rowkey的設(shè)計問題,不再繼續(xù)贅言。
3、都能夠不能容忍NoSQL短板
前面提到了NoSQL并不能不能幫忙解決所有問題,HBase確實是一樣的,假如業(yè)務(wù)場景是是需要事務(wù)意見、緊張的關(guān)聯(lián)去查詢等,不建議不使用HBase。HBase有它適合我的業(yè)務(wù)場景,我們不能過分苛刻它也能幫我們能解決所有問題。
4、數(shù)據(jù)分析需求并不是太多
可是說HBase是另一個面向列的數(shù)據(jù)庫,但它有別于真正的列式存儲系統(tǒng)諸如Parquet、Kudu等,再而且自身存儲架構(gòu)的設(shè)計,使得HBase根本不擅長做數(shù)據(jù)分析,或是說數(shù)據(jù)分析是HBase的弱項,因此假如通常的業(yè)務(wù)需求是替做數(shù)據(jù)分析,諸如做報表,這樣不建議您就使用HBase。
如果能夠滿足的條件根據(jù)上述規(guī)定的幾點,硬件條件也行最簡形矩陣的情況下,濃烈建議您判斷在用HBase以及底層存儲解決你的問題。
HBase使用場景由于HBase十分豐富的特性,而且自身的海量數(shù)據(jù)存儲能力與海量計算并發(fā)訪問能力,以至于HBase應(yīng)用的很應(yīng)用范圍。目前已經(jīng)在金融、交通、醫(yī)療、車聯(lián)網(wǎng)、IoT等眾多領(lǐng)域有了最佳實踐,比較復(fù)雜到訂單/賬單存儲、用戶畫像、時空/時序數(shù)據(jù)、對象存儲、Cube分析等各個使用場景。