MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Impossible d'obtenir allowDiskUse:True pour fonctionner avec pymongo

Donc, dans l'ordre :

  • aggregate est une méthode. Il prend 2 arguments positionnels (self , qui est passé implicitement, et pipeline ) et n'importe quel nombre de mot clé arguments (qui doivent être passés sous la forme foo=bar -- s'il n'y a pas de = signe, ce n'est pas un argument de mot-clé). Cela signifie que vous devez appeler result = work1.aggregate(pipe, allowDiskUse=True) .

  • Votre erreur sur la taille maximale du document est inhérente à Mongo. Mongo ne peut jamais renvoyer un document (ou un tableau de celui-ci) supérieur à 16 mégaoctets. Je ne peux pas vous dire pourquoi parce que vous ne nous avez donné ni vos données ni votre code, mais cela signifie probablement que le document que vous construisez comme résultat final est trop volumineux. Essayez de diminuer la $limit paramètre, peut-être ? Commencez par le régler sur 1, exécutez un test, puis augmentez-le et regardez l'ampleur du résultat lorsque vous faites cela.