hbase+hive應(yīng)用場(chǎng)景

一.Hive應(yīng)用場(chǎng)景
本文主要講述使用 Hive 的實(shí)踐,業(yè)務(wù)不是關(guān)鍵,簡(jiǎn)要介紹業(yè)務(wù)場(chǎng)景,本次的任務(wù)是對(duì)搜索日志數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析。
集團(tuán)搜索剛上線不久,日志量并不大 。這些日志分布在 5 臺(tái)前端機(jī),按小時(shí)保存,并以小時(shí)為周期定時(shí)將上一小時(shí)產(chǎn)生的數(shù)據(jù)同步到日志分析機(jī),統(tǒng)計(jì)數(shù)據(jù)要求按小時(shí)更新。這些統(tǒng)計(jì)項(xiàng),

包括關(guān)鍵詞搜索量 pv ,類別訪問量,每秒訪問量 tps 等等。
基于 Hive ,我們將這些數(shù)據(jù)按天為單位建表,每天一個(gè)表,后臺(tái)腳本根據(jù)時(shí)間戳將每小時(shí)同步過來的 5 臺(tái)前端機(jī)的日志數(shù)據(jù)合并成一個(gè)日志文件,導(dǎo)入 Hive 系統(tǒng),每小時(shí)同步的日志數(shù)據(jù)

被追加到當(dāng)天數(shù)據(jù)表中,導(dǎo)入完成后,當(dāng)天各項(xiàng)統(tǒng)計(jì)項(xiàng)將被重新計(jì)算并輸出統(tǒng)計(jì)結(jié)果。
以上需求若直接基于 hadoop 開發(fā),需要自行管理數(shù)據(jù),針對(duì)多個(gè)統(tǒng)計(jì)需求開發(fā)不同的 map/reduce 運(yùn)算任務(wù),對(duì)合并、排序等多項(xiàng)操作進(jìn)行定制,并檢測(cè)任務(wù)運(yùn)行狀態(tài),工作量并不小。但

使用 Hive ,從導(dǎo)入到分析、排序、去重、結(jié)果輸出,這些操作都可以運(yùn)用 hql 語句來解決,一條語句經(jīng)過處理被解析成幾個(gè)任務(wù)來運(yùn)行,即使是關(guān)鍵詞訪問量增量這種需要同時(shí)訪問多天數(shù)

據(jù)的較為復(fù)雜的需求也能通過表關(guān)聯(lián)這樣的語句自動(dòng)完 成,節(jié)省了大量工作量。
二.hbase應(yīng)用場(chǎng)景
1、爬蟲網(wǎng)站URL的寫入。
2、淘寶在2011年之前所有的后端持久化存儲(chǔ)基本上都是在mysql上進(jìn)行的(不排除少量oracle/bdb/tair/mongdb等),mysql由于開源,并且生態(tài)系統(tǒng)良好,本身擁有分庫分表等多種解決方案,因此很長(zhǎng)一段時(shí)間內(nèi)都滿足淘寶大量業(yè)務(wù)的需求。
但是由于業(yè)務(wù)的多樣化發(fā)展,有越來越多的業(yè)務(wù)系統(tǒng)的需求開始發(fā)生了變化。一般來說有以下幾類變化:
數(shù)據(jù)量變得越來越多,事實(shí)上現(xiàn)在淘寶幾乎任何一個(gè)與用戶相關(guān)的在線業(yè)務(wù)的數(shù)據(jù)量都在億級(jí)別,每日系統(tǒng)調(diào)用次數(shù)從億到百億都有,且歷史數(shù)據(jù)不能輕易刪除。這需要有一個(gè)海量分布式文件系統(tǒng),能對(duì)TB級(jí)甚至PB級(jí)別的數(shù)據(jù)提供在線服務(wù)
數(shù)據(jù)量的增長(zhǎng)很快且不一定能準(zhǔn)確預(yù)計(jì),大多數(shù)應(yīng)用系統(tǒng)從上線起在一段時(shí)間內(nèi)數(shù)據(jù)量都呈很快的上升趨勢(shì),因此從成本的角度考慮對(duì)系統(tǒng)水平擴(kuò)展能力有比較強(qiáng)烈的需求,且不希望存在單點(diǎn)制約
只需要簡(jiǎn)單的kv讀取,沒有復(fù)雜的join等需求。但對(duì)系統(tǒng)的并發(fā)能力以及吞吐量、響應(yīng)延時(shí)有非常高的需求,并且希望系統(tǒng)能夠保持強(qiáng)一致性
通常系統(tǒng)的寫入非常頻繁,尤其是大量系統(tǒng)依賴于實(shí)時(shí)的日志分析
希望能夠快速讀取批量數(shù)據(jù)
三.總結(jié)
hive大數(shù)據(jù)計(jì)算,基于reducemap
hbase大數(shù)據(jù)存儲(chǔ),寫入和讀取

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容