Câu hỏi phỏng vấn Databases
Câu hỏi

Trong môi trường đa node, bạn đảm bảo atomicity thế nào khi có sự cố giữa chừng?

Câu trả lời

Trong môi trường đa node, đảm bảo tính atomicity khi có sự cố có thể được thực hiện bằng các chiến lược như Two-Phase Commit Protocol (2PC) hoặc Paxos Protocol.

Two-Phase Commit Protocol:

Là một giao thức phổ biến giúp đảm bảo tất cả các node tham gia vào một giao dịch đồng thuận commit hoặc rollback. Giai đoạn 1 (prepare phase): Node coordinator yêu cầu tất cả các node khác chuẩn bị (prepare) commit giao dịch và chờ phản hồi. Giai đoạn 2 (commit phase): Nếu tất cả các node sẵn sàng, coordinator sẽ yêu cầu commit, nếu bất kỳ node nào từ chối, toàn bộ giao dịch được rollback để đảm bảo tính nhất quán. Nhược điểm của 2PC là dễ gặp vấn đề với tình trạng đợi (blocking) khi coordinator gặp sự cố.

Paxos Protocol:

Đây là một thuật toán đồng t...

middle

middle

Gợi ý câu hỏi phỏng vấn

senior

Làm sao để kiểm soát quyền truy cập cho các nhóm user trên database quy mô lớn?

middle

Làm sao để đảm bảo idempotency cho các thao tác ghi dữ liệu nhiều lần?

senior

Làm sao để kiểm soát dữ liệu cũ, expired data khi lưu trữ trong nhiều năm?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào