Transaction phân tán

DDIA Ch7 (mở rộng ra cluster) — ôn ACID & isolation từ single-node, anomaly & serializability, two-phase commit (2PC) và vì sao nó blocking + đắt, và khi nào nên tránh distributed transaction (saga/idempotency). Recall ACID/isolation ở SQL và happens-before ở Java.

6 bài · ~67 phútMiễn phí

Nội dung

Danh sách bài học

  1. 01

    Module 4 — Transaction phân tán: tổng quan

    Từ giao dịch trên một node tới nhiều node: anomaly & serializability, two-phase commit, và vì sao thường nên TRÁNH distributed transaction.

    ~10 phút
  2. 02

    Từ ACID single-node tới giao dịch phân tán

    Ôn ACID và isolation ở một node rồi hỏi: điều gì vỡ khi giao dịch trải trên nhiều node? Cầu nối từ khoá SQL sang bài toán phân tán.

    ~12 phút
  3. 03

    Anomaly & serializability — lost update, write skew, SSI

    Các anomaly khi nhiều giao dịch đồng thời: lost update, write skew, phantom; serializability là chuẩn vàng, và cách đạt nó (2PL, SSI) cùng cái giá.

    ~12 phút
  4. 04

    Two-phase commit (2PC) — và vì sao nó blocking, đắt

    2PC để atomic commit xuyên nhiều node: coordinator + prepare/commit hai pha. Vì sao coordinator chết giữa chừng làm participant treo (blocking), và giá phải trả.

    ~12 phút
  5. 05

    Khi nào tránh distributed transaction — saga & idempotency

    Vì 2PC đắt và mong manh, nhiều hệ tránh distributed transaction: saga (chuỗi giao dịch cục bộ + bước bù trừ), idempotency, outbox. Đánh đổi so với atomic thật.

    ~12 phút
  6. 06

    Module 4 — Tổng kết & cheat sheet

    Recap transaction phân tán: anomaly & serializability, 2PC (blocking, đắt), và khi nào tránh bằng saga/idempotency. Cheat sheet, glossary, self-assessment.

    ~9 phút