Có rất nhiều chi phí trong việc loại trừ gần như tất cả dữ liệu trong tài liệu khi truy vấn cơ sở dữ liệu mongo không?Dự đoán MongoDB hiệu quả như thế nào?
Ví dụ, trong trường hợp tôi chỉ muốn field1 và field2, đối với một bộ sưu tập với một cấu trúc tài liệu của:
{
"field1" : 1
"field2" : true
"field3" : ["big","array",...]
"field4" : ["another","big","array",...]
}
tôi sẽ được hưởng lợi nhiều hơn từ:
- Tạo bộ sưu tập riêng biệt bên cạnh bộ sưu tập này chứa trường duy nhất1 và trường2 hoặc
- Sử dụng .f ind() trên các chứng từ ban đầu với bao gồm/loại trừ thông số
Lưu ý: không hiệu quả tiết kiệm cùng một dữ liệu hai lần không phải là một mối quan tâm đối với tôi càng nhiều càng hiệu quả của truy vấn dữ liệu
Rất cám ơn !
các tài liệu này lớn đến mức nào? –
@AsyaKamsky Khoảng 0,3MB mỗi trường và field1 và field2 kết hợp <1kB. Kích thước tài liệu có hiệu lực không? – Ash
nó tạo sự khác biệt về số lượng tài liệu RAM mất từ khi bạn truy vấn tài liệu, toàn bộ tài liệu có thể kết thúc trong RAM ngay cả khi bạn chỉ muốn một số trường cụ thể. Hai trường bạn muốn luôn là hai trường đầu tiên? –