快手HBase在千億級用戶特徵數據分析中的應用與實踐

聲明:本文的原文是來自Hbase技術社區的一個PPT分享,我的作了整理和提煉。你們注意哈,這種會議PPT類的東西能學習到的更多的是技術方案和他人在實踐過程當中的經驗。但願對你們有幫助。面試

背景

快手天天產生數百億用戶特徵數據,分析師須要在跨30-90天的數千億特徵數據中,任意選擇多維度組合(如:城市=北京&性別=男),秒級分析用戶行爲。針對這一需求, 快手基於HBase自主研發了支持bitmap轉化、存儲、索引、快速計算的分析服務--BitBase,併成功應用於留存分析、用戶增加、廣告營銷、ABTest 等多個業務場景。架構

業務需求及挑戰

快手在實際業務中遇到的需求,須要用的業務場景:在千億級別的日誌中,選擇任意的維度,計算7-90日用戶留存,秒級返回。學習

file

技術選型

爲此,快手調研了包含Hive、ES、clickhouse在內的多種技術方案。大數據

file

技術方案

最後造成了基於bitmap和Hbase的BitBase解決方案。設計

file

對bitmap不熟悉的同窗看這裏:https://www.jianshu.com/p/bf9dbbc147ed3d

所謂的Bit-map就是用一個bit位來標記某個元素對應的Value, 而Key便是該元素。因爲採用了Bit爲單位來存儲數據,能夠大大節省存儲空間。日誌

多維計算最後被設計成在bitmap之間作與、或、非、異或、count、list計算。cdn

整個BitBaseblog

總體架構:

file

存儲模塊:

file這裏全部table的原信息會存在一個bitmap中,具體數據存在不一樣的bitmap中,bitmap的位數根據表數據量大小進行肯定。索引

計算模塊:

file

deviceId問題

file

在實際問題中,複雜的deviceId會被轉換成一個index(long)值。而且須要有如下特性:連續、一致、反解、轉換速度快。

file

連續、一致、反解技術方案

file

如何實現快速轉化

file

業務效果

在實踐延遲方面,90天留存的時間也能夠在10秒內返回。file

服務現狀:file

將來規劃

將來規劃包括:

  • 離線bitmap可以在5min導入
  • SQL支持
  • 開源

file

聲明:本號全部文章除特殊註明,都爲原創,公衆號讀者擁有優先閱讀權,未經做者本人容許不得轉載,不然追究侵權責任。

關注個人公衆號,後臺回覆【JAVAPDF】獲取200頁面試題!5萬人關注的大數據成神之路,不來了解一下嗎?5萬人關注的大數據成神之路,真的不來了解一下嗎?5萬人關注的大數據成神之路,肯定真的不來了解一下嗎?

歡迎您關注《大數據成神之路》

大數據技術與架構

備註:全部內容首發公衆號,這裏不保證明時性和完整性,你們掃描文末二維碼關注哦~

相關文章
相關標籤/搜索