- HBase入門(mén)與實(shí)踐(第2版)
- 彭旭
- 1121字
- 2022-12-01 19:15:36
1.3 應(yīng)用場(chǎng)景
現(xiàn)在,很多公司都宣稱(chēng)自己是一家大數(shù)據(jù)公司。確實(shí)現(xiàn)在很多公司都注重?cái)?shù)據(jù)的采集,據(jù)我所知,國(guó)內(nèi)各大互聯(lián)網(wǎng)公司以及知名企業(yè)內(nèi)部基本都在使用HBase作為數(shù)據(jù)存儲(chǔ)引擎。使用HBase的業(yè)務(wù)也非常多,如訂單、搜索、用戶(hù)畫(huà)像、推薦、監(jiān)控、安全風(fēng)控等。HBase集群在Facebook已經(jīng)達(dá)到上萬(wàn)節(jié)點(diǎn)的規(guī)模,下面列舉幾個(gè)應(yīng)用場(chǎng)景。
1.3.1 Facebook用戶(hù)交互
這是一個(gè)典型的例子,被引用的次數(shù)不計(jì)其數(shù),F(xiàn)acebook的Like按鈕被點(diǎn)了多少次、有多少人瀏覽過(guò)某篇文章、有多少人喜歡這篇文章等數(shù)據(jù)是由HBase的計(jì)數(shù)器來(lái)存儲(chǔ)的,發(fā)布者能夠?qū)崟r(shí)地看到有多少人給他點(diǎn)贊、有多少人喜歡他的文章。
HBase 在 Facebook 的應(yīng)用非常成功,F(xiàn)acebook 也輸出了一些著名的技術(shù)文章,如“Apache Hadoop Goes Realtime at Facebook”和“Facebook’s New Real-Time Messaging System: HBase To Store 135+ Billion Messages A Month”。
1.3.2 淘寶TLog
淘寶TLog是一個(gè)分布式的、可靠的,對(duì)大量數(shù)據(jù)進(jìn)行收集、分析和展現(xiàn)的系統(tǒng)。TLog的主要應(yīng)用場(chǎng)景是收集大量的運(yùn)行時(shí)日志,然后分析存儲(chǔ),最后提供數(shù)據(jù)查詢(xún)和展現(xiàn)。淘寶的“鷹眼系統(tǒng)”(對(duì)請(qǐng)求從開(kāi)始到結(jié)束整個(gè)生命周期的追蹤,包括哪一步到了哪臺(tái)機(jī)器、每一步花了多長(zhǎng)時(shí)間、與多少系統(tǒng)有交互等)就是TLog的接入方,每天有上萬(wàn)臺(tái)機(jī)器接入TLog,數(shù)據(jù)量多達(dá)上百TB,其底層就是使用HBase作為存儲(chǔ)層的。
TLog的設(shè)計(jì)參照了OpenTSDB系統(tǒng)。OpenTSDB是一種寫(xiě)在HBase之上的分布式可擴(kuò)展時(shí)序數(shù)據(jù)庫(kù)。感興趣的讀者可以搜索OpenTSDB并學(xué)習(xí)一下。
1.3.3 小米云服務(wù)
小米云服務(wù)基本是基于HBase存儲(chǔ)的。這里以云端數(shù)據(jù)的同步備份功能為例,用戶(hù)的照片、聯(lián)系人、短信、通話(huà)記錄、米聊等數(shù)據(jù)中的大部分是非結(jié)構(gòu)化的。重點(diǎn)是數(shù)據(jù)按用戶(hù)隔離,用戶(hù)只需訪(fǎng)問(wèn)與自己相關(guān)的數(shù)據(jù),非常契合HBase的分區(qū)自動(dòng)負(fù)載均衡,只需使用用戶(hù)ID來(lái)進(jìn)行分區(qū),用戶(hù)量或者數(shù)據(jù)量的持續(xù)增長(zhǎng)就可以非常容易地通過(guò)為HBase集群添加節(jié)點(diǎn)來(lái)解決。
小米對(duì)HBase也做了很多貢獻(xiàn),其自研的HBase自動(dòng)化部署與監(jiān)控系統(tǒng)Minos已經(jīng)開(kāi)源,讀者可以去GitHub搜索項(xiàng)目Minos了解詳情。
1.3.4 用戶(hù)行為數(shù)據(jù)存儲(chǔ)
目前正處于企業(yè)數(shù)字化轉(zhuǎn)型的關(guān)鍵階段,現(xiàn)在大部分公司都非常注重?cái)?shù)據(jù)的收集,用數(shù)據(jù)來(lái)驅(qū)動(dòng)業(yè)務(wù)發(fā)展(比如現(xiàn)在手機(jī)上使用的每個(gè)應(yīng)用都有各種埋點(diǎn),每一次瀏覽、點(diǎn)擊等事件都會(huì)被上傳到服務(wù)器端存儲(chǔ)),收集的這些行為數(shù)據(jù)很容易價(jià)值化,價(jià)值化之后可以用來(lái)做很多事情,例如,用戶(hù)畫(huà)像既可以為用戶(hù)構(gòu)建用戶(hù)基本信息、行為特征、社交、購(gòu)買(mǎi)力等靜態(tài)標(biāo)簽,也可以建立短期的動(dòng)態(tài)標(biāo)簽。假設(shè)用戶(hù)剛買(mǎi)車(chē),可能就需要購(gòu)買(mǎi)一些相關(guān)的車(chē)載用具。
通過(guò)給用戶(hù)構(gòu)建一個(gè)立體的畫(huà)像,系統(tǒng)可以近乎實(shí)時(shí)地分析用戶(hù)的行為,了解用戶(hù)的需求,從而實(shí)現(xiàn)精準(zhǔn)化營(yíng)銷(xiāo),這對(duì)企業(yè)尤其是電商企業(yè)至關(guān)重要。本書(shū)會(huì)以電商系統(tǒng)的用戶(hù)行為數(shù)據(jù)的使用作為實(shí)戰(zhàn)案例來(lái)一步一步介紹HBase的相關(guān)知識(shí)。
讀者服務(wù):

微信掃碼關(guān)注【異步社區(qū)】微信公眾號(hào),回復(fù)“e59362”獲取本書(shū)配套資源以及異步社區(qū)15天VIP會(huì)員卡,近千本電子書(shū)免費(fèi)暢讀。
- LaTeX Cookbook
- 從零開(kāi)始:數(shù)字圖像處理的編程基礎(chǔ)與應(yīng)用
- Leap Motion Development Essentials
- Access 數(shù)據(jù)庫(kù)應(yīng)用教程
- Hands-On Image Processing with Python
- Java Web程序設(shè)計(jì)
- Java面向?qū)ο蟪绦蜷_(kāi)發(fā)及實(shí)戰(zhàn)
- Mastering JavaScript High Performance
- Odoo 10 Implementation Cookbook
- Deep Learning with R Cookbook
- OpenCV 3 Blueprints
- MySQL 8從零開(kāi)始學(xué)(視頻教學(xué)版)
- Professional JavaScript
- Java EE基礎(chǔ)實(shí)用教程
- Java 8函數(shù)式編程