TGViewer
дата инженеретта дата инженеретта @data_engineerette · 3.43K subscribers
Post #424 2.82K
Serializability vs Linearizability

Этим понедельничным деньком настало время разобраться между двумя очень похожими терминами🤓

💋Есть 2 счета с денюжками: A=30 и В=70, Тотал=100. Они не могут в тотале уйти в минус. Две параллельные транзакции пытаются снять по 100

Что происходит в несериализуемой, сериализуемой и линеаризуемой системах?

1️⃣Несериализуемая

1: снимает 100 с А
2: снимает 100 с В
Баланс: А=-70, В=-30, Тотал=-100
Возникла аномалия, мы нарушили правило банка

2️⃣Сериализуемая

1: снимает 100 с А и пытается закоммитить
2: снимает 100 с В и пытается закоммитить

БД сравнивает результат, как если бы они выполнялись последовательно. Если закоммитить сначала первую транзакцию, то состояние будет А=-70, В=70, Тотал=0. Вторая не может снять, потому что в тотале 0, она откатывается. Можем вместо первой закоммитить вторую, таймлайн не важен

3️⃣Линеаризуемая

1: снимает 100 с А, текущее состояние А=-70, В=70, Тотал=0
2: уже видит, что в тотале 0, и даже не пытается

А вот здесь уже важно, какая транзакция началась раньше

〰️〰️〰️

Надеюсь, вам стало чуточку понятнее)
  • 👍 16
More from @data_engineerette
  1. Sep 25, 2026Как прошла SmartData 2026? Я вот перечитываю свои впечатления от прошлого года и понимаю,…
  2. Sep 24, 2026Исследование data-people Тут ребята из DevCrowd запустили ежегодное исследование специалис…
  3. Sep 22, 20265 октября начнется 19-й поток программы Data Engineer от Newprolab Программа для junior- и…
  4. Sep 15, 2026Каким должен быть хороший DE? Меня однажды спросили на собесе: 🤩Какие 3 качества важны дл…
  5. Sep 12, 2026Mermaid-диаграммы Наконец-то дошли руки поковыряться в mermaid-диаграммах, это что за имба…
  6. Sep 2, 2026Iceberg — это внезапный бум или планомерная подготовка? Заметили, как с определенного моме…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →