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

Làm sao để chọn đúng loại index (B-Tree, Hash, GiST, GIN) tùy theo loại truy vấn?

Câu trả lời

Đặc điểm

B-Tree: Phù hợp cho các truy vấn cần sắp xếp thứ tự hoặc phạm vi, như SELECT * WHERE column BETWEEN value1 AND value2, vì nó duy trì thứ tự dữ liệu. Cũng hỗ trợ truy vấn chính xác.

Hash: Tối ưu cho tra cứu giá trị chính xác, như SELECT * WHERE column = value, không hỗ trợ sắp xếp thứ tự hay phạm vi.

GiST: Hỗ trợ các loại dữ liệu phức tạp hơn, thường dùng trong các truy vấn không gian hoặc đa chiều, như với dữ liệu geo-spatial.

GIN: Thích hợp cho các truy vấn tìm kiếm toàn văn bản, đặc biệt với các trường chứa nhiều từ, như SELECT * WHERE column @@ to_tsquery('term').

So sánh

**B-Tree vs Has...

middle

middle

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

middle

Trong kiến trúc hệ thống lớn, bạn phân biệt read replica và write replica như thế nào?

middle

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

senior

Bạn có từng thiết kế active-active database cluster chưa? Cách tránh conflict write?

Bình luận

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

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