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

MongoDB MapReduce:nie działa zgodnie z oczekiwaniami dla ponad 1000 rekordów

Kształt obiektu, który emit z Twojej map funkcja musi być taka sama jak obiekt zwrócony z twojego reduce funkcja, jako wynik reduce można wrócić do reduce podczas przetwarzania dużej liczby dokumentów (jak w tym przypadku).

Musisz więc zmienić swój emit aby emitować dokumenty w ten sposób:

{userid:<xyz>, {events:[{adduser: 1}], allEventCount:1}}
{userid:<xyz>, {events:[{login: 1}], allEventCount:1}}

a następnie zaktualizuj swój reduce działać odpowiednio.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Znajdź dokumenty z tablicami, które zawierają dokument z określonym polem

  2. Powody za i przeciw przejściu z serwera SQL do MongoDB

  3. Różnica między MongoFactoryBean a SimpleMongoDbFactory

  4. Lista atrybutów dynamicznych w modelu Mongoid

  5. MongoDB:Jak używać jednego schematu jako dokumentu podrzędnego dla różnych kolekcji zdefiniowanych w różnych plikach