MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Truy vấn tiền tố đơn giản Mongodb với regex và sắp xếp chậm

scanAndOrder: true trong đầu ra giải thích chỉ ra rằng truy vấn đang phải truy xuất các tài liệu và sau đó sắp xếp chúng trong bộ nhớ trước khi đầu ra được trả lại. Đây là một hoạt động tốn kém và sẽ có tác động đến hiệu suất của truy vấn của bạn.

Sự tồn tại của scanAndOrder: true cũng như sự khác biệt về nscanned một n trong đầu ra giải thích chỉ ra rằng truy vấn không sử dụng chỉ mục tối ưu. Trong trường hợp này, có vẻ như cần thực hiện quét bộ sưu tập. Bạn có thể giảm bớt vấn đề này bằng cách đưa các khóa chỉ mục vào sort của mình tiêu chuẩn. Từ thử nghiệm của tôi:

db.posts.find({hashtags: /^noticias/ }).limit(15).sort({hashtags:1, rank : -1}).explain()

Không yêu cầu quét và đặt hàng và trả về nnscanned số lượng bản ghi bạn đang tìm kiếm. Điều này cũng có nghĩa là sắp xếp theo hashtags , có thể hữu ích hoặc có thể không hữu ích cho bạn, nhưng sẽ tăng hiệu suất của truy vấn.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Làm cách nào để kết nối mongoDB với python?

  2. Kubernetes statefulset với âm lượng liên tục NFS

  3. Hợp nhất hai trường mảng trong mongoDB

  4. Làm cách nào để sử dụng $ hint trong truy vấn tổng hợp MongoDB?

  5. Mongoid không thành công trên ruby ​​1.9.3