再谈 HBase 八大应用场景
1. HBase概述
HBase是一個分布式存儲、數(shù)據(jù)庫引擎,可以支持千萬的QPS、PB級別的存儲,這些都已經(jīng)在生產(chǎn)環(huán)境驗證,并且在廣大的公司已經(jīng)驗證。特別是阿里、小米、京東、滴滴內(nèi)部都有數(shù)千、上萬臺的HBase集群。選擇一個技術(shù)的首要條件是對齊大公司,大公司會投入大量的人力去維護、改進、貢獻社區(qū)。
?
2. 關(guān)于 NewSQL 與 NoSQL 的關(guān)系
技術(shù)總是不斷向前發(fā)展的,如今都在提NewSQL,其實NewSQL在筆者看來是NoSQL之上的一個封裝,一個子場景。NoSQL中的大表,典型就是提供了KV1V2……Vn,其中每個V可以是1b,也可以是100MB。可以說是一個元的存在,就類似于數(shù)字世界的01,可以任意組合。在以HBase為代表的NoSQL中,HBase可以組合出任意的場景,NewSQL可以是之上加了SQL層或者更近一層添加事務(wù)的子場景。
?
3. 關(guān)于計算與存儲分離
在云上,對于引擎最為核心的就是存儲計算分離,存儲可以按需計費,起碼得彈性伸縮。計算則按節(jié)點存儲提供。如果完全按照QPS計費,要么費用高得嚇人,要么難以滿足更多的場景,比如存儲10M,到底算一次QPS,還是多少次。 由于HBase天生就是存儲計算分離,天然比較適配云上的架構(gòu),可以說到了云上,HBase更加具有優(yōu)勢。
?
4. HBase 場景
HBase可以說是一個數(shù)據(jù)庫,也可以說是一個存儲。擁有雙重屬性的HBase天生就具備廣闊的應(yīng)用場景。在最近的一些版本中,引入了OffHeap降低gc影響,優(yōu)化鏈路延遲,提供Replica等可以滿足在線的需求。引入MOB,可以存儲10M左右的對象,完全適應(yīng)了對象存儲。另外由于自身的并發(fā)能力、存儲能力,可以說是具有最為競爭力的引擎
-
對象存儲:我們知道不少的頭條類、新聞類的的新聞、網(wǎng)頁、圖片存儲在HBase之中,一些病毒公司的病毒庫也是存儲在HBase之中
-
時序數(shù)據(jù):HBase之上有OpenTSDB模塊,可以滿足時序類場景的需求
-
推薦畫像:特別是用戶的畫像,是一個比較大的稀疏矩陣,螞蟻的風控就是構(gòu)建在HBase之上
-
時空數(shù)據(jù):主要是軌跡、氣象網(wǎng)格之類,滴滴打車的軌跡數(shù)據(jù)主要存在HBase之中,另外在技術(shù)所有大一點的數(shù)據(jù)量的車聯(lián)網(wǎng)企業(yè),數(shù)據(jù)都是存在HBase之中
-
CubeDB OLAP:Kylin一個cube分析工具,底層的數(shù)據(jù)就是存儲在HBase之中,不少客戶自己基于離線計算構(gòu)建cube存儲在hbase之中,滿足在線報表查詢的需求
-
消息/訂單:在電信領(lǐng)域、銀行領(lǐng)域,不少的訂單查詢底層的存儲,另外不少通信、消息同步的應(yīng)用構(gòu)建在HBase之上
-
Feeds流:典型的應(yīng)用就是xx朋友圈類似的應(yīng)用
-
NewSQL:之上有Phoenix的插件,可以滿足二級索引、SQL的需求,對接傳統(tǒng)數(shù)據(jù)需要SQL非事務(wù)的需求
更多的場景需要不斷挖掘
?
5. 結(jié)尾
以上再次回顧HBase的場景,做了一個簡單的分類,后續(xù)會有一些針對一些場景的實際案例
總結(jié)
以上是生活随笔為你收集整理的再谈 HBase 八大应用场景的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 闲话智慧城市
- 下一篇: 面试还在被红-黑树虐?看完这篇动图文章轻