電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子論文>網(wǎng)絡(luò)協(xié)議論文>實例分析分布式數(shù)據(jù)存儲協(xié)議對比

實例分析分布式數(shù)據(jù)存儲協(xié)議對比

2017-09-30 | rar | 0.7 MB | 次下載 | 1積分

資料介紹

  關(guān)于一致性

  為什么需要Paxos或Quorum算法?分布式系統(tǒng)實現(xiàn)數(shù)據(jù)存儲,是通過多份數(shù)據(jù)副本來保證可靠,假設(shè)部分節(jié)點訪問數(shù)據(jù)失敗,還有其他節(jié)點提供一致的數(shù)據(jù)返回給用戶。對數(shù)據(jù)存儲而言,怎樣保證副本數(shù)據(jù)的一致性當屬分布式存儲最重要的問題。 一致性是分布式理論中的根本性問題,近半個世紀以來,科學家們圍繞著一致性問題提出了很多理論模型,依據(jù)這些理論模型,業(yè)界也出現(xiàn)了很多工程實踐投影。何為一致性問題?簡而言之,一致性問題就是相互獨立的節(jié)點之間,在可控的時間范圍內(nèi)如何達成一項決議的問題。

  強一致寫、多段式提交

  強一致寫

  解決這個問題最簡單的方法 ,就是強一致寫。在用戶提交寫請求后,完成所有副本更新再返回用戶,讀請求任意選擇某個節(jié)點。數(shù)據(jù)修改少節(jié)點少時,方案看起來很好,但操作頻繁則有寫操作延時問題,也無法處理節(jié)點宕機。

  兩段式提交(2PC 、Three-Phase Commit)

  既然實際系統(tǒng)中很難保證強一致,便只能通過兩段式提交分成兩個階段,先由Proposer(提議者)發(fā)起事物并收集Acceptor(接受者)的返回,再根據(jù)反饋決定提交或中止事務(wù)。

  第一階段:Proposer發(fā)起一個提議,詢問所有Acceptor是否接受;

  第二階段:Proposer根據(jù)Acceptor的返回結(jié)果,提交或中止事務(wù)。如果Acceptor全部同意則提交,否則全部終止。

  兩階段提交方案是實現(xiàn)分布式事務(wù)的關(guān)鍵;但是這個方案針對無反饋的情況,除了“死等”,缺乏合理的解決方案。 Proposer在發(fā)起提議后宕機,階段二的Acceptor資源將鎖定死等。如果部分參與者接受請求后異常,還可能存在數(shù)據(jù)不一致的腦裂問題。

  三段式提交(3PC、Three-Phase Commit)

  為了解決2PC的死等問題,3PC在提交前增加一次準備提交(prepare commit)的階段,使得系統(tǒng)不會因為提議者宕機不知所措。接受者接到準備提交指令后可以鎖資源,但要求相關(guān)操作必須可回滾。

  但3PC并沒有被用在我們的工程實現(xiàn)上,因為3PC無法避免腦裂,同時有其他協(xié)議可以做到更多的特性又解決了死等的問題。

  實例分析分布式數(shù)據(jù)存儲協(xié)議對比

  圖1 三段式提交,在二段式提交基礎(chǔ)上增加prepare commit階段

  主流的Paxos算法

  微信后臺近期開始主要推廣Paxos算法用于內(nèi)部分布式存儲。Paxos是Leslie Lamport提出的基于消息傳遞的一致性算法,解決了分布式存儲中多個副本響應(yīng)讀寫請求的一致性,Paxos在目前的分布式領(lǐng)域幾乎是一致性的代名詞(據(jù)傳Google Chubby的作者Mike Burrows曾說過這個世界上只有一種一致性算法, 那就是Paxos,其他算法都是殘次品)。Paxos算法在可能宕機或網(wǎng)絡(luò)異常的分布式環(huán)境中,快速且正確地在集群內(nèi)部對某個數(shù)據(jù)的值達成一致,并且保證只要任意多數(shù)節(jié)點存活,都不會破壞整個系統(tǒng)的一致性。Paxos的核心能力就是多個節(jié)點確認一個值,少數(shù)服從多數(shù),獲得可用性和一致性的均衡。

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費下載
  2. 0.00 MB  |  1490次下載  |  免費
  3. 2單片機典型實例介紹
  4. 18.19 MB  |  93次下載  |  1 積分
  5. 3S7-200PLC編程實例詳細資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費
  11. 6基于AT89C2051/4051單片機編程器的實驗
  12. 0.11 MB  |  4次下載  |  免費
  13. 7基于單片機和 SG3525的程控開關(guān)電源設(shè)計
  14. 0.23 MB  |  3次下載  |  免費
  15. 8基于單片機的紅外風扇遙控
  16. 0.23 MB  |  3次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費
  15. 8開關(guān)電源設(shè)計實例指南
  16. 未知  |  21539次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191183次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138039次下載  |  免費