複製鏈接
請複製以下鏈接發送給好友

一致性模型

鎖定
在計算機科學領域,分佈式一致性問題是一個相當重要,且被廣泛論證與探索的問題。
中文名
一致性模型
性    質
科學
類    別
計算機學

一致性模型概述

通常存在於分佈式內存共享,分佈式存儲(例如:分佈式文件系統,數據庫,緩存)等分佈式系統中。

一致性模型問題原型

假設有下列場景:
-節點N_1N_2上存放着數據X的拷貝
-客户端A更新節點N_1上的數據X
-一段時間之後,客户端B從節點N_2上讀取數據X
在這個場景中,客户端B從節點N_2上是否可以讀取到客户端A在節點N_1上的數據更新取決於系統的實現,而這便是分佈式一致性問題。

一致性模型一致性算法

Paxos算法是萊斯利·蘭伯特(Leslie Lamport,就是 LaTeX中的La,供職於微軟研究院)於1990年提出的一種基於消息傳遞且具有高度容錯特性的一致性算法,是最優秀的分佈式一致性算法。
Basic Paxos
Multi-Paxos
Cheap Paxos
Fast Paxos
Generalized Paxos
Byzantine Paxos

一致性模型工程實現

zookeeper
zookeeper是Hadoop的正式子項目,它是一個針對大型分佈式系統的可靠協調系統,提供的功能包括:配置維護、名字服務、分佈式同步、組服務等。ZooKeeper的目標就是封裝好複雜易出錯的關鍵服務,將簡單易用的接口和性能高效、功能穩定的系統提供給用户。
Chubby
來自Google的Paxos實現,是一個分佈式鎖服務。
spanner
Spanner是谷歌公司研發的、可擴展的、多版本、全球分佈式、同步複製數據庫。它是第一個把數據分佈在全球範圍內的系統,並且支持外部一致性的分佈式事務。本文描述了Spanner的架構、特性、不同設計決策的背後機理和一個新的時間API,這個API可以暴露時鐘的不確定性。這個API及其實現,對於支持外部一致性和許多強大特性而言,是非常重要的,這些強大特性包括:非阻塞的讀、不採用鎖機制的只讀事務、原子模式變更。
IBM SVC
IBM SVC異構存儲整合解決方案實現了虛擬存儲層(Virtualization Layer)的功能,將存儲智能加入到SAN的網絡中。用户可以按照應用不斷變化的需求來分配存儲,而不再受制於存儲子系統設備在功能和性能上的限制。SVC又是一個SAN網絡的中心管理控制點,而且它對服務器的操作系統和存儲子系統透明。
Microsoft AutoPilot
AutoPilot是微軟用於維護大規模互聯網服務的工具利器,採用簡單的模型和設計思想,AutoPilot負責自動化的運維數據中心中提供服務的大規模機器。