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

Python + MongoDB - Itération du curseur trop lente

Votre installation de pymongo utilise-t-elle le Extensions C ?

>>> import pymongo
>>> pymongo.has_c()
True

J'ai passé la majeure partie de la semaine dernière à essayer de déboguer une requête de taille moyenne et le traitement correspondant qui a pris 20 secondes à s'exécuter. Une fois les extensions C installées, le même processus a pris environ une seconde.

Pour installer les extensions C dans Debian, installez les en-têtes de développement Python avant d'exécuter Easy Install. Dans mon cas, j'ai également dû supprimer l'ancienne version de pymongo. Notez que cela compilera un binaire à partir de C, vous avez donc besoin de tous les outils habituels. (CCG, etc.)

# on ubuntu with pip
$ sudo pip uninstall pymongo
$ sudo apt-get install python-dev build-essential
$ sudo pip install pymongo