Под этим тэгом я буду собирать мои наблюдения относительно сабжа.

Религиозных отличий не просто много, а очень много, поэтому я буду заострять внимание на том, что мне лично кажется очень важным.

В couchdb невозможно быстро сделать delete from ...

Если вдруг появляется такая задача, приходится писать скрипт, делающий это. В процессе написания скрипта действие будет много раз переосмыслено и, возможно, изменится в корне. Легкость delete from в mysql позволяет делать быстрые и ненужные поступки (/me в этом месте сыплет пепел на лысину).

В отлчии от mysql, в couchdb очень сложно делать неиндексированные выборки.

Как это выглядит? Любая выборка сложнее перечня документов с n по m требует написания view-функции. Если нужно, пишется reduce-функция. Причем движок не даст мне написать reduce-функцию, которая порождает слишком большой результат (отключабельно).

Дальше ты можешь дернуть эту view-шку и получит какие-то ряды. Дергать ты можешь только одним способом. Внутренних сортировок нету, join'ов нету, есть только группировка по ключу (да, разумеется, работает с сумасшедшей скоростью). Итог - очень быстрая выборка данных. Не важно, какой был исходный набор данных - 100 рядов или 100 миллионов.

Еще один неявный плюс. В процессе разработки с MySQL накапливается большое количество индексов. Часто они становятся ненужными до продакшен-стадии, часто нужных не хватает. Лишний индекс в большой таблице тормозит insert'ы. Недостающий - тормозит select'ы. Поиск недостающих предусмотрен движком базы. А вот поиск лишних - головная боль. В couchdb же лишние view-функции (т.е. лишние индексы) во-первых, не мешают ни выборкам, ни вставкам, во вторых, отсеиваются обычным grep'ом по исходникам. Красота!