本文整理自來自阿里巴巴的沐遠的分享,由大數據技術與架構進行整理和分享。git
場景需求和挑戰
面臨的場景
金融風控github
個性化推薦面試
- 用戶行爲分析
- 用戶畫像
- 推薦引擎
- 海量實時數據處理
社交Feeds 算法
時空時序數據庫
- 監控數據
- 軌跡、設備數據
- 地理信息
- 區域分佈統計
- 區域查詢
大數據segmentfault
新的挑戰
Apache HBase(在線查詢) 的特色有:架構
- 鬆散表結構(Schema free)
- 隨機查詢、範圍查詢
- 原生海量數據分佈式存儲
- 高吞吐、低延遲
- 在線分佈式數據庫
- 多版本、增量導入、多維刪除
面臨的新的挑戰:併發
- 流式及批量入庫
- 複雜分析
- 機器學習、圖計算
- 生態及聯邦分析
選擇Spark的緣由
- 快:經過query的執行優化、Cache等技術,Spark可以對任意數據量的數據進行快速分析。邏輯迴歸場景比Hadoop快100倍
- 一站式:Spark同時支持複雜SQL分析、流式處理、機器學習、圖計算等模型,且一個應用中可組合上面多個模型解決場景問題
- 開發者友好:同時友好支持SQL、Python、Scala、Java、R多種開發者語言
- 優秀的生態:支持與Ka=a、HBase、Cassandra、MongoDB、Redis、MYSQL、SQL Server等配合使用
平臺機構及案例
一站式數據處理平臺架構
- 數據入庫:藉助於Spark Streaming,可以作流式ETL以及增量入庫到HBase/Phoenix。
- 在線查詢:HBase/Phoenix可以對外提供高併發的在線查詢
- 離線分析及算法:若是HBase/Phoenix的數據須要作複雜分析及算法分析,可使用Spark的SQL、機器學習、圖計算等
典型業務場景:爬蟲+搜索引擎
- 性能:流吞吐 20萬條/秒
- 查詢能力:HBase自動同步到solr對外提供全文檢索的查詢
- 一站式解決方案:Spark服務原生支持經過SQL讀取HBase 數據能力進行ETL,Spark + HBase +Solr一站式數據處理平臺
典型業務場景:大數據風控系統
- Spark同時支持事中及過後風控
- Spark友好對接HBase、RDS、MongoDB多種在線庫
典型業務場景:構建數據倉庫(推薦、風控)
- 毫秒級識別攔截代充訂單,併發十萬量級
- Spark優秀的計算能力:Spark基於列式存儲Parquet的分析在數據量大的狀況下比Greenplum集羣有10倍的性能提高
- 一站式解決方案:Spark服務原生支持經過SQL讀取
HBase SQL(Phoenix)數據能力運維
- 聚焦業務:全託管的Spark服務保證了做業運行的穩定性,釋放運維人力,同時數據工做臺下降了spark做業管理成本
原理及最佳實踐
Spark API的發展經歷了RDD、DataFrame、DataSet
機器學習
Spark Streaming採用的是Micro-Batch方式處理實時數據。
做業堆積、延遲高、併發不夠?
- 每批次的併發:調大kafka的訂閱的分區、spark.streaming.blockInterval
- 代碼熱點優化:查看堆棧、broadcast、代碼優化
Spark流式處理入庫HBase
Micro-Batch Processing:100ms延遲
ConKnuous Processing:1ms延遲
Spark HBase Connector的一些優化
代碼託管在:https://github.com/aliyun/ali... (包含Spark操做Hbase和Phoenix)
聲明:本號全部文章除特殊註明,都爲原創,公衆號讀者擁有優先閱讀權,未經做者本人容許不得轉載,不然追究侵權責任。
關注個人公衆號,後臺回覆【JAVAPDF】獲取200頁面試題!
5萬人關注的大數據成神之路,不來了解一下嗎?
5萬人關注的大數據成神之路,真的不來了解一下嗎?
5萬人關注的大數據成神之路,肯定真的不來了解一下嗎?