-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
第九章:學習要點 #100
Comments
線性一致
排序
2PC
|
線性一致性(一種流行的一致性模型):其目標是使多副本資料看起來好像只有一個副本一樣,並使其上所有操作都原子性地生效。 因果性,因果性對系統中的事件施加了順序(什麼發生在什麼之前,基於因與果)。
為何需要共識?
共識:所有節點一致同意所做決定,且這一決定不可撤銷
如果你只有一個節點,或者你願意將決策的權能分配給單個節點,所有這些事都很簡單。
但變更領導者的共識演算法仍然必須 -> 使用「容錯的共識演算法與容錯的共識系統」
|
|
|
一致性與共識
一致性保證複製延遲問題 線性一致性新鮮度保證:系統保障讀取到的值為最新的值 順序保證因果順序不是全序 — 不能比較兩者之間的因果順序 分佈式系統的共識節點能達成共識仰賴:領導選舉、原子提交 容錯共識一致同意 — 沒有兩個節點的決定為不同 |
一致性保證事務隔離主要是為了 避免由於同時執行事務而導致的競爭狀態,而分散式一致性主要關於 在面對延遲和故障時如何協調副本間的狀態。 線性一致性(原子一致性、強一致性)
依賴線性一致性
實現線性一致的系統
順序保證
全序廣播
分散式事務與共識原子提交與兩階段提交當應用準備提交時,協調者開始階段 1 :它傳送一個 準備(prepare) 請求到每個節點,詢問它們是否能夠提交。
容錯共識
|
一致性保證
NOTE:
顺序一致性中进程只关心大家认同的顺序一样就行,不需要与全局时钟一致,线性就更严格,从这种偏序(partial order)要达到全序(total order) 約束和唯一性保證 使用者名稱或電子郵件地址必須唯一標識一個使用者 不同的複製方法達成線性一致的比較:
蘭伯特時間戳 |
The text was updated successfully, but these errors were encountered: