http://ermouth.livejournal.com/ ([identity profile] ermouth.livejournal.com) wrote in [personal profile] ermouth 2015-01-10 08:45 pm (UTC)

Насчёт compact‘а – там немного сложнее всё устроено, но примерно картинка верная.

Тем не менее, важно понимать, что проблемы с компактом возникают тогда, когда система, работающая на CouchDB, неверно спроектирована и использует CouchDB вместо memcache или rdbms.

Например, нам надо считать хиты юзера по урлам.
А) Мы можем быть дураками и обновлять документ профиля юзера на каждый хит – и получить взрыв мусора.
Б) Мы можем писать новый док на каждый хит, а потом их коллэйтить и считать map/reduce’ом.

(План Б тоже не очень, потому что нагруженные логи лучше делать SQL-ной базой или редисом там.)

Ещё пример. Мы хотим хранить посты и комменты. Не зная про append-only кажется, что раз комменты обычно не смотрят отдельно от постов, разумно их дописывать прямо в документ поста из соображений целостности и скорости выборки. Это, конечно, иллюзия.

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting