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

Trong distributed transaction, bạn áp dụng 2-phase commit như thế nào?

Câu trả lời

markdown Copy
Trong distributed transaction, **2-phase commit (2PC)** được áp dụng để đảm bảo tính toàn vẹn dữ liệu qua các hệ thống khác nhau bằng cách quản lý các giao dịch theo hai pha: **Pha chuẩn bị (Prepare Phase)** và **Pha cam kết (Commit Phase)**.

- **Pha chuẩn bị (Prepare Phase)** bắt đầu với việc Coordinator yêu cầu tất cả các participants chuẩn bị để commit. Mỗi participant sẽ trả lời `YES` nếu nó có thể commit hoặc `NO` nếu không thể. Coordinator chỉ tiến hành pha tiếp theo nếu tất cả các participants trả lời `YES`.

- **Pha cam kết (Commit Phase)** diễn ra nếu tất cả participants đồng ý commit. Coordinator gửi lệnh co...
middle

middle

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

middle

Bạn giải thích thế nào về isolation level trong ACID? Khi nào nên dùng READ COMMITTED vs SERIALIZABLE?

middle

Khi truy vấn bị chậm, bạn dùng EXPLAIN ANALYZE như thế nào để tối ưu?

senior

Bạn sử dụng công cụ gì để benchmark và stress test database (ex: sysbench, pgbench)?

Bình luận

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

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