MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Sortowanie MongoDB jest bardzo powolne, nawet na polach indeksowanych

Powinieneś uruchomić explain w odpowiedzi na Twoje zapytanie, pomoże Ci to dowiedzieć się, co się dzieje.

Jest prawdopodobne, że Mongo nie używa indeksu zarówno do filtrowania, jak i sortowania. Gdy używasz $or , może używać wielu indeksów, aby dopasować opcje. Ale kiedy dodasz sort może sprawić, że nie będzie używał indeksów dostępnych do filtrowania.

Kiedy chcesz posortować według zapytania, musisz upewnić się, że posortowane pole znajduje się w indeksie, do którego chcesz trafić (ostatni lub nie może go użyć do sortowania).

Możesz też przyspieszyć, przekazując wskazówkę dotyczącą indeksu. Nie wiem, ile dokumentów pasuje do Twojego zapytania, ale jeśli jest to niewielka liczba i upewnisz się, że warunki początkowe trafiają do indeksu, sortuj według _id można zrobić szybko.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB — Utwórz kolekcję

  2. grupuje według miesiąca i roku za pomocą mongoose.js

  3. dziwny błąd mongodb i mangusta:not master and slave Ok =fałszywy błąd

  4. Odnalezienie pierwszych 20 dokumentów z kolekcji w mongodb

  5. W poleceniu mongodb group/map określ procentowy udział grupy w sumie