Массовое обновление Couch DB с использованием обработчиков - PullRequest
3 голосов
/ 31 октября 2010

Я использую CouchDB, и у меня возникла ситуация, когда существует множество документов, связанных с идентификаторами пользователей.Я хотел бы иметь возможность отправить один запрос для обновления определенного поля во всех этих документах.Например, когда приходит уведомление, я бы хотел, чтобы каждый пользовательский документ обновлялся вместе с ним, передавая список пользователей, к которым применяется уведомление, и сообщение с уведомлением.

Ответы [ 2 ]

8 голосов
/ 06 октября 2011

К сожалению, обработчики _update в CouchDB в настоящее время поддерживают только один документ одновременно, поэтому невозможно использовать обработчик _update для нескольких документов.Для этого вам необходимо создать небольшой «прокси» серверный скрипт, который будет принимать запрос и отправлять индивидуальные запросы обработчика _update по одному на документ.Не идеально, но пока не будет патча, позволяющего создавать обработчики массовых обновлений, это путь.

Я просил добавить обработчик _bulk_update (или аналогичный) в будущую версию CouchDB.... как бы мне понравилась эта функция.:) https://issues.apache.org/jira/browse/COUCHDB-1303

3 голосов
/ 01 ноября 2010

Я прочитал бы _changes (вероятно, применил фильтр ), а затем выполнил необходимые HTTP-запросы.

Имейте в виду, что вам нужно получить документ, прежде чем обновлять его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...