Latest web development tutorials

MongoDB obejmujące kwerendy indeksu

Oficjalna MongoDB opis dokumentu, obejmujące następujące zapytanie to zapytanie:

  • Wszystkie pola kwerendy są częścią indeksu
  • Wszystkie pola w samej kwerendzie zwraca indeks

Ponieważ wszystkie pojawią się w polu zapytania jest częścią indeksu plików danych MongoDB, bez konieczności pobierania całych warunki zapytania mecz i powrót wyników zapytania przy użyciu tego samego indeksu.

Ponieważ indeks rezydują w pamięci RAM, dostęp do danych, niż czytać dane dużo szybciej dzięki skanowaniu dokumentów z indeksu.


Za pomocą kwerendy indeksu pokrycie

Aby przetestować kwerendę indeksu cap, należy użyć następującego zestawu użytkowników:

{
   "_id": ObjectId("53402597d852426020000002"),
   "contact": "987654321",
   "dob": "01-01-1991",
   "gender": "M",
   "name": "Tom Benzamin",
   "user_name": "tombenzamin"
}

Tworzymy wspólny zbiór użytkowników Index, płeć pola i nazwa_użytkownika:

>db.users.ensureIndex({gender:1,user_name:1})

Teraz indeks obejmie następujące zapytanie:

>db.users.find({gender:"M"},{user_name:1,_id:0})

Oznacza to, że na powyższe zapytania, MongoDB nie zamierza złożyć wniosek o bazie danych. Zamiast wyodrębnia dane z indeksu, który jest bardzo szybki kwerendy danych.

Ponieważ nasz indeks nie zawiera pola _id, _id będą zwracane domyślnie w kwerendzie, możemy skupić się wykluczyć go MongoDB wyników zapytania.

Poniższe przykłady nie są wykluczone _id, zapytanie nie będzie obejmował:

>db.users.find({gender:"M"},{user_name:1})

Wreszcie, jeśli następującej kwerendy, kwerenda nie może wykorzystywać pokrycia indeksu:

  • Wszystkie pola indeksu jest tablicą
  • Wszystkie pola subindeks jest dokumentem