分布式一致性

      網(wǎng)友投稿 894 2025-03-31

      在計(jì)算機(jī)科學(xué)中,一致性模型(Consistency model)被用于分布式共享內(nèi)存系統(tǒng)(DSM, distributed shared memory systems)或分布式數(shù)據(jù)存儲(chǔ)(比如:文件系統(tǒng),數(shù)據(jù)庫(kù),樂(lè)觀復(fù)制系統(tǒng)或者網(wǎng)頁(yè)緩存)這兩大類分布式系統(tǒng)當(dāng)中。如果對(duì)內(nèi)存的操作滿足特定的一致性規(guī)則,這個(gè)系統(tǒng)就被認(rèn)為是支持這種一致性模型。數(shù)據(jù)一致性模型指的是程序員遵循某些規(guī)則,讓內(nèi)存數(shù)據(jù)保持一致,讓讀,寫或更新內(nèi)存這樣的操作變得可預(yù)測(cè)。這不同于另一個(gè)一致性(coherence)概念,Coherence只出現(xiàn)在Cache Coherence?一詞中,稱為“緩存一致性”,研究的是多核場(chǎng)景,保證多核上的CPU緩存數(shù)據(jù)一致,一般是單機(jī)維度。

      數(shù)據(jù)庫(kù)事務(wù)的一致性

      數(shù)據(jù)庫(kù)管理系統(tǒng)在寫入或更新資料的過(guò)程中,為了保證事務(wù)是正確可靠的,必須具備四個(gè)特性(ACID):原子性(atomicity),一致性(consistency),隔離性(isolation),持久性(durability)。這里的一致性指的是在事務(wù)開始之前和事務(wù)結(jié)束之后,數(shù)據(jù)庫(kù)的完整性沒有被破壞。這表示寫入的資料必須完全符合所有的預(yù)設(shè)約束、觸發(fā)器、級(jí)聯(lián)回滾等。ACID是傳統(tǒng)數(shù)據(jù)庫(kù)常用的設(shè)計(jì)理念,追求強(qiáng)一致模型。這個(gè)概念和數(shù)據(jù)庫(kù)的數(shù)據(jù)是否多副本沒有關(guān)系。

      分布式理論中的一致性

      在一個(gè)分布式系統(tǒng)中,一致性(Consistency),可用性(Availability),分區(qū)容錯(cuò)性(Partition tolerance)三者不可兼得,這個(gè)結(jié)論叫做CAP理論。這里的一致性指的是所有數(shù)據(jù)備份,在同一時(shí)刻是否具有同樣的值。系統(tǒng)一般對(duì)外提供的有不同的一致性級(jí)別,不同的一致性級(jí)別限定了系統(tǒng)允許的操作執(zhí)行順序,越嚴(yán)格的一致性模型,意味著性能、可用性或者擴(kuò)展性等有所損失。架構(gòu)師Dan Pritchett提出了BASE理論,BASE理論是對(duì)CAP理論的延伸,其核心思想是即使無(wú)法做到CAP理論中的強(qiáng)一致性,但應(yīng)用可以采用合適的方式達(dá)到最終一致性。? BASE是指基本可用(Basically Available)、軟狀態(tài)(Soft State)、最終一致性(Eventual Consistency)。最終一致性是指系統(tǒng)中所有數(shù)據(jù)副本經(jīng)過(guò)一定時(shí)間后,最終能夠達(dá)到一致的狀態(tài)。

      強(qiáng)一致性(Strict consistency)

      這是最嚴(yán)格的一種模型,采用全局時(shí)鐘的約束,任何寫操作都能立刻同步到其他所有進(jìn)程,任何讀操作都能讀取到最新的修改。這是一種理想的模型,因?yàn)樗矔r(shí)消息交換是不可能的。它解決不了并發(fā)寫同一數(shù)據(jù)的沖突問(wèn)題,因?yàn)檫@個(gè)模型的前提是假定并發(fā)寫入是不可能的。

      在強(qiáng)一致模型中,P1對(duì)x執(zhí)行了寫操作,P2就可以立即讀到x的值為1;在非強(qiáng)一致模型中,P1對(duì)x執(zhí)行了寫操作,P2對(duì)x進(jìn)行讀的時(shí)候可能先讀到的是初始值0,然后讀到的是修改后的值1。

      順序一致性(Sequential consistency)

      順序一致性模型由Lamport 于1979年提出,這種一致性模型比強(qiáng)一致性模型要弱,采用分布式邏輯時(shí)鐘實(shí)現(xiàn),所有的進(jìn)程以相同的順序看到所有的寫操作修改,但是讀操作未必能及時(shí)讀到其他進(jìn)程對(duì)同一數(shù)據(jù)的寫更新。順序一致性可能會(huì)產(chǎn)生不確定的結(jié)果,因?yàn)樵诔绦虻牟煌\(yùn)行期間,處理器之間的順序操作順序可能會(huì)有不同,所有內(nèi)存操作都需要按照程序順序執(zhí)行。

      上圖表示:P1對(duì)x執(zhí)行了寫操作,將x的值寫為3,P2對(duì)x執(zhí)行了寫操作,將x的值寫為了5,P2對(duì)x執(zhí)行讀操作的時(shí)候,讀出的結(jié)果是3。由此可見,順序一致性并不能保證讀到的是最新的結(jié)果5。

      因果一致性(Causal consistency)

      因果一致性是一種弱化的順序一致性,所有進(jìn)程必須以相同的順序看到具有潛在因果關(guān)系的寫操作。不同進(jìn)程可以以不同的順序看到并發(fā)的寫操作。

      在第一個(gè)時(shí)刻,P1對(duì)x進(jìn)行了寫操作,將x的值寫為1,P2,P3,P4對(duì)x進(jìn)行讀操作,讀到的是1;在第二個(gè)時(shí)刻,P2對(duì)x進(jìn)行了寫操作,將x的值寫為了2;在第三個(gè)時(shí)刻,P1將X的值寫為了3,P3讀的是P1寫回后的結(jié)果3,P4讀的是之前的結(jié)果2; 在第四個(gè)時(shí)刻,P3讀取的結(jié)果是2,P4讀取的結(jié)果是3。這里W(x)1和W(x)2就是因果相關(guān),因?yàn)镻2對(duì)X的讀操作在P2對(duì)X的寫操作之前發(fā)生。

      最終一致性(Eventual Consistency)

      分布式一致性

      各個(gè)節(jié)點(diǎn)的數(shù)據(jù)不一致,可以通過(guò)一系列的措施來(lái)進(jìn)行更新補(bǔ)償,最終達(dá)到一致性的要求。這個(gè)過(guò)程就是最終一致性。強(qiáng)調(diào)的是要求最終一致,不需要實(shí)時(shí)保證系統(tǒng)數(shù)據(jù)的強(qiáng)一致。

      參考:

      [1]https://mwhittaker.github.io/blog/an_illustrated_proof_of_the_cap_theorem/

      [2]?https://en.wikipedia.org/wiki/Consistency_model?spm=a2c6h.12873639.0.0.71e375b9HP0WoA

      [3]?https://jepsen.io/consistency

      云數(shù)據(jù)庫(kù) GaussDB(for MySQL)

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:實(shí)例詳解Excel怎么自動(dòng)加邊框(excel如何自動(dòng)加邊框)
      下一篇:【VR】(二)Unity3d開發(fā) VR使用手柄圓盤控制 人物移動(dòng)(拋物線瞬移)
      相關(guān)文章
      在线A亚洲老鸭窝天堂| 亚洲狠狠久久综合一区77777| 亚洲精品97久久中文字幕无码| 亚洲熟妇少妇任你躁在线观看| 中文字幕亚洲精品资源网| 亚洲色中文字幕无码AV| 国产AV无码专区亚洲AV漫画 | 国产精品成人亚洲| 亚洲AV无码一区二区三区牲色| 亚洲久热无码av中文字幕| 在线观看亚洲AV日韩A∨| 亚洲国产成+人+综合| 亚洲乱码在线播放| 久久精品国产亚洲αv忘忧草| 亚洲欧洲精品一区二区三区| 亚洲日本国产乱码va在线观看| 亚洲国产精品美女| 亚洲视频在线观看地址| 亚洲成a人片7777| 最新亚洲精品国偷自产在线 | 亚洲精品无码高潮喷水在线| 亚洲真人无码永久在线| 亚洲av无码一区二区三区乱子伦| 亚洲成AV人片在线观看无| 婷婷精品国产亚洲AV麻豆不片| 亚洲精品线在线观看| 亚洲电影免费观看| 亚洲春色另类小说| 亚洲人成网站色7799| 自拍偷自拍亚洲精品播放| 亚洲精品线路一在线观看| 亚洲精品亚洲人成人网| 国产成A人亚洲精V品无码| 亚洲an天堂an在线观看| 亚洲欧洲日本国产| 亚洲男人天堂2022| 另类小说亚洲色图| 国产亚洲福利精品一区| 亚洲三级电影网站| 国产亚洲精品无码成人| 婷婷亚洲综合五月天小说 |