深入理解雲端儲存和雲端運算-理論基礎

來源:互聯網
上載者:User

引言:在各種各樣的硬體裝置上運行著N多的worker,而任意一個worker都能夠獨立解決一個問題。每一個叢集有這樣的裝置成千上百個,而同時又有一打這樣的叢集互相串連互動,於是,這麼一個總的集合稱為“雲”,而其提供的服務稱為“雲端運算”。 
在“雲中”的任一裝置或叢集都可以做到"進出自由"、任何崩潰的worker都能被檢測和重啟,那麼,基本上就可以稱為靠譜的雲端運算了。 


對於理解雲端儲存和雲端運算,CAP,BASE,ACID以及最終一致性這些原理有著指導作用

CAP:(Consistency-Availability-Partition Tolerance一致性,可用性(在可寫的時候可讀, 可讀的時候可寫 ),分區容忍性),有研究證明對於資料系統來說,如果要滿足其中2個要素,就必須放寬其第三要素的要求,即三者不可兼得,但是對於分布式系統來說,分區容忍性是必須具備的要求,所以在分布式系統的設計中一致性和可用性是必須要捨棄一個的。

eg:

傳統資料庫一般採用CA即強一致性和高可用性

nosql,雲端儲存等一般採用降低一致性的代價來獲得另外2個因素

ACID:按照CAP分法ACID是許多CA型關聯式資料庫多採用的原則:

A:Atomicity原子性,事務作為最小單位,要麼不執行要麼完全執行

C:Consistency一致性,一個事務把一個對象從一個合法狀態轉到另一個合法狀態,如果交易失敗,把對象恢複到前一個合法狀態。即在事務開始之前和事務結束以後,資料庫的完整性條件約束沒有被破壞

I:Isolation獨立性(隔離性),事務的執行是互不干擾的,一個事務不可能看到其他事務運行時,中間某一時刻的資料。

D:Durability:事務完成以後,該事務所對資料庫所作的更改便持久的儲存在資料庫之中,並不會被復原。

BASE:一般是通過犧牲強一致性,來換取可用性和分布式

BA:Basically Aavilable基本可用:允許偶爾的失敗,只要保證絕大多數情況下系統可用

S:Soft State軟狀態:不要求任意時刻的資料都保持同步

E:Eventual Consistency最終一致性:要求資料在一定的時間內達到一致性

以雲端儲存為例:目前的雲端儲存多以整體上採用BASE局部採用ACID,由於使用分布式使用多備份所以多採用最終一致性


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.