Difference between Linearizability and Serializability
原文:http://stackoverflow.com/questions/8200015/what-is-the-difference-between-serializability-and-linearizability
It was hard to find information about this subject. However, At some point I found a statement that explained it clearly:
- Linearizability gives isolation at the level of operations, while Serializability gives isolation at the level of transactions.
As an example:
Here, A, B and C are three different transactions running at the same time. r(varname) means that the current transaction is accessing the value inside varname, and w(varname) means that the current transaction is writing a certain value in varname.
Now, to create a linearized history of these events, we have to make sure that no two operations are happening at the same time. An operation that has started while another operation already started should appear behind the first operation.
In this case:
Log1: A.r(x), B.r(X), B.r(Y), A.w(X), C.r(Y)
To create a Serialized history of these events, one has to separate all the operations of the transactions A, B and C so there are no interleaved operations from other transactions.
From our example this could result in:
Log2: A.r(x), A.w(x), B.r(X), B.r(Y), C.r(Y)
參考鏈接:http://en.wikipedia.org/wiki/Serializability
總結
以上是生活随笔為你收集整理的Difference between Linearizability and Serializability的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我72岁,驾驶执照7月到期,要续期要怎么
- 下一篇: 东京高田马场附近的大型超市有哪些?