《大資料: ZooKeeper 資料同步流程》
一、ZooKeeper 資料同步流程
在 Zookeeper 中,主要依賴 ZAB 協議來實現分散式資料一致性。
ZAB 協議分為兩部分:
- 訊息廣播
- 崩潰恢復
訊息廣播
Zookeeper 使用單一的主程式 Leader 來接收和處理客戶端所有事務請求,並採用 ZAB 協議的原子廣播協議,將事務請求以 Proposal 提議廣播到所有 Follower 節點,當叢集中有過半的Follower 伺服器進行正確的 ACK 反饋,那麼Leader就會再次向所有的 Follower 伺服器傳送commit 訊息,將此次提案進行提交。這個過程可以簡稱為 2pc 事務提交,整個流程可以參考下圖,注意 Observer 節點只負責同步 Leader 資料,不參與 2PC 資料同步過程。
崩潰恢復
在正常情況訊息廣播情況下能執行良好,但是一旦 Leader 伺服器出現崩潰,或者由於網路原理導致 Leader 伺服器失去了與過半 Follower 的通訊,那麼就會進入崩潰恢復模式,需要選舉出一個新的 Leader 伺服器。在這個過程中可能會出現兩種資料不一致性的隱患,需要 ZAB 協議的特性進行避免。<
相關文章
- 搞懂 ZooKeeper 叢集的資料同步
- 大資料技術 - Zookeeper大資料
- MongoDB複製集資料同步流程MongoDB
- Hadoop大資料實戰系列文章之ZookeeperHadoop大資料
- 大資料處理的基本流程大資料
- 玩轉大資料系列之一:資料採集與同步大資料
- 大資料基礎學習-4.Zookeeper-3.4.5大資料
- 資料同步和資料備份
- 2條流程解決資料同步到全球部署的N個資料庫資料庫
- 好程式設計師大資料教程分享大資料之流程控制程式設計師大資料
- MaxWell 資料同步
- 資料同步rsync
- Rsync資料同步
- 資料庫同步資料庫
- canal資料同步
- 大資料3_04_zookeeper概述和內部原理大資料
- 詳解 ZooKeeper 資料持久化持久化
- 大資料技術與應用課堂測試-資料清洗同步大資料
- 資料同步——rsync遠端同步
- DataX將MySql資料庫資料同步到Oracle資料庫MySql資料庫Oracle
- SQL資料同步到ElasticSearch(三)- 使用Logstash+LastModifyTime同步資料SQLElasticsearch
- 大資料處理流程包括哪些環節大資料
- 大資料hadoop資料大資料Hadoop
- 資料同步利器 - canal
- clickhouse 同步mysql資料MySql
- Linux 資料同步方案Linux
- 資料讀寫流程
- DataX將Oracle資料庫資料同步到達夢資料庫Oracle資料庫
- Debezium zookeeper kafka mysql資料處理KafkaMySql
- 異構資料來源同步之資料同步 → DataX 使用細節
- 資料同步:教你如何實時把資料從 MySQL 同步到 OceanBaseMySql
- 如何將本地資料同步到 shopify 或 shopify 資料同步到本地
- Sync Folders Pro for Mac 資料夾資料同步工具Mac
- Sync Folders Pro for Mac資料夾資料同步工具Mac
- Sync Folders Pro for mac - 資料夾資料同步工具Mac
- 走進大資料,感受大資料大資料
- 大資料如何採集資料?大資料的資料從何而來?大資料
- 揭秘資料治理系統的資料流程圖流程圖