Паектный импорт json документов Apache CouchDb

У меня есть приблизительно 250 000 JSON-отформатированных файлов, каждый с одним объектом в нем (отформатировал, как CouchDB нравится он с _id). Что лучший способ состоит в том, чтобы импортировать их в мой удаленный сервер CouchDB как записи?

- Я нахожусь на машине Windows XP.

- У меня есть доступ в Интернет, но я не могу настроить couchDB сервер на своей локальной машине и иметь ее быть доступным WWW (ограничения брандмауэра.) так никакая легкая репликация.

14
задан Will Hartung 24 July 2010 в 00:42
поделиться

1 ответ

Я настоятельно рекомендую вам изучить API массовой документации на вики couchdb: http://wiki.apache.org/couchdb/HTTP_Bulk_Document_API

В основном , вы делаете POST-запрос к / someDatabase / _bulk_docs , который выглядит следующим образом:

{
  "docs": [
    { "_id": "awsdflasdfsadf", "foo": "bar" },
    { "_id": "cczsasdfwuhfas", "bwah": "there" },
    ...
  ]
}

Как и любой другой POST-запрос, если вы не включаете свойства _id, couchdb сгенерирует их для вас.

Вы можете использовать ту же операцию для обновления нескольких документов: просто добавьте их свойство _rev. А если вы хотите удалить какие-либо документы, которые вы обновляете, добавьте в документ свойство "_ deleted": true .

Если у вас есть файл json с вашими документами и вы используете curl, он может выглядеть так:

curl -H "Content-Type: application/json" --data-binary @/home/xxx/data.json https://usr:pwd@host:5984/someDatabase/_bulk_docs/

Ура.

18
ответ дан 1 December 2019 в 13:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: