Да, долговечность - большая проблема в монго. Вы должны использовать наборы репликации в mongodb для долговечности (вам нужно как минимум 2 машины), в противном случае вы можете потерять до последней 1 минуты, например, при сбое питания. В Монго нет долговечности одного сервера, но, как я знаю, он будет разработан для 1.7-1.8. После сбоя вы должны восстановить базу данных вручную, и операция восстановления может занять часы, если ваши данные велики. Там нет транзакции или кислоты, поэтому он не подходит для электронной коммерции или банковского приложения.
Вы не должны использовать версии разработки mongo (нечетные номера версий, такие как 1.3.x, 1.5.x, 1.7.x - версии для разработчиков), и вы предпочитаете использовать 64-битные операционные системы. Если вы покопаетесь в статьях о стихийных бедствиях в Интернете о монго, источником проблемы в большинстве случаев являются эти два.
CouchDB, Cassandra и postgresql обладают высокой стойкостью (fsync по умолчанию составляет 10 миллисекунд в cassandra и postgresql), поэтому все они имеют стойкость на одном сервере.
Если вам нужна невероятно легкая масштабируемость, отказоустойчивость и балансировка нагрузки; Кассандра самая лучшая, но с плохими вариантами запросов. Неисправные узлы могут исчезнуть и вернуться через некоторое время, без проблем, система автоматически восстанавливает систему.
РЕДАКТИРОВАТЬ: Mongo 1.8 поставляется с журналированием (обеспечивает долговечность), но это не настройка по умолчанию. Также взгляните на это http://news.ycombinator.com/item?id=2684423
С уважением,
Сердар Ирмак