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

Tại sao nhiều index có thể làm chậm INSERT/UPDATE/DELETE? Cách khắc phục?

senior

Làm sao để phát hiện sớm bottleneck hoặc lock contention trong hệ thống?

senior

Những chỉ số (metrics) nào bạn cần monitor để đánh giá hiệu năng database?

Bình luận

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

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