Linearizability versus Serializability

原文
Linearizability和Serializability是在數(shù)據(jù)庫和分布式系統(tǒng)中重要的兩個概念,而且比較容易混淆,這篇文章試著對兩個概念的不同進行簡單、簡短的解釋煞抬。

Linearizability: single-operation, single-object, real-time order

Linearizability:單操作,單對象真朗,實時順序此疹。
*Linearizability *是對單對象單操作的一種保證。它提供了對于同一個對象的一系列read/write操作都是按照實時時間(例如wall-clock))排序的遮婶。

Linearizability保證對于一個對象的寫操作蝗碎,一旦寫完成,需要立即馬上被后續(xù)的讀操作看到:即讀一定是讀到這個對象的最新的值旗扑。
Linearizability是“atomic consistency”的同義詞蹦骑,同時也是CAP種的C,“consistency”臀防。
并且Linearizability是可組合的眠菇,如果系統(tǒng)中每個對象的操作都是linearizable,則系統(tǒng)中所有操作是linearizable袱衷。

Serializability: multi-operation, multi-object, arbitrary total order

Serializability:多個操作捎废,多個對象,任意的順序

Serializability是對事務的一種保證致燥。Serializability保證了多個事務(每個都包含了一組對于不同對象的讀/寫操作)的執(zhí)行等同于一個順序執(zhí)行的效果登疗。

Serializability是ACID中的I。如果每個事務都保證了correctness(ACID中的C),則順序執(zhí)行的事務也保證了correctness辐益,因此serializability是保證事務正確的一個機制断傲。

Serializability和linearizability的不同是:Serializability沒有對事務的執(zhí)行順序強加任何real-time的約束,即不需要操作是按照真實時間嚴格排序的智政,只需要存在一個滿足條件的順序執(zhí)行順序即可认罩,不需要每個事務都是嚴格的先后時間順序。

Strict Serializability: Why don’t we have both?

嚴格的Serializability:我們?yōu)槭裁磧烧叨家?/p>

serializability + linearizability = strict serializability

我們假設開始并提交T1:寫item x续捂,然后稍后開始提交T2:讀x垦垂。數(shù)據(jù)庫如果按照strict serializability,則會將T1放到T2之前疾忍,T2會讀到x的最新值乔外,如果數(shù)據(jù)庫按照serializability床三,則可能會將T2放到T1之前一罩,

Coordination costs and real-world deployments

linearizability 或者 serializability在沒有協(xié)調的情況下都不可能達到,因此我們在異步網(wǎng)絡和可用性不能提供linearizability 或者 serializability的保證撇簿。

A note on terminology, and more reading

linearizability來源于分布式系統(tǒng)和并發(fā)編程聂渊,而serializability則來源于數(shù)據(jù)庫。如今這兩者都在分布式系統(tǒng)和數(shù)據(jù)庫中使用四瘫,也導致了術語上的沖突汉嗽。

一些參考
Introduction to Reliable and Secure Distributed Programming
CSC 2/458, 4-11 Feb. 2008

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市找蜜,隨后出現(xiàn)的幾起案子饼暑,更是在濱河造成了極大的恐慌,老刑警劉巖洗做,帶你破解...
    沈念sama閱讀 218,525評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件弓叛,死亡現(xiàn)場離奇詭異,居然都是意外死亡诚纸,警方通過查閱死者的電腦和手機撰筷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來畦徘,“玉大人毕籽,你說我怎么就攤上這事【荆” “怎么了关筒?”我有些...
    開封第一講書人閱讀 164,862評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長杯缺。 經常有香客問我蒸播,道長,這世上最難降的妖魔是什么夺谁? 我笑而不...
    開封第一講書人閱讀 58,728評論 1 294
  • 正文 為了忘掉前任廉赔,我火速辦了婚禮肉微,結果婚禮上,老公的妹妹穿的比我還像新娘蜡塌。我一直安慰自己碉纳,他們只是感情好,可當我...
    茶點故事閱讀 67,743評論 6 392
  • 文/花漫 我一把揭開白布馏艾。 她就那樣靜靜地躺著劳曹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪琅摩。 梳的紋絲不亂的頭發(fā)上铁孵,一...
    開封第一講書人閱讀 51,590評論 1 305
  • 那天,我揣著相機與錄音房资,去河邊找鬼蜕劝。 笑死,一個胖子當著我的面吹牛轰异,可吹牛的內容都是我干的岖沛。 我是一名探鬼主播,決...
    沈念sama閱讀 40,330評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼搭独,長吁一口氣:“原來是場噩夢啊……” “哼婴削!你這毒婦竟也來了?” 一聲冷哼從身側響起牙肝,我...
    開封第一講書人閱讀 39,244評論 0 276
  • 序言:老撾萬榮一對情侶失蹤唉俗,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后配椭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體虫溜,經...
    沈念sama閱讀 45,693評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,885評論 3 336
  • 正文 我和宋清朗相戀三年颂郎,在試婚紗的時候發(fā)現(xiàn)自己被綠了吼渡。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,001評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡乓序,死狀恐怖寺酪,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情替劈,我是刑警寧澤寄雀,帶...
    沈念sama閱讀 35,723評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站陨献,受9級特大地震影響盒犹,放射性物質發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,343評論 3 330
  • 文/蒙蒙 一急膀、第九天 我趴在偏房一處隱蔽的房頂上張望沮协。 院中可真熱鬧,春花似錦卓嫂、人聲如沸慷暂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,919評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽行瑞。三九已至,卻和暖如春餐禁,著一層夾襖步出監(jiān)牢的瞬間血久,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,042評論 1 270
  • 我被黑心中介騙來泰國打工帮非, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留氧吐,地道東北人。 一個月前我還...
    沈念sama閱讀 48,191評論 3 370
  • 正文 我出身青樓喜鼓,卻偏偏與公主長得像副砍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子庄岖,可洞房花燭夜當晚...
    茶點故事閱讀 44,955評論 2 355

推薦閱讀更多精彩內容