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

Trong xây dựng hệ thống database lớn, bạn chọn giữa SQL và NoSQL như thế nào? Ưu/nhược từng loại?

Câu trả lời

Đặc điểm

SQL: Đây là hệ quản trị cơ sở dữ liệu quan hệ (RDBMS), lưu trữ dữ liệu trong bảng với hàng & cột rõ ràng. SQL đảm bảo tính toàn vẹn dữ liệu và tuân thủ ACID (Atomicity, Consistency, Isolation, Durability).

NoSQL: Gồm nhiều loại như document, key-value, column-family, graph... Phù hợp với dữ liệu phi cấu trúc, mật độ thay đổi cao và không yêu cầu chặt chẽ các ràng buộc dữ liệu ngay khi ghi.

So sánh

Ưu điểm của SQL:

  • Tính nhất quán: Tính toàn vẹn dữ liệu mạnh nhờ ACID.
  • Truy vấn phức tạp: SQL hỗ trợ tốt các truy vấn phức tạp, tích hợp sâu rộng với các công cụ phân tích.

Nhược điểm của SQL:

  • Khả năng mở rộng: Khó mở rộng ngang; thường cần giải pháp phần cứng mạnh hơn.
  • Cấu trúc cứng nhắc: Thích hợp...
middle

middle

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

senior

Trong tình huống database primary node chết, bạn xử lý failover như thế nào?

middle

Làm sao để phát hiện và xử lý truy vấn N+1 ở cấp hệ thống database?

senior

Khi làm việc với microservices, bạn tổ chức schema như thế nào? Shared schema, DB-per-service hay hybrid?

Bình luận

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

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