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

Khi bảng có hàng tỷ dòng, bạn tổ chức partitioning như thế nào? Range hay List?

Câu trả lời

Đặc điểm

Partitioning là kỹ thuật quan trọng trong quản lý cơ sở dữ liệu lớn, đặc biệt khi bảng có hàng tỷ dòng. Có hai phương pháp phổ biến: Range và List.

  • Range Partitioning: Phân chia dữ liệu dựa trên khoảng giá trị nhất định của một hoặc nhiều cột. Thích hợp cho dữ liệu có tính tuần tự hoặc liên tục, như ngày tháng hoặc ID tăng dần. Dễ dàng quản lý và cho phép tối ưu hóa truy vấn tốt hơn nếu thường xuyên sử dụng các điều kiện BETWEEN hoặc so sánh.

  • List Partitioning: Phân chia dữ liệu dựa trên giá trị riêng lẻ của cột, ví dụ như danh mục sản phẩm hoặc trạng thái đơn hàng. Thích hợp cho các tập dữ liệu rời rạc hoặc không liên quan lẫn nhau, đảm bảo việc lọc được thực hiện nhanh chóng với giá trị cụ thể.

So sánh

  • Phạm vi ứng dụng: Range p...
middle

middle

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

senior

Làm sao để kiểm soát dữ liệu cũ, expired data khi lưu trữ trong nhiều năm?

senior

Làm sao để làm hot standby mà không ảnh hưởng performance hệ thống chính?

middle

Trong distributed transaction, bạn áp dụng 2-phase commit như thế nào?

Bình luận

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

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