Consistency model định nghĩa các đảm bảo về việc khi nào và như thế nào các cập nhật dữ liệu trở nên hiển thị xuyên suốt một distributed system — từ strong consistency (mọi người thấy dữ liệu mới nhất ngay lập tức) đến eventual consistency (cập nhật lan truyền theo thời gian). Lựa chọn này kéo theo trade-off với availability và performance.
Strong vs eventual consistency
STRONG CONSISTENCY → mọi lần đọc trả về bản ghi MỚI NHẤT (tất cả node đồng thuận ngay lập tức):
✓ dễ suy luận; dữ liệu luôn đúng/hiện thời
✗ đòi hỏi phối hợp → latency cao hơn, availability thấp hơn (đặc biệt trong lúc partition)
→ cho: dữ liệu phải đúng/hiện thời (số dư tài chính, tồn kho, đặt chỗ)
EVENTUAL CONSISTENCY → cập nhật lan truyền theo thời gian; đọc CÓ THỂ trả về dữ liệu cũ tạm thời,
nhưng tất cả node HỘI TỤ cuối cùng:
✓ availability cao, latency thấp, scalable
✗ đọc có thể cũ tạm thời (phải chịu đựng được điều này)
→ cho: dữ liệu mà độ cũ tạm thời chấp nhận được (social feed, like, lượt xem, cache)
