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

PHP MongoDB - Użycie polecenia agregacji bez opcji kursora jest przestarzałe. Co?

Gdy wysyłasz zapytanie do MongoDB i oczekujesz wyników, otrzymasz tę zmienną o nazwie cursor , który jest po prostu wskaźnikiem do aktualnie przeczytanego dokumentu. Działa jak pasek przewijania w przeglądarce.

Możesz określić, ile dokumentów ma wczytać do bufora batchSize tak jak w przypadku wartości 1 .

Jest to przydatne, gdy wiesz, ile dokumentów chcesz przeczytać. Gdy potrzebujesz tylko 10 dokumentów, możesz zebrać je wszystkie w jednym pakiecie sieciowym przy użyciu batchSize => 10 . Gdy określisz batchSize => 5 , potrwa to dłużej, ponieważ do bazy danych potrzebne są dwa pakiety sieciowe, aby uzyskać oczekiwanych 10 dokumentów.

Jesteś bezpieczny, używając domyślnego batchSize .

Możesz spróbować iterować po kursorze za pomocą foreach jak w przykładzie w dokumentacji:http://php.net/manual/en /class.mongocommandcursor.php

Nie jestem pewien, czy dokumentacja php.net jest aktualna z najnowszą wersją sterownika MongoDB.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak zintegrować Pyramid 1.1 i Mongo DB - jak najmniej linii?

  2. Rozmiar dokumentu w MongoDb

  3. Złożoność czasowa $addToset vs $push, gdy element nie istnieje w tablicy

  4. MongoDB InvalidDocument:Nie można zakodować obiektu

  5. java.lang.NoSuchMethodError:com.mongodb.MongoClient.<init>(Ljava/util/List;Lcom/mongodb/MongoCredential;Lcom/mongodb/MongoClientOptions;)V]