Я предпочитаю ответ Доминика, но для полноты вы также можете предварительно загрузить группу UUID из CouchDB и объединить их самостоятельно. Чтобы получить партию из пяти:
$ curl -i example.iriscouch.com/_uuids?count=5
HTTP/1.1 200 OK
Server: CouchDB/1.2.0 (Erlang OTP/R15B)
Pragma: no-cache
Expires: Fri, 01 Jan 1990 00:00:00 GMT
ETag: "86908CQ9GCBC01P6VF18YM2P4"
Date: Sun, 12 Feb 2012 02:03:23 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 187
Cache-Control: must-revalidate, no-cache
Connection: keep-alive
{"uuids":["da769daee5996412c8f598155c002885","da769daee5996412c8f598155c0034b4","da769daee5996412c8f598155c00406f","da769daee5996412c8f598155c004c18","da769daee5996412c8f598155c00501a"]}
Теперь вы можете создавать свои собственные идентификаторы. У вас впереди еще много работы, чтобы написать и поддерживать код для всего этого. Но преимущество заключается в том, что вам не нужна функция обновления, выполняющая функцию Javascript (и потенциально вызывающая процесс Javascript на сервере) для каждого обновления документа.
Лично я бы начал с техники Доминика и перешел бы к своей, только если / когда вы столкнетесь с проблемами с производительностью.