精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

分布式系統事務原子性的非阻塞實現

云計算 分布式
作者將分布式系統中的事務定義為針對多個服務器的同時操作,本文主要討論了分布式系統事務的原子性的一種實現算法。

本文作者Peter Bailis是美國Berkeley的研究生,主要研究方向是分布式系統與數據庫。作者目前主要的研究內容是分布式數據的一致性,尤其是如何調和ACID特性和分布式一致性模型,以及如何在理論和實際中更好的理解最終一致性。

作者將分布式系統中的事務定義為針對多個服務器的同時操作,本文主要討論了分布式系統事務的原子性的一種實現算法。通常情況下原子性都是通過鎖實現的,這個算法并沒有使用鎖,原理很簡單,采用了簡單的多版本控制和存儲一些額外的元數據,雖然作者只是在實驗環境中實現了這個算法,并沒有投入到實際生產中,但是作者思考問題的方式值得參考。

分布式系統事務原子性

在現實的分布式系統中,多對象更新的操作很常見,但是實現起來卻并不簡單。同時更新兩個或多個對象時,對于這些對象的其他讀取者,原子性很重要:你的更新要么全部可見,要么全部不可見。

這里所說的原子性和線性一致并不是一個概念,數據一致性在Gilbert和Lynch證明CAP原理時被提到過,后來通常被稱為原子一致性。而線性一致化關注實時的順序操作,是一個單對象的問題。這里的“原子性”源于數據庫環境(ACID中的“A”),涉及對多個對象的執行和查詢操作。為了避免混淆,我們稱這個原子性為“事務原子性”。

許多場景中都會遇到這種問題,從社交網絡圖(例如Facebook的TAO系統,雙向的朋友關系被保存在兩個單向的指針中)到類似計數器(例如Twitter的Rainbird分層聚合器)和二級索引的分布式數據結構。本文中,我將假設我們的工作都是高可用的事務,原子性的多對象更新,或事務的原子性,是其首要特性。

現有的技術

多對象更新的事務操作通常采用以下三種策略之一:

使用鎖來同時更新多個項目。執行更新操作時加寫鎖,執行讀操作時加讀鎖,就可以保證事務的原子性。但是在分布式環境中,局部故障和網絡延遲都意味著鎖操作可能會導致Bad Time。

具體來講,鎖操作有可能會導致一些怪異的結果。如果客戶端在持有鎖時宕機,服務器本應該最終撤銷這個鎖。這需要某種形式的故障檢測或超時(在異步網絡中會導致一些尷尬的情況)以及在撤銷鎖前同時撤銷以前的操作。但是在執行更新操作時阻塞讀操作顯然是不合理的,反之亦然。如果我們追求高可用性,鎖不是一個值得考慮的方案。

實體組

將想要同時更新的對象放在一起。這種策略通常稱為“實體組”,可以讓事務性原子更簡單:在一臺機器上加鎖很快,而且不會遇到分布式鎖的局部故障和網絡延遲的問題。不幸的是,這種解決方案會影響數據布局和分布,而且不適用于難于分割的數據。

Fuck-it模式

使用“fuck-it”模式,不進行任何并發控制的情況下更新所有的對象,并保持事務的原子性。這個策略是很常見的:擴展性良好,適用于任何系統,但是直到系統達到穩定狀態后,才會提供原子性保證(例如聚合,或者說最終一致性)。

NBTA

在這篇文章中,作者會介紹一種簡單的替代方案,作者稱其為事務原子性的非阻塞實現,簡稱為NBTA(Non-blocking transactional atomicity),使用多版本和一些額外的元數據在不使用鎖的情況下,保證事務的原子性。具體來說,這種方案不會由于過程錯誤而阻塞讀取和寫入操作。關鍵的想法是避免執行局部更新,并且利用額外的元數據代替副本間的同步。

NBTA示例

可以用這個簡單的場景來說明NBTA:有兩個服務器,server for x上存儲x,server for y上存儲y,初值都是0。假設有兩個客戶端,Client1要執行寫入操作,使x=1,y=1,Client2要同時讀取x和y,關于副本的問題稍后會討論。作者將Client1要執行的寫入操作稱為一個事務,而這個事務的操作對象server for x和server for y被稱為事務兄弟。

 

 

good和pending

將每臺服務器的存儲分為兩中狀態:good和pending。要保證同屬于一個事務的寫入操作,如果其中一個操作被存儲為good狀態,這個事務的其它寫入操作要么被存儲為good,要么被存儲為pending。比如在上面所說的場景中,如果x=1在server for x上被存儲為good,那么必須保證y=1在server for y被存儲為good或pending。

 

 

首先,各服務器會收到到寫操作請求保存為pending狀態,然后一旦服務器知曉(可能是異步的)某個寫入操作相關的事務兄弟都已經將操作請求保存為pending狀態,這個服務器就會更新這個操作為good狀態。客戶端進行兩輪通信,就可以使服務器得到寫操作已經穩定的信息:第一輪通信中,server for x和server for y會將從Client1收到請求保存為pending狀態,并將確認回復給Client1,Client1收到確認后會進行第二輪通信,通知server for x和server for y寫操作已達到穩定狀態。

 

 

競爭危害和指針

理想的狀態是,只讀取good狀態的數據,就可以保證事務的原子性。但是存在一種競爭條件的情況:比如server for x已經更新x=1,并保存為good狀態,但在其事務兄弟server for y中相關操作y=1依舊是pending狀態,Client2如果只讀取good狀態的數據,得到的結果將是x=1,y=0,破壞了事務的原子性。我們希望這種情況下,第二個服務器能夠自動調用pending狀態的數據以供讀取。

 

 

為了解決這個問題,可以在每個寫入操作中加入一些額外的信息:事務兄弟的列表以及一個時間戳。這個時間戳是客戶端進行多值更新前,為每個寫操作唯一生成的,比如,可以是客戶端ID+本地時間或一個隨機數。這樣的話,當一個客戶端讀取good狀態的數據時,還會讀到時間戳和具有相同時間戳的事務兄弟的列表??蛻舳艘矔诎l送讀取請求附帶一個時間戳,服務器會根據時間戳從pending或good中取出數據交付給客戶端。如果客戶端的請求中沒有附帶時間戳,服務器會將good中時間戳最高的值交付給客戶端。

 

 

優化

以下是NBTA算法的一些優化:

pending和good的規模

如果用在good中只保存最近的寫入操作,那么一個寫入操作的兄弟事務可能會被覆蓋,為了避免這種情況的發生,服務器會在good中將歷史數據保留一定的時間。

更快的寫操作

有一種方案可以替代客戶端的第二輪通信操作。服務器一旦將寫操作存入pending中,就直接互相通信,可使用類似于PAXOS的算法實現。此外,客戶端也可以異步發起第二輪通信。然而,為了確??蛻舳嗽谶@些情況下讀取寫操作,它們要保留元數據直到每個寫操作都被存為good狀態。

副本

目前為止的討論都基于每個數據項只存儲在一個服務器上。算法實現的前提條件是每個服務器的強一致性。服務器間的副本有兩種情況:如果所有的客戶端都只能訪問一部分服務器,那么客戶端只需要對這些對應的服務器集合進行更新,這組服務器都存有數據的副本。如果客戶端可以訪問任何服務器,那么需要花費較長的時間去同步數據。

讀/寫事務

以上討論的算法同樣適用于讀/寫操作。對于ANSI標準的可重復讀模型,主要的問題是保證從一個事務的原子組中讀取??梢栽谑聞請绦星?,事先聲明所有的讀取操作或者通過類似向量時間的元數據實現。

元數據的規模

最謹慎的做法是將元數據一直保存,但是也可以在寫操作在所有服務器中都達到good狀態時,將元數據刪除。

算法的實現

作者采用LevelDB數據庫實現了NBTA算法及其改進。在Yahoo!的云平臺上,8個操作的NBTA事務可以達到最終一致性的33%(所有都是寫操作)至95.2%(所有都是讀操作)峰值吞吐量。并且這種實現是線性擴展的,運行50個EC2實例,對于長度為8的事務(50%的讀操作,50%的寫操作),可以達到每秒執行250000次操作。

實驗結果表明NBTA的性能大大優于基于鎖的操作,因為不會發生阻塞。主要的花銷來自于元數據以及將寫入操作從pending更新為good?;谶@些結果,作者已經開始將NBTA應用于其它數據存儲和二級索引上。

結論

這篇文章展現了如何在不使用鎖的情況下,實現在任意數據分片的原子性多對象更新。數據庫中有很多類似于NBTA的算法。例如客戶端第二輪通信的優化是通過PAXOS的算法實現的,使用額外的元數據保持并發更新類似于B樹或其它非鎖的數據結構。當然,多版本并發控制和基于時間戳的并發控制在數據庫系統中也都有悠久的歷史。但是NBTA的關鍵是實現事務的原子性,同時避免中央集權的時間戳或并發控制機制。具體來說要在數據讀取操作前達到一個穩定狀態,主要的挑戰是解決競爭條件。在實際中,相比其它基于鎖的技術,這個算法表現得很好。

責任編輯:王程程 來源: http://www.bailis.org/
相關推薦

2025-06-10 08:02:15

2022-06-27 08:21:05

Seata分布式事務微服務

2025-06-11 08:01:06

2022-06-21 08:27:22

Seata分布式事務

2017-07-26 15:08:05

大數據分布式事務

2014-01-22 13:37:53

2021-06-03 14:00:35

PolarDB

2020-03-31 08:05:23

分布式開發技術

2021-06-02 16:30:33

PolarDB原子性數據庫

2025-06-09 08:00:37

分布式文件系統

2019-10-10 09:16:34

Zookeeper架構分布式

2023-01-06 09:19:12

Seata分布式事務

2021-12-09 10:45:19

分布式事務框架

2023-05-12 08:23:03

分布式系統網絡

2009-06-19 15:28:31

JDBC分布式事務

2024-01-31 09:54:51

Redis分布式

2021-09-29 09:07:37

分布式架構系統

2009-09-18 15:10:13

分布式事務LINQ TO SQL

2023-01-05 12:30:32

Redis

2021-01-13 11:23:59

分布式冪等性支付
點贊
收藏

51CTO技術棧公眾號

亚洲精品手机在线观看| 国产精品亚洲网站| 亚洲第一成人网站| 91麻豆精品一二三区在线| 午夜久久久久久电影| 视频一区二区三区在线观看| 国产黄色片av| 日韩中文字幕区一区有砖一区 | 五月天丁香社区| 成人在线视频播放| 亚洲a一区二区| 一区二区在线观| 视频在线观看你懂的| 精品无人区卡一卡二卡三乱码免费卡| 97精品国产97久久久久久免费| 制服丨自拍丨欧美丨动漫丨| 日韩激情网站| 精品黑人一区二区三区久久| 手机在线成人免费视频| 伊人久久国产| 婷婷一区二区三区| 日韩精品一区二区在线视频| 欧美三级电影一区二区三区| 国产午夜久久久久| 韩国一区二区三区美女美女秀| 国产麻豆一精品一男同| 奇米精品一区二区三区在线观看一| 韩剧1988免费观看全集| 九九热国产精品视频| 婷婷亚洲综合| 一区二区三区四区视频| 最新中文字幕视频| 日韩av黄色在线| 精品少妇一区二区三区在线视频| theporn国产精品| av成人免费| 在线看国产一区二区| 欧美女人性生活视频| 国产白浆在线免费观看| 亚洲国产精品麻豆| 国产女主播自拍| 欧美1—12sexvideos| 亚洲尤物在线视频观看| 成年在线观看视频| sm国产在线调教视频| 国产精品三级av| 亚洲电影一二三区| 亚洲成a人v欧美综合天堂麻豆| 欧美经典一区二区三区| 日韩中文一区二区三区| 国产高清在线| 中文字幕av一区 二区| 亚洲不卡一卡2卡三卡4卡5卡精品| 免费的黄色av| 99久久久久久| 秋霞毛片久久久久久久久| 免费a在线观看| 97人妻精品一区二区三区免费| 亚洲狼人综合网| 国产91丝袜在线18| 国产高清自拍99| 日韩中文字幕免费观看| 99久久综合国产精品| 久久久久天天天天| 国产福利片在线| 国产精品无人区| 色中文字幕在线观看| 亚洲综合影视| 天天av天天翘天天综合网| 日本网站免费在线观看| 日韩av大片站长工具| 欧美午夜不卡视频| 国产男女无遮挡猛进猛出| 岛国成人av| 一本色道久久88精品综合| 91精品一区二区三区蜜桃| 久久久久久久久久久9不雅视频| 色妞欧美日韩在线| 男人操女人的视频网站| 在线观看不卡| 国产不卡视频在线| 国产又色又爽又黄又免费| 国产精品自产自拍| 99在线精品视频在线观看| 国产一区二区三区日韩欧美| 三上悠亚在线观看视频| 精品电影一区| 国产精品69久久| 精品人妻一区二区三区麻豆91| 亚洲天堂导航| 视频一区二区欧美| 国产美女精品免费电影| av免费观看网址| 久久久成人av毛片免费观看| 色婷婷综合久久久久中文| 色综合色综合色综合色综合| 在线一区二区三区视频| 亚洲欧美在线一区| 精品欧美一区二区久久久久| 久久精品二区三区| 成人在线看片| 日本三级在线播放完整版| 性做久久久久久免费观看| jizz大全欧美jizzcom| 欧美精品中文字幕亚洲专区| 国产成人精品免费视频网站| 99在线观看视频网站| 蜜桃免费在线| 国产成人黄色| 国产欧美一区二区三区在线老狼| 欧美狂野激情性xxxx在线观| 国产精品xxx| 精品亚洲一区二区三区在线观看| 91麻豆精品成人一区二区| 美女诱惑一区| 国产综合动作在线观看| av免费在线免费观看| 欧美性生活久久| 99久久久久久久久久| 欧美日韩一区自拍| 91九色国产视频| 95在线视频| 色婷婷国产精品久久包臀| youjizz.com日本| 亚洲乱码精品| 91精品久久久久久久久久久久久| 国产黄在线看| 在线视频中文字幕一区二区| 六十路息与子猛烈交尾| 伊人精品在线| 国产高清精品一区二区| 18av在线视频| 日韩女优毛片在线| 2021亚洲天堂| 国产成人aaa| youjizz.com在线观看| 日韩中文字幕视频网| 欧美成人自拍视频| 国产999久久久| 亚洲欧美一区二区三区国产精品| 日韩高清第一页| 欧美顶级大胆免费视频| 国产精品一区久久久| 国产尤物视频在线| 欧美日韩中文精品| 国产主播av在线| 美腿丝袜亚洲综合| 宅男一区二区三区| 视频在线亚洲| 韩国欧美亚洲国产| 全色精品综合影院| 欧美在线一区二区三区| 亚洲天堂av中文字幕| 久久99精品国产麻豆不卡| 成年人免费观看的视频| www.久久99| 一区二区三区四区视频精品免费| 91中文字幕一区| 国产在线观看a| 91精品国产aⅴ一区二区| av激情在线观看| 国产成人精品免费在线| 国产精品成人久久电影| 全球av集中精品导航福利| 日本aⅴ大伊香蕉精品视频| 国产有码在线| 51精品国自产在线| 久久在线视频精品| 99国产麻豆精品| 黄色av免费在线播放| 欧美aaaa视频| 俄罗斯精品一区二区| 国产精品25p| 国产亚洲美女精品久久久| 91福利免费视频| 亚洲高清免费在线| 亚洲精品国产精品国自产网站| 久久99国产精品久久| 成年人网站国产| 国产探花一区在线观看| 91久久精品久久国产性色也91| gogo高清午夜人体在线| 一区二区三区www| 精品人妻无码一区二区| 欧美日韩国产色视频| 国产美女网站视频| 99久久亚洲一区二区三区青草| 中文字幕在线观看第三页| 欧美日韩日本国产亚洲在线| 美日韩精品免费| 欧美另类中文字幕| 日韩美女中文字幕| 美足av综合网| 色婷婷久久一区二区| 人妻少妇一区二区三区| 欧美日韩一区视频| 日韩欧美激情视频| 亚洲丝袜另类动漫二区| 人妻少妇精品视频一区二区三区| 久久99精品久久只有精品| 69堂免费视频| 好吊一区二区三区| 亚洲乱码一区二区三区| 亚洲自拍电影| 国产欧美日韩一区| 动漫一区二区三区| 国产z一区二区三区| www555久久| 久久偷看各类女兵18女厕嘘嘘| 欧美成人片在线| 亚洲第一视频网站| 国产极品999| 欧美精品xxxxbbbb| 亚洲大尺度在线观看| 午夜精品福利视频网站| 久久综合成人网| 亚洲蜜臀av乱码久久精品| 手机看片国产日韩| 久久久久久久久久久黄色| 男男一级淫片免费播放| 国产一区在线观看麻豆| 色片在线免费观看| 丝袜诱惑亚洲看片| 少妇高潮喷水久久久久久久久久| 极品尤物久久久av免费看| a级黄色片网站| 欧美丰满日韩| 亚洲日本精品国产第一区| 精品久久久久久久| 欧美专区一二三| 自拍偷拍一区| 欧美黑人3p| 九一亚洲精品| 日韩欧美视频第二区| 国产在视频线精品视频www666| 九九九九九九精品| 日韩在线你懂的| 久久亚洲高清| 亚洲自拍都市欧美小说| 欧美精品人人做人人爱视频| 神马午夜久久| 欧美日韩一区在线视频| 国产精品嫩草影院在线看| 日韩免费av一区二区三区| 国产伦精品一区二区三区千人斩| 欧美日本国产精品| 久久99视频| 亚洲欧洲精品一区| 欧美一区不卡| 日本免费a视频| 一本一道久久综合狠狠老精东影业| 国模无码视频一区二区三区| 鲁大师影院一区二区三区| 哪个网站能看毛片| 日韩电影一区二区三区| 污网站免费在线| 国内精品视频666| 9.1在线观看免费| 91欧美一区二区| 黑人と日本人の交わりビデオ| 亚洲免费视频成人| 国产第一页在线播放| 欧美特级www| 中文字幕观看在线| 日韩一区二区三区免费看| 色哟哟国产精品色哟哟| 亚洲美女av电影| 精品国产丝袜高跟鞋| 久久久人成影片一区二区三区| 在线成人av观看| 国产在线精品播放| 成人av综合网| 婷婷五月色综合| 欧美日韩国内| 欧美一级片免费看| 波多野在线播放| 国产欧美一区二区在线观看| 天堂а√在线中文在线鲁大师| 亚洲精品视频一区二区| 国产性xxxx高清| 欧美日本精品一区二区三区| 午夜老司机福利| 亚洲区一区二区| 在线看三级电影| 日韩av色综合| 精品一区二区三区亚洲| 欧美激情视频一区二区三区| 久久精品青草| 91淫黄看大片| 成人h动漫精品一区二| 黄色av免费播放| 亚洲国产成人av好男人在线观看| 日韩不卡高清视频| 精品福利一二区| 日本中文字幕在线播放| 欧美一级在线播放| 欧美日本三级| 午夜精品一区二区三区在线观看 | 亚洲国产美女视频| 欧美性xxxx极品高清hd直播| av网站免费大全| 中文字幕欧美亚洲| 涩涩网在线视频| 成人三级在线| 亚洲成av人电影| 久久久久久久久久久久91| 99国产精品久久久久久久久久| 欧美另类videoxo高潮| 欧美这里有精品| 日本大臀精品| 久久免费视频在线观看| www.成人在线.com| 亚洲一区二区三区涩| 噜噜噜久久亚洲精品国产品小说| 性高潮久久久久久| 日韩毛片精品高清免费| 免费又黄又爽又猛大片午夜| 亚洲国产精品成人va在线观看| 在线看三级电影| 92看片淫黄大片看国产片| 欧洲乱码伦视频免费| 人妻熟女一二三区夜夜爱| av成人老司机| 在线看成人av| 精品国产乱码久久久久久免费| av片在线观看永久免费| 成人午夜黄色影院| 全球成人免费直播| 邪恶网站在线观看| 欧美国产成人精品| 伊人久久中文字幕| 一区三区二区视频| 久久天堂av| 色综合久久88色综合天天提莫| 久久精品麻豆| 69视频在线观看免费| 色88888久久久久久影院按摩| 视频在线观看你懂的| 欧美中文在线字幕| 国产精品免费99久久久| 99免费视频观看| 国产精品视频yy9299一区| 中文字幕人妻精品一区| 最近2019年中文视频免费在线观看| 99只有精品| 中国黄色录像片| 国产iv一区二区三区| 日本亚洲欧美在线| 亚洲精品美女久久| 偷拍视频一区二区三区| 日韩在线国产| 狠狠色丁香久久婷婷综合_中| 全网免费在线播放视频入口| 精品少妇一区二区三区免费观看| 久草在线视频资源| 久久综合色一本| 日韩高清一区二区| 女同久久另类69精品国产| 日韩一区二区三区视频| h片在线观看下载| 欧美三日本三级少妇三99| 毛片av一区二区| 欧美日韩在线观看成人| 日韩av中文字幕在线免费观看 | 在线高清一区| 精品少妇人妻一区二区黑料社区 | 亚洲日本韩国一区| 蜜桃久久一区二区三区| 热re91久久精品国99热蜜臀| 日韩黄色大片| 亚洲av综合色区无码另类小说| 午夜精品福利一区二区三区av| 可以在线观看的av| 91欧美激情另类亚洲| 亚洲精选国产| 国产123在线| 国产视频一区在线观看| 国产人妻精品一区二区三区不卡| 日韩欧美一级精品久久| 久草免费在线视频| 亚洲一区二区在线观| 国产91丝袜在线观看| 91黑人精品一区二区三区| 欧美成年人视频网站| 亚洲va久久| 日韩av加勒比| 色婷婷综合久久久中文一区二区 | 99国产精品久久久久久久久久久 | 亚洲成人免费网站| 97精品国产综合久久久动漫日韩 | 日本精品福利视频| 久久久一区二区| 亚洲第一精品网站| 国产欧美韩国高清| 国产精品久久777777毛茸茸| 性欧美疯狂猛交69hd| 亚洲欧洲免费视频| a看欧美黄色女同性恋| 国产成人美女视频| 色94色欧美sute亚洲线路二|