С автоматически созданными идентификаторами практически невозможно работать, если у вас есть два или более отдельных экземпляров вашего приложения. Потому что синхронизация между разными экземплярами не мгновенная. Решением для этого может быть выделение одного сервера для генерации (или проверки доступности) идентификаторов, например, с использованием базы данных SQL и в качестве шлюза для создания документа.
С другой стороны, если у вас есть только один сервер и вам никогда не понадобится больше, есть одно преимущество, которое я нахожу интересным для сгенерированных пользователем uid: так как они должны быть уникальными, вы можете использовать их в URL. Например, возьмите заголовок сообщения в блоге как _id
.
С точки зрения производительности, сгенерированные идентификаторы CouchDB довольно длинные, поэтому, если ваши собственные идентификаторы короче, вы сэкономите значительное дисковое пространство (при условии, что у вас есть много документов).