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

Zaimplementuj autouzupełnianie w MongoDB

Zgodnie z sugestią @Thilo możesz użyć kilku pomysłów, w tym prefiksów.

Najważniejszą rzeczą jest bardzo szybkie żądanie (ponieważ chcesz, aby autouzupełnianie czuło nagły). Musisz więc użyć zapytania, które użyje odpowiednich indeksów.

Z regexp :użyj /^prefix/ (ważną rzeczą jest ^ do określenia początku linii, która jest obowiązkowa, aby zapytanie używało indeksu).

Zapytanie o zakres też jest dobre:​​{ $gt : 'jhc', $lt: 'jhd' } }

Bardziej skomplikowane, ale szybsze:możesz przechowywać drzewa przedrostkowe w mongo (aka try) z wpisami takimi jak:

 {usrPrefix : "anna", compl : ["annaconda", "annabelle", "annather"]}
 {usrPrefix : "ann", compl : ["anne", "annaconda", "annabelle", "annather"]}

To ostatnie rozwiązanie jest bardzo szybkie (oczywiście jeśli indeksy są na compl), ale w ogóle nie zajmuje miejsca. Znasz kompromis, który też musisz wybrać.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Różnica między Find i FindAsync

  2. Jak jest instalowany MongoDb przez Meteor?

  3. MongoDB findAndModify()

  4. Strumienie Mongo Change uruchamiane wiele razy (tak jakby):aplikacja Node działająca w wielu instancjach

  5. Kodek MongoDB BSON nie jest używany podczas kodowania obiektu