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

middle

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

senior

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

middle

Làm sao để duy trì tính toàn vẹn dữ liệu (data integrity) khi dữ liệu được sharded theo nhiều nút?

Bình luận

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

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