importer fichier json pour canapé db-
Si j'ai un fichier json qui ressemble à quelque chose comme ceci:
{"name":"bob","hi":"hello"}
{"name":"hello","hi":"bye"}
Est-il une option pour importer dans couchdb?
OriginalL'auteur | 2009-04-26
Vous devez vous connecter pour publier un commentaire.
À partir de @Moulin de réponse, mais avec plusieurs docs dans mon fichier j'ai utilisé
POST
est un alias delwp-request
maisPOST
ne semble pas fonctionner sur debian. Si vous utilisezlwp-request
vous devez définir la méthode avec-m
comme ci-dessus.La fuite
_bulk_docs
permet de multiples documents à télécharger à la fois.http://wiki.apache.org/couchdb/HTTP_Bulk_Document_API
{"docs": [documents]}
objet.OriginalL'auteur thelastshadow
Si vous êtes sous Linux, Vous pouvez écrire un petit script shell pour POSTER le contenu de json valide les fichiers de Canapé.
Pour tester canapé j'ai fait quelque chose comme ceci:
myFile.json est le json contenu que je voulais importer dans la base de données.
Une autre alternative, si vous n'aimez pas la ligne de commande ou n'utilisez pas Linux, et préfèrent une interface graphique, vous pouvez utiliser un outil comme RESTClient
OriginalL'auteur Millhouse
Oui, ce n'est pas JSON valide ...
À l'importation JSON Objets que j'utilise curl (http://curl.haxx.se):
où mon.json est un fichier au format JSON-Objet.
Bien sûr, vous pouvez mettre votre JSON-Objet directement dans couchdb (sans dossier):
Si vous n'avez pas de doc_id, vous pouvez demander à couchdb:
curl -X POST -d @data.json http://127.0.0.1:5984/database/_bulk_docs -H 'Content-Type: application/json'
Downvoted parce que je pense que la question se pose au sujet de plusieurs docs et pas seulement un. Je crois que vous répondez à comment faire pour importer un seul doc.
OriginalL'auteur user470370
Que l'objet JSON ne sera pas accepté par CouchDB. Pour stocker toutes les données avec un seul serveur de la demande d'utilisation:
Autrement, vous pouvez présenter une autre CouchDB demande pour chaque ligne.
Importer le fichier dans CouchDB à partir de la ligne de commande à l'aide de cURL:
OriginalL'auteur Matthew Flaschen
Ce n'est pas ma solution, mais j'ai trouvé ceci pour résoudre mon problème:
Un moyen simple de l'exportation de la base de données CouchDB à un fichier, à l'est par l'exécution de la commande Curl suivante dans la fenêtre du terminal:
Étape suivante consiste à modifier le fichier exporté fichier json à ressembler à quelque chose comme ci-dessous (note de l'_id):
Bits principal que vous devez regarder est l'ajout de documents dans les “docs” bloc de code. Une fois cela fait, vous pouvez exécuter la commande Curl suivante pour importer les données dans une base de données CouchDB:
Dupliquer une base de données
Si vous souhaitez dupliquer une base de données d'un serveur à un autre. Exécutez la commande suivante:
Original Post:
http://www.greenacorn-websolutions.com/couchdb/export-import-a-database-with-couchdb.php
OriginalL'auteur Dorian Puerta
Probablement un peu en retard pour répondre. Mais Si vous pouvez utiliser Python que vous pouvez utiliser le couchdb module pour le faire:
J'ai créé le script python pour le faire(Comme je ne pouvais pas en trouver un sur Internet).
Le script complet est ici: :
http://bitbucket.org/tdatta/tools/src/
(nom --> jsonDb_to_Couch.py)
Si vous téléchargez le repo et:
Texte de remplacer tous les "_id" dans des fichiers json "id"
Run load_dbs
Il serait de créer 4 bases de données dans votre canapé d'installation
Espoir qui aide les débutants (comme moi)
couch = couchdb.server(<your server url>)
manquant urlwith open(<your file name>)
fin de parenthèse au lieu de supportdb_entry = json.loads(row)
charges au lieu de chargerMerci Jared. Il fixe dans le post original.
OriginalL'auteur Tanmay
http://github.com/zaphar/db-couchdb-schema/tree/master
Ma DB::CouchDB::Schéma du module a un script pour aider au chargement d'une série de documents dans une Base de données CouchDB. L'couch_schema_tool.pl script accepte un fichier comme argument et charge tous les documents de ce fichier dans la base de données. Vient de mettre chaque document dans un tableau comme suit:
[
{"name":"bob","hi":"bonjour"},
{"name":"bonjour","hi":"bye"}
]
Il va les charger dans la base de données pour vous. Petit bémol, si je n'ai pas testé mon code plus tard, contre CouchDB dernière donc si vous l'utilisez et il se décompose alors laissez-moi savoir. Je dois changer quelque chose pour s'adapter à la nouvelle API modifications.
Jeremy
OriginalL'auteur Jeremy Wall