您的位置:首頁>科技>正文

百度楊嘉義:SimpleDB高性能線上資料服務系統

2017年5月11日-13日, 2017中國資料庫技術大會於北京國際會議中心盛大開幕。 作為國內最受關注的資料庫技術大會, 本屆大會以“資料驅動·價值發現”為主題, 彙集多個領域的百余位專家, 與大家共同打造一場以資料為驅動力, 為企業進行價值創造的技術盛會。

在12日下午的NoSQL技術進展專場中, 來自百度大資料部的線上資料服務團隊架構師楊嘉義為大家帶來了主題演講《百度線上使用者資料服務系統》。 楊嘉義從應用背景、系統架構、主要技術點、應用效果四個方面進行了分享。

第一部分應用背景, 楊嘉義從超高併發、超低延遲的線上資料讀寫, 多地域資料寫入、資料完整一致、服務高可用, 同時需要訪問即時和批量資料, 存取權限控制, 有複雜的業務計算邏輯, 方便快速反覆運算的業務需求;從Session、使用者屬性、動態網頁等存儲場景 分散式cache、id-mapping服務 RTB、即時反作弊等即時輔助決策場景 其他同時需要低延遲、海量資料存儲的線上場景;以及設計目標三個點進行了分享。

第二部分楊嘉義展示了系統架構(如下圖)

楊嘉義分享的第三部分是最重要的也是主要技術點:高性能、高可用、最終一致性、即時批量資料融合、複雜業務計算服務、許可權控制。

在講到故障處理方案的時候, 他說道網路不穩定時避免集群頻繁調整, 時間視窗中消息丟失比例, 指定週期的開始才做集群調整, 例行升級重啟、bin服務故障:重建索引, 恢復資料, 索引存在共用記憶體可加速重啟;DC內節點磁片故障:資料主從切換, rebalance到其他nodes, 同步差異資料DC內及DC間網路分割:繼續寫網內資料, 日誌堆積在本地, 恢復後非同步批量同步資料。 在說到高可用運維實踐, 預定義各業務優先順序, 異常時有所取捨, 緊急降級開關, 裁剪非關鍵資料, 資料緊急恢復採取Real-time first, Latest first 資料線上線下一致性。

說到高可用的異地多活, 用於災備恢復, 系統持續可用, 每個DC都有資料讀寫, 多點寫入相互同步, 也可單點寫入。

任意一個DC故障時, 流量可以切到其他臨近DC, 挑戰就是延遲幾十ms、資料同步與合併正確性以及一致性;對於資料非同步同步, DC內部主從同步: 資料分master/replicas, 故障時可切換 read/write到master,非同步同步replicas 跨DC資料同步: chain, active-passive, active-active, star等 選chain, A->B->C, 減少跨地域網路頻寬。

最後, 楊嘉義展示了應用效果, 如下圖。

Next Article
喜欢就按个赞吧!!!
点击关闭提示