Existe-t-il un moyen de transférer la collection mongo au format json? Soit sur le shell ou en utilisant un pilote Java. Je recherche celui qui offre les meilleures performances.
Mongo inclut un utilitaire mongoexport (voir docs) qui peut sauvegarder une collection. Cet utilitaire utilise la libmongoclient native et est probablement la méthode la plus rapide.
mongoexport -d -c
Aussi utile:
-o
: écrit la sortie dans le fichier, sinon la sortie standard est utilisée ( docs )
--jsonArray
: génère un document json valide, au lieu d’un object json par ligne ( docs )
--pretty
: --pretty
des json formatés ( docs )
Utilisez mongoexport / mongoimport pour sauvegarder / restaurer une collection:
Fichier JSON d’exportation :
mongoexport --db
Importer un fichier JSON :
mongoimport --db
AVERTISSEMENT
mongoimport
etmongoexport
ne conservent pas de manière fiable tous les types de données BSON riches, car JSON ne peut représenter qu’un sous-ensemble des types pris en charge par BSON. Par conséquent, les données exscopes ou imscopes avec ces outils peuvent perdre une certaine mesure de fidélité.
Aussi, http://bsonspec.org/
BSON est conçu pour être rapide à encoder et à décoder. Par exemple, les entiers sont stockés sous forme d’entiers de 32 (ou 64) bits, ils n’ont donc pas besoin d’être analysés pour et à partir du texte. Cela utilise plus d’espace que JSON pour les petits entiers, mais il est beaucoup plus rapide à parsingr.
Outre la compacité, BSON ajoute des types de données supplémentaires non disponibles dans JSON, notamment les types de données BinData et Date.
De la documentation Mongo:
L’utilitaire mongoexport prend une collection et l’exporte vers JSON ou CSV. Vous pouvez spécifier un filtre pour la requête ou une liste de champs à afficher
Lire plus ici: http://www.mongodb.org/display/DOCS/mongoexport
Voici la commande de la mine pour référence:
mongoexport --db AppDB --collection files --pretty --out output.json
Sur Windows 7 (MongoDB 3.4), il faut déplacer le cmd vers l’endroit où mongod.exe
fichier mongod.exe
et le fichier mongo.exe
=> C:\MongoDB\Server\3.4\bin
commande mongoexport
.
Si vous souhaitez vider toutes les collections, exécutez cette commande:
mongodump -d {DB_NAME} -o /tmp
Il va générer toutes les données de collections dans les extensions json
et bson
dans le /tmp/{DB_NAME}