Tôi cố gắng để quyết định giữa hai thực hiện khác nhau và đang háo hức để lựa chọn tốt nhất :)Hiệu suất chi phí của việc thêm một lĩnh vực BLOB vào một bảng
tôi cần thêm một lĩnh vực BLOB tùy chọn vào một bảng mà hiện nay chỉ có 3 trường đơn giản. Người ta dự đoán rằng trường mới sẽ được sử dụng trong ít hơn 10%, thậm chí có thể ít hơn 5% số trường hợp, vì vậy nó sẽ là rỗng cho hầu hết các hàng - thực tế hầu hết khách hàng của chúng tôi sẽ không bao giờ có bất kỳ dữ liệu BLOB nào trong đó.
Độ nghiêng đầu tiên của đồng nghiệp là thêm một bảng mới để chỉ giữ các BLOB, với khóa ngoại (có thể đặt rỗng) trong bảng đầu tiên. Ông dự đoán điều này sẽ có lợi ích hiệu suất khi truy vấn bảng đầu tiên.
Suy nghĩ của tôi là hợp lý hơn và dễ dàng hơn để lưu trữ BLOB trực tiếp trong bảng gốc. Không có truy vấn nào của chúng tôi thực hiện SELECT *
từ bảng đó để trực giác của tôi lưu trữ trực tiếp sẽ không có chi phí hiệu năng đáng kể.
Tôi sẽ chuẩn bị cả hai lựa chọn nhưng tôi đã hy vọng một số chuyên gia SQL có bất kỳ lời khuyên nào từ kinh nghiệm.
Sử dụng MSSQL và Oracle.