Việc tách các bộ sưu tập cung cấp cho bạn một chỉ mục miễn phí mà không có bất kỳ chi phí thực sự nào. Quét chỉ mục có chi phí cao, đặc biệt nếu chỉ mục không thực sự giúp bạn cắt giảm số lượng kết quả mà nó phải quét (nếu bạn có một triệu kết quả trong chỉ mục, nhưng bạn phải quét tất cả và kiểm tra chúng, nó sẽ không giúp bạn nhiều).
Tóm lại, tách chúng ra là một cách tối ưu hóa hợp lệ, nhưng bạn nên làm cho các chỉ mục của mình tốt hơn cho các truy vấn của mình trước khi bạn thực sự quyết định đi theo lộ trình đó, tôi coi đó là một biện pháp quyết liệt (một chỉ số về giá sản phẩm có thể giúp bạn nhiều hơn trong trường hợp này) .
Sử dụng giải thích () có thể giúp bạn hiểu cách hoạt động của các truy vấn. Một số điều cơ bản là:Bạn muốn tỷ lệ quét trên n thấp, lý tưởng là. Bạn không muốn scanAndOrder =true và thường là không muốn BasicCursor (điều này có nghĩa là bạn không sử dụng một chỉ mục nào cả).