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

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?

Câu trả lời

Isolation levels trong ACID

Isolation levels trong ACID xác định mức độ cách ly giữa các giao dịch để đảm bảo tính toàn vẹn dữ liệu. Có bốn mức: READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, SERIALIZABLE. Mỗi mức có các đặc điểm khác biệt về cách mà dữ liệu bị khóa hoặc không bị khóa trong quá trình thực hiện giao dịch, từ đó quyết định khả năng đọc các dữ liệu chưa được cam kết, mức độ phantom reads và các vấn đề khác.

Khi nào nên dùng READ COMMITTED vs SERIALIZABLE?

READ COMMITTED: Đây là mức cách ly tiêu chuẩn và thông dụng với nhiều hệ thống cơ sở dữ liệu bởi hiệu năng tốt hơn so với SERIALIZABLE. Dao dịch đọc chỉ thấy dữ liệu đã được cam kết, ngăn ngừa các dirty reads nhưng vẫn cho phép non-repeatable readsphantom reads xảy ra. Nên sử dụng READ COMMITTED khi ưu tiên hiệu năng hơn độ chín...

middle

middle

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

middle

Làm sao để thiết kế schema có khả năng mở rộng (scalable schema) trên hàng tỷ bản ghi?

senior

Bạn có từng triển khai row-level security chưa? Trường hợp áp dụng?

middle

Bạn hiểu gì về query plan cache? Làm sao để tận dụng nó?

Bình luận

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

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