技術分享:基於HBase和Spark構建企業級數據處理平臺

基於HBase和Spark構建企業級數據處理平臺,面臨的場景:金融風控;個性化推薦;社交Feeds;時空時序以及大數據等。作者:大數據與機器學習

技術分享:基於HBase和Spark構建企業級數據處理平臺

面臨的場景

金融風控

  • 用戶畫像庫
  • 爬蟲抓取信息
  • 反欺詐系統
  • 訂單數據

個性化推薦

  • 用戶行為分析
  • 用戶畫像
  • 推薦引擎
  • 海量實時數據處理

社交Feeds

  • 海量帖子、文章
  • 聊天、評論
  • 海量實時數據處理

時空時序

  • 監控數據
  • 軌跡、設備數據
  • 地理信息
  • 區域分佈統計
  • 區域查詢

大數據

  • 維表和結果表
  • 離線分析
  • 海量實時數據存儲

新的挑戰

Apache HBase(在線查詢) 的特點有:

  • 鬆散表結構(Schema free)
  • 隨機查詢、範圍查詢
  • 原生海量數據分佈式存儲
  • 高吞吐、低延遲
  • 在線分佈式數據庫
  • 多版本、增量導入、多維刪除

面臨的新的挑戰:

  • 流式及批量入庫
  • 複雜分析
  • 機器學習、圖計算
  • 生態及聯邦分析

選擇Spark的原因

技術分享:基於HBase和Spark構建企業級數據處理平臺

  • 快:通過query的執行優化、Cache等技術,Spark能夠對任意數據量的數據進行快速分析。邏輯迴歸場景比Hadoop快100倍
  • 一站式:Spark同時支持複雜SQL分析、流式處理、機器學習、圖計算等模型,且一個應用中可組合上面多個模型解決場景問題
  • 開發者友好:同時友好支持SQL、Python、Scala、Java、R多種開發者語言
  • 優秀的生態:支持與Ka=a、HBase、Cassandra、MongoDB、Redis、MYSQL、SQL Server等配合使用

平臺機構及案例

一站式數據處理平臺架構

技術分享:基於HBase和Spark構建企業級數據處理平臺

  • 數據入庫:藉助於Spark Streaming,能夠做流式ETL以及增量入庫到HBase/Phoenix。
  • 在線查詢:HBase/Phoenix能夠對外提供高併發的在線查詢
  • 離線分析及算法:如果HBase/Phoenix的數據需要做複雜分析及算法分析,可以使用Spark的SQL、機器學習、圖計算等
  • 典型業務場景:爬蟲+搜索引擎

    技術分享:基於HBase和Spark構建企業級數據處理平臺

    • 性能:流吞吐 20萬條/秒
    • 查詢能力:HBase自動同步到solr對外提供全文檢索的查詢
    • 一站式解決方案:Spark服務原生支持通過SQL讀取HBase 數據能力進行ETL,Spark + HBase +Solr一站式數據處理平臺

    典型業務場景:大數據風控系統

    技術分享:基於HBase和Spark構建企業級數據處理平臺

    • Spark同時支持事中及事後風控
    • Spark友好對接HBase、RDS、MongoDB多種在線庫

    典型業務場景:構建數據倉庫(推薦、風控)


  • 毫秒級識別攔截代充訂單,併發十萬量級
  • Spark優秀的計算能力:Spark基於列式存儲Parquet的分析在數據量大的情況下比Greenplum集群有10倍的性能提升
  • 一站式解決方案:Spark服務原生支持通過SQL讀取
  • HBase SQL(Phoenix)數據能力
  • 聚焦業務:全託管的Spark服務保證了作業運行的穩定性,釋放運維人力,同時數據工作臺降低了spark作業管理成本
  • 原理及實踐

    Spark API的發展經歷了RDD、DataFrame、DataSet

    技術分享:基於HBase和Spark構建企業級數據處理平臺

    Spark Streaming採用的是Micro-Batch方式處理實時數據。

    技術分享:基於HBase和Spark構建企業級數據處理平臺

    作業堆積、延遲高、併發不夠?

    • 每批次的併發:調大kafka的訂閱的分區、spark.streaming.blockInterval
    • 代碼熱點優化:查看堆棧、broadcast、代碼優化

    Spark流式處理入庫HBase

    技術分享:基於HBase和Spark構建企業級數據處理平臺

    Micro-Batch Processing:100ms延遲ConKnuous Processing:1ms延遲

    Spark HBase Connector的一些優化

    技術分享:基於HBase和Spark構建企業級數據處理平臺

    代碼託管在:https://github.com/aliyun/aliyun-apsaradb-hbase-demo (包含Spark操作Hbase和Phoenix)

    本文整理自來自阿里巴巴的沐遠的分享,由大數據技術與架構進行整理和分享。


    分享到:


    相關文章: